Hacking MissionForce: Cyberstorm [INLINE] Editing *.cbs Files (save files) - Editing *.hrc Files (Herc files) - Element Guide - Description of Non-Standard Items [INLINE] I know you are eager to use this information to cheat your way to glory, but if you have not finished the game yet I beg you to reconsider what you are about to do. Have no doubt in your mind that once you "hack" your Hercs you will be able to complete the game in one sitting. I paid $50 for my copy of the game, and to me that's a lot of money. I really enjoyed playing and beating the game myself, and that made it worth it. I'm not trying to be holier-than-thou, I've just ruined the fun of more than one game by getting lazy and using some method of cheating myself! MissionForce: Cyberstorm isn't unbeatable, and in fact (once you understand how the AI thinks) it can be quite straightforward (luck not-withstanding). So, if you haven't finished the game and I've given you a change of heart, click here. If not, read on... If you have finished the game, you're in for a real treat! Read on... [INLINE] The data in the tables which you will be downloading, and on which this page is based, was figured out and provided to me by Tim Hurst, as was the data found in the Cybrids Spec page. He recieves for his troubles the Unitech Stellar Service Commendation (also known as the "Gold Star"). The actual instructions you will be reading on hacking the game files were written by me, but the system and data are his. -Callidus [SOME IMPORTANT NOTES: First and foremost, consider this an early version of this page! There is really a lot of information to get out here and my goal was to do it quickly. If clarity suffered because of it, I apologize! I'll be cleaning things up in the next few days. If you find errors in what I've written, please let me know. If you can't figure out how do do what I'm describing...well...consider waiting a week and reading the newest version of the page. If that doesn't suit you, write me. I'd really like to avoid having to type long explanations of how to do stuff over and over, since typing all this stuff in tonight has worn me out! Basically, if you have a quick question then send it over. If it requires a detailed answer send it too, just give me a while to answer it, okay? If it's a good question I'll address it on this page and let you know that I've done so.] ______________________________________________________________________ Editing *.cbs Files (save files) This section will explain step-by-step how to alter the loadout on your Hercs by changing the statistics in the save file. By doing this you can bypass certain restraints in the game such as cost, tech level, chassis limitations, etc. and give yourself free reign in equipping your force. I will try and present these instructions in such a way as to make them accessible to everyone, regardless of experience in hacking game files. My apologies to those to whom this stuff is old hat. I'm going to put the REALLY basic instructions in a smaller font so that people who know what they are doing can skip over those parts. First thing you will need to do is to print out a copy of Tim's Charts and have it nearby while reading these instructions. [To edit your save files, you will need to obtain a hex editor. Shareware.com is a good place to get one (I'd recommend Hex Workshop). A hex editor works just like a text editor (such as Windows' Notepad) only it can read and modify all files, as hexadecimal, rather than just text files. Explaining the hexadecimal numbering system is beyond the scope of this page, and you won't need know much to do what you want to do. One thing you should know is that all hexadecimal numbers are two-digit and can contain letters as digits.] Before You Start: Make a backup copy of any files you attempt to edit. This is very important in case something gets screwed up. Step 1: Load a *.cbs file into your chosen hex editor and locate the section in which your Herc's are stored. The easiest way to do this is to do a ASCII search for the name of your first Herc, in this case a Herc called Giant X-32. In the image below I've highlighted the relevant area for this particular Herc. [Most good hex editors will allow you to search for binary, hex, and ASCII strings (ASCII (ask-ki) being just regular text). As you can see in the picture, the editor shown displays the hexadecimal to the left and the associated ASCII to the right. The hexadecimal is broken up into columns for ease of reading.] [INLINE] Step 2: The information we are interested in begins at the eighteenth hexadecimal number after the start of the highlighted section, in this case 0005. This element determines the type of Herc we are dealing with. For this element (0005) the first hex number, 00, identifies this element as controlling the Herc type, and the second hex number, 05, defines this Herc as a Giant. If we went in and changed the 05 to 03, when we played the altered save game we would find that the Herc was no longer a Giant but a Sensei instead! Take a look at the chart below: Table 1: Categories 00 - chassis number 0c - weapon 2 01 - armor type 0d - weapon 3 02 - drive type 0e - weapon 4 03 - left leg type 0f - weapon 5 04 - right leg type 10 - weapon 6 05 - reactor type 11 - weapon 7 06 - battery type 12 - weapon 8 07 - shield type 13 - misc. 1 08 - sensor type 14 - misc. 2 09 - targeting computer type 15 - misc. 3 0a - life support 16 - misc. 4 0b - weapon 1 As you can see, there are 23 categories which can be altered when editing the Herc. (although some Hercs can't use all 23! The Shadow, for example, has only four weapons slots. The other four are off limits!) Each of the hexadecimal numbers above begins what could be thought of as a "sentence" of code describing the Herc. All 23 "sentences" taken together give the game all the information it needs to put the Herc in the game. The syntax of these "sentences" is: [CATEGORY]XX[TYPE]YY[REPAIR]ZZ[unknown]??[AMMO]AA[unknown]??[unknown]? ?[unknown]?? As you see, each "sentence" is eight hexadecimal numbers long. As has been said before, the first number gives the category that the "sentence" describes, the second defines the type in that category the Herc has, the third tells the state of repair of that item, and the fifth gives the ammunition supply for a weapon (more on the repair element and ammo later). At the moment we don't know what the other four elements describe, but we're working on it! This all sounds more confusing than it is. Here is a concrete example; it's the first "sentence" in the above picture, the one that tells the game what chassis the Herc uses: 00 05 64 00 00 00 00 00 I've separated each hex number for the sake of clarity. Your editor may display them together, or as groups of four (as does mine). Okay, lets take the "sentence" apart to illustrate what I've been talking about. The first element [I'll refer to the individual hexadecimal numbers as elements from now on] is 00. Checking Table 1 we see that this "sentence" must determine which Herc chassis is to be used. The second element in the "sentence" is 05. If we check Table 2 we see that a 05 designates a Giant-type chassis. The third element is 64. As we'll see later, this means that the chassis is operating at 100%. The last five elements we'll ignore. Table 2: Chassis Types 01 - Shadow 12 - Command Node 02 - Remora 13 - unknown 03 - Sensei 14 - unknown 04 - Ogre 15 - Sensor Node 05 - Giant 16 - unknown 06 - Demon 17 - Light Turret 07 - Reaper 18 - Missile Turret 08 - Juggernaut 19 - unknown 09 - unknown 1a - unknown 0a - unknown 1b - unknown 0b - unknown 1c - unknown 0c - unknown 1d - unknown 0d - Arachnus 1e - unknown 0e - Genocite 1f - Herc Carrier 0f - Malignus 20 - Construction Node 10 - Hades 21 - Manufacturing Node 11 - Nihilus If you look up at the picture again, you will see that the next "sentence" is: 01 0D 64 00 00 00 00 00 Since the first element is 01, by checking Table 1 we can see that this "sentence" determines the type of armor the Herc carries. The pattern continues until we have a "paragraph" made up of 23 "sentences", each "sentence" being eight elements long. The "sentences" are in the same order for each "paragraph": 00?????????????? (the chassis), 01???????????????? (the armor), 02???????????????? (the drive type), 03???????????????? (the left leg type), etc. in the order that these categories appear in Table 1. Well, that is the pattern anyway. If you look at the picture, you will see that there is a subtle twist which complicates matters somewhat. If any group of adjacent "sentences" contains the same information, which can happen if you have the same weapon in two or more slots or have two of the same type of leg, then the game uses the category of the first or last "sentence" to begin ALL "sentences" in the group. This sounds confusing, and it can be at first. In our Giant X-32 example, it has both right and left legs reinforced. If we went strictly by the information in Table 1, we'd expect the first "sentences" to look like this: 00 05 64 00 00 00 00 00 (Giant chassis) 01 0D 64 00 00 00 00 00 (Didrate 17.8mm armor) 02 0E 64 00 00 00 00 00 (Flexive R4 drive) 03 06 64 00 00 00 00 00 (Reinforced L. Leg) 04 06 64 00 00 00 00 00 (Reinforced R. Leg) 05 09 64 00 00 00 00 00 (Ion 260 reactor) and so on... What actually appears in the *.cbs file is: 00 05 64 00 00 00 00 00 (Giant chassis) 01 0D 64 00 00 00 00 00 (Didrate 17.8mm armor) 02 0E 64 00 00 00 00 00 (Flexive R4 drive) 04 06 64 00 00 00 00 00 (Reinforced L. Leg) 04 06 64 00 00 00 00 00 (Reinforced R. Leg) 05 09 64 00 00 00 00 00 (Ion 260 reactor) and so on... As you see, both leg "sentences" are started with the 04 element, rather than one as 03 and the other as 04. You can also see this in the weapons' "sentences." The Giant X-32 is armed with six Devastators, and you can see six identical "sentences" describing them all of which begin with 0B. If you just count the number of "sentences" and compare it to Table 1, you'll be able to figure out which "sentence" is which since the order doesn't change even if the first element might. Okay! Now after wading through all that we can get to the fun part. Editing! Step 3: Once you understand the structure of the "paragraph" which defines the Herc, the rest is easy! You simply locate the "sentence" which defines the category you want to alter, look up the element that represents the desired item in the tables, and substitute the number you have looked up as the appropriate element in the "sentence." For example, say we want to change the Flexive R4 Drive in our Giant X-32 to Trivate R4. First, we look up Trivate R4 on the drive chart, where it tells us that Trivate R4 is represented by the element 10. The chart also tells us that the "sentence" we'll be looking for should start with 02 (but this isn't a hard and fast rule with all items; remember the deal with weapons and legs!). We find the third "sentence" in the Giant X-32 "paragraph", which reads: 02 0D 64 00 00 00 00 00 and change it to: 02 10 64 00 00 00 00 00 Our Giant X-32 is now equipped with Trivate R4 Drive! By this method, you can easily set your Herc's loadout to whatever you want. ______________________________________________________________________ Editing *.hrc Files (Herc files) In addition to modifying the Hercs in your saved games, it is possible to edit Hercs saved from the Herc Bay screen as *.hrc files and then import the altered Hercs into your game. The information on how to accomplish this was sent in by Gordon Tran. The *.hrc files only contain 43 bytes of information, all of which is concerned with the Herc data. As such it is a very simple matter to isolate the element that you want to change. The same system as is used with the *.cbs files is used here: elements are given in pairs, the first of which gives the category of item and the second gives the specific type of that item. The elements which denote the type use the same values as would be found in a *.cbs file. Since the information in a *.hrc file is simply a template, the other information on each device found in a *.cbs file such as ammunition and state of repair is unnecesary in a *.hrc file. Thus, each "sentence" in the file is only two elements long, unlike the eight elements found in a *.cbs file. 00-0F Herc design name (16 chars) 10 Min. Tech Level Required 11 Chassis 12 Armor 13 Drive 14 Left Leg 15 Right Leg 16 Reactor 17 Battery 18 Shield 19 Sensor 1A Targeting 1B Life Support 1C-23 Weapons 24-27 Specials 28-2B Unknown, all of them are set to 00 on every file ______________________________________________________________________ Element Guide Each "sentence" in the Herc portion of the *.cbs file is divided into eight elements, each element being a single hexadecimal number. Here I've listed the known functions for each element. Element Function Known Valid Range Explanation First System Category: indicates which system the elements which follow it apply to. 00-16 Value is fixed in relation to the other "sentences," i.e. the first element of each group must have a value of one higher than that of the first element of the group which preceeds it, with the exceptions noted above (duplicate weapons, legs). Second System Type: indicates which particular type of equipment the group represents out of the broader category, i.e. a Standard 12.14 Sensor rather than a Crystal Matrix Sensor. varies: (00-64, theoretically) As desribed above, the value in this position can be exchanged with a value from the hacking table to substitue one system type for another. Third State of Repair: current status of system, expressed as a percentage. 00-64 The value is simply the hexadecimal equivilant of the decimal percentage, 00=0% and 64=100%. Fourth unknown unknown unknown Fifth unknown unknown unknown Sixth unknown unknown unknown Seventh unknown unknown unknown Eighth unknown unknown unknown ______________________________________________________________________ Description of Non-Standard Items This section gives a brief explanation of some of the items which are normally unavailable to your Hercs, such as Cybrid equipment and debug "leftovers." Each item is preceeded by its hexidecimal number. (06) Batteries:(the batteries are one of the few systems for which the Cybrids have their own unique type) * (19) Cybrid Battery 100- the numbers after each type indicate the total capacity of that battery. * (1A) Cybrid Battery 150 * (1B) Cybrid Battery 200 * (1C) Cybrid Battery 250 * (1D) Cybrid Battery 300 * (1E) Cybrid Battery 350 * (1F) Cybrid Battery 425 * (20) Cybrid Battery 400 (07) Shields: (the B-series shields do not seem to appear in the game; they are probably just left over from an earlier game version in which structures were given their own shield type. All have a strength of 1500 and require 50 e-points/turn.) * (0B) Shield vB1 (Base 1?) [recharge: 100] * (0C) Shield vB2 [recharge: 150] * (0D) Shield vB3 [recharge: 200] * (0E) Shield vB4 [recharge: 250] * (0F) Shield vB5 [recharge: 300] (08) Sensors:(as with the base shields, the base sensors seem to be left over from an earlier version) * (0B) Base type 1- all base-type sensors seem to be identical (6-hex, see over obstacles) * (0C) Base type 2 * (0D) Base type 3 * (0E) Base type 4 * (0F) Base type 5 * (11) Sensor vOmniscient- see everything, everywhere at no energy cost. Used in Cybrid Sensor Arrays. (0B-12) Weapons: All the weapons can fire once per turn and are Advanced Technology weapons. Hex # Name Range Energy to Fire Dam:Shield Dam:Armor Blast Radius (46) B1 1 1 250 250 5 hex (47) B2 25 1 500 500 7 hex (48) B3 25 1 1000 1000 7 hex (49) B4 25 1 1500 1500 7 hex (4A) B5 25 1 2000 2000 7 hex (4B) EMP 2 25 150 0 0 hex (13-16) Equipment: * (10) Bonus v1- all friendly units are given a +5% bonus to hit. * (11) Bonus v2- all friendly units are given a +10% bonus to hit. * (12) Bonus v3- all friendly units are given a +15% bonus to hit. * (13) Bonus v4- all friendly units are given a +20% bonus to hit. * (14) Bonus v5- all friendly units are given a +25% bonus to hit. * (23+) Stub's- odd. Give a huge NEGATIVE bonus to the Herc's strength. ______________________________________________________________________ Main Menu This page was last updated November 28, 1996