Castle of the Winds/Hacks

Hacking From The Original CowHacker

 * Hack into Castle Of The Winds, stealing from the bank, and creating all sorts of familiar and absolutely new items.

Acknowledgments

 * CowHacker acknowledges Rick Saada, the creator of Castle Of The Winds (Parts 1 & 2), and thanks him for releasing Part 2 into the public domain as Abandonware.
 * All images (when I can get them successfully loaded) are Copyright 1989-93 Saadasoft & Epic Megagames.
 * Rick, I would like to see the original code. Do you like my 20 slot belt? More “new” items to be added to this page.

Requirements & Suggestions

 * Castle Of The Winds plays well in Windows XP within Oracle Virtual Machine in Windows 10.
 * You will need a Hex Editor program installed in VM where Castle resides. The author recommends XVI32. []
 * All edits of saved games in a Hex Editor are over-type / replace NOT insert.
 * If using Oracle VM, ensure Clipboard is Bidirectional.

Hints When Using XVI32

 * Beware of leading or trailing spaces. At no stage should a string be entered with either / both.
 * Delete the existing string in the Hex box, then paste in the new string.
 * Ensure there is no trailing space.
 * Should XVI32 report an "invalid hex string", a cause may be the fact it cannot accept char 160 (alternate space). Using Notepad replace all spaces manually and try again.

Notation Conventions Within This Page

 * Except where otherwise noted, all quoted strings ("xxxxxx") must be entered without the quotes.

Saved Game Name Conventions

 * The hacks depicted below require edited saved games be saved in a different file. This allows backtracking should you make a mistake. Normally a saved game edited incorrectly will not open in Castle.
 * Filenames are limited to the old 8.3 dos format.
 * Use a separate directory / folder for each character or player.
 * Use the first 4 characters for the character name, eg "FRED", "DIAN" (For Diane).
 * Use the next character for the phase of the game: 0=Mine (Part 1A); 1=Fortress (Part 1B); 2=Castle (Part 2).
 * Use the next two characters for the maximum level you have descended to: 00=Surface, 01=Level 1, 02=Level 2, etc.
 * Use the final character for a version, eg A, B, C. Reserve Y for the final sequence of Part 1, and Z the character to be transported to Castle 2.

Example saved games for Fred:
 * FRED000A.CWG = Fred on surface, in the Hamlet.
 * FRED001A.CWG = Fred on Mine Level 1. 1st version.
 * FRED001B.CWG = Fred on Mine Level 1. Later version.
 * FRED002A.CWG = Fred on Mine Level 2.
 * FRED004Y.CWG = Fred has reached level 4, is back still inside the Mine on level 0. Has parchment in pack, and is ready for the end sequence.
 * FRED004Z.CWG = Fred is ready to go to Part 2, the abandoned registered version of Castle Of The Winds.
 * FRED100A.CWG = Fred on surface. In the town of Bjarnarhaven.
 * FRED200A.CWG = Fred on surface. Start of Part 2, outside the Castle.

Storage

 * Outside villages, towns and castles is a safe place to leave stuff, but don't forget to get it before moving on to the next portion of the game.

Preparing For Hacks From The CowHacker

 * 1) Create a new character in Castle Part 1. Set all attributes equal. Save the game using the format above.
 * 2) Alternatively, you can hack at any time during the game.
 * 3) Buy 2 pairs of shoes. Normal woolen cloaks will also do, although 1 shoe & 1 cloak is better than 2 cloaks.
 * 4) Name one pair “Marker A” and the other “Marker B”. If you only have one shoe, name it "Marker B".
 * 5) Go to near the entrance of the mine, and in the last bit of grass to the right, where there is a last single space of grass, drop "Marker A".
 * 6) Drop “Marker B”. It should appear to the immediate right of Marker A.
 * 7) Save the game under a new version.
 * 8) Open up the game in XVI32.
 * 9) Search for “Marker A”.
 * 10) In the hex area of XVI32, the “A” is “41”. The next value, is the item code for the next item. If your Marker B is a shoe, the item code should be 0E, or if a cloak it will be a 0C. If the item code does not match the Marker B item, go back to step 1.

In Part 2, perform the above from step 3.

Your First Hack

 * 1) Go to near the entrance of the mine, where your markers are.
 * 2) Pick up “Marker B”.
 * 3) Open up your purse and drop 200 copper pieces on the grass.
 * 4) Drop “Marker B”.
 * 5) Save the game under a new version.
 * 6) Open up the game in XVI32.
 * 7) Search for “Marker A”.
 * 8) In the hex area of XVI32, the “A” is “41”. The next hex value, “12”, is the item code for money. The next value, “01”, is the sub item code for copper pieces. Change the “01” to a “03”. That is the code for gold.
 * 9) Save the game as a different version.
 * 10) Open up that version in Castle Of The Winds, and look at the ground. You see gold!. The sub item codes for Money (12) are 01 = Copper, 02 = Silver, 03 = Gold, 04 = Platinum. there are 4 more codes but will cause a GPF in Castle 1, as will Platinum in Castle Part 1. So Gold is the highest you can go in Castle 1.
 * 11) Grab your money and go shopping.

Sell Worthless Items For A Motza

 * 1) On any empty location, drop Marker A.
 * 2) Drop your worthless item.
 * 3) Drop Marker B.
 * 4) Save the game under a new version.
 * 5) Open up the game in XVI32.
 * 6) Search for “Marker A”. As you have learned, the next byte to the right of “41” ("A") is the item code.
 * 7) Skip over the item code and the next byte. The next 4 bytes is the value of the item. They should be “00 00 00 00”. The bytes are in order low to high.
 * 8) Enter “FF FF 01” (1*255*255 = 131,071cp). For every increment in “01” (eg “02”, “03” ... “09”, “0A” ...), you double the value. Warning, don't get too greedy.
 * 9) Save the game under a new version.
 * 10) Open up that version in Castle Of The Winds, and look at the ground. You see the same “worthless” item. Now go and sell it to a reputable store. Better than 25cp. See the store put it indo display stock. Suckers!.
 * 11) Stores will always buy an item from you at a lesser price, and resell it with a markup. To see the markup, enter “A0 86 01” (100,000cp) for the value of the worthless item.

Other “nice” values:
 * C350 = 50,000
 * 186A0 = 100,000
 * 30D40 = 200,000
 * 493E0 = 300,000
 * 61A80 = 400,000
 * 7A120 = 500,000

Dont forget to reverse the hex values in pairs. And ensure any solo hex value is given a leading “0”.

Turn A Wool Cloak Into A Wand

 * 1) Buy a Normal (NOT Enchanted) cloak. Return to the Markers. A Normal shoe will also do. Or Normal Bracers.
 * 2) Name the cloak (or substitute) “123456789”. Ensure there are only 9 characters in the name. This is extremely important. Get it wrong and you cannot play the game.
 * 3) Place it on the ground, so it is between Marker A & Marker B. Move marker B if required.
 * 4) Save the game, no need to increment the version.
 * 5) Open the game in XVI32. Search for “Marker A”. Beside the A (41) you will see “0C”. That is the code for cloak. The next byte, 01, is the sub-item code for Normal Wool Cloak. Only use normal wool cloaks for this step. Shoes will also do.
 * 6) Copy this code string to the clipboard:   [Detect Traps / Map Level (64)]
 * 7) With the “0C” selected, click Edit | Overwrite String | Hex String and paste the text you just copied.
 * 8) Your cursor should now be resting ON the item code of your marker B. If it is not abandon all edits and go back and try again.
 * 9) If the Marker B item code is under the cursor, save file, incrementing the version.
 * 10) Open that game in Castle 1. Look at the ground. You will see “Wand of Detect Traps 191 charges”. Right-click on the wand. You will see “When activated, fills in the characters map of the entire level.”. You have just created a wand of Scroll of Map Level. Good for 64 times.

An interesting note: A wand of Detect traps value is 1,600 + 125 for each charge. A scroll of Map Level is 2,500. Therefore if we combine the appropriate values, with a 50% discount for the charge rate (bulk billing), the value would be 1600+2500/2*64=81,600cp.

Another Wand

 * 1) If you want to be a bit more adventurous in playing then go back to the version before you pasted the string above, and copy this code string to the clipboard:   [Detect Traps / Map Quadrant (575)]
 * 2) As before, ensure the cursor is on the Marker B item code and save, incrementing the version.
 * 3) Load the game and see you have created a "Wand of Detect Traps 575 charges" that fills in the map quadrant, effectively a Wand that performs Scroll of Map Quadrant 575 times.

And another interesting note: A wand of Detect traps value is 1,600 + 125 for each charge. A scroll of Map Quadrant is 900, and again if we combine the appropriate values, with a 50% discount for the charge rate (bulk billing), the value would be 1600+900/2*64*4=116,800cp.

Supercharge Any Wand
No restrictions. No nothing. Any wand, any time. Upgrade its charge count or your money back if not satisfied!. undefined
 * 1) Go to your markers (see previous Hack).
 * 2) Place the wand to be supercharged, on the ground, between Marker A & Marker B. Save the game, no need to increment the filename.
 * 3) Open the saved game in XVI32, the authors preferred Hex Editor.
 * 4) After the A in Marker A, there should be a 03. That is the item code for wands. Next byte is the sub code:
 * 1) Continuing on, look at the next lot of bytes. You will see a 64 xx 22 (the xx can change). You then see “00 00 00”. The next 2 bytes are the hex values of the number of charges multiplied by 4. Stuff it just change it to FC FF. Save the game, incrementing it.
 * 2) Load the game, the charge should be 16383.

Unrestrict And SuperExpand Your Utility Belt

 * 1) Obtain a utility belt. Empty it. Name it "MUB (Mega Utility Belt)".
 * 2) Place it between Markers A & B.
 * 3) Save the game, no need to increment.
 * 4) Open the saved game in XVI32. Look for Marker A.
 * 5) Following the A you will find bytes similar to these:
 * 6) Skip all bytes until you get to 86. Now skip both the “2C 01”. Rest on "1C" of “1C 0C 00 00”. These 4 bytes form the Max Weight (low byte to high byte are left to right). Change the first 3 bytes to "DD DD DD".
 * 7) Now go to "04 10 00 00" (3 bytes to the right). These 4 bytes form the Max Bulk (low byte to high byte are left to right). Change the first 3 bytes to "CC CC CC".
 * 8) Skip all the bytes until you get past "0A 00 0A". From now on until you reach the string you named the belt, change the “01”s and “02”s to "00". There should be 4 of each, and they alternate. These are the restriction bytes. You are opening up each slot.
 * 9) Save the file, incrementing the version.
 * 10) Open the game in Castle, and right-click on the utility belt. Observe the max weight & bulk (13,421,772 and 14,540,253). Get it and put anything in any slot. One major problem is that a Smirking Thief will steal anything that is in the belt.

Convert A Normal Shoe Into A Mega Utility Belt

 * 1) Purchase a shoe. Normal shoe. Or normal wool cloak.
 * 2) Give it a name of exactly 67 characters, eg:
 * 3) Place it between Markers A & B.
 * 4) Save the game, no need to increment.
 * 5) Open the saved game in XVI32. Look for Marker A.
 * 6) Paste this code string into the bytes after Marker A:
 * 7) Your cursor should now be resting ON the item code for your Marker B. If it is not abandon all edits and go back and try again.
 * 8) If the item code for your Marker B is under the cursor, save file, incrementing the version.
 * 9) Open up the saved game in Castle (1 or 2). Congratulations you have an unrestricted belt. Put all your junk in there for Thieves to steal. The joke is on Rick & them.


 * A wool cloak will turn into an unlocked belt without needing to have the cursor appear over Marker B.

Convert A Pack Into A CowHacker Pack
There is nothing like a CowHacker Pack. It is a pack of holding that is unsurpassed. It can carry 100 million and hold 250 million, yet its fixed weight & bulk are both 300. Create yours today!
 * 1) Place an empty, unnamed pack between your markers.
 * 2) Open the saved game in XVI32. Look for Marker A.
 * 3) Paste this into the bytes after Marker A:
 * 4) Your cursor should now be resting ON the item code of your Marker B. If it is not abandon all edits and go back and try again.
 * 5) If the item code for your Marker B is under the cursor, save file, incrementing the version.
 * 6) Open up the saved game in Castle. Congratulations you have a CowHacker Pack.

Convert A Pack Into A CowHacker 20 Slot Belt
In Rick's Castle Of The Winds, the “longest” belt was the 12 slot utility belt. CowHacker thought this was far too short, so he invented a 20 slot utility belt. It is available as a hack, named as “CowHacker 20 Slot Belt”, and not available in any store. So There.
 * 1) Place an empty, unnamed pack between your markers.
 * 2) Give it a name of exactly 119 characters long, eg:
 * 3) Open the saved game in XVI32. Look for Marker A.
 * 4) Paste this code string into the bytes after Marker A:
 * 5) Your cursor should now be resting ON the item code of your Marker B. If it is not abandon all edits and go back and try again.
 * 6) If the item code for your Marker B is under the cursor, save file, incrementing the version.
 * 7) Open up the saved game in Castle. Congratulations you have a genuine “CowHacker 20 Slot Belt”. Rick, eat your heart out.

Welcome to the world of totally hacking Castle Of The Winds.