MOD WORKSHOP - ITEM

This section contain lots of info and tips on how you can modify certain objects in the game. There's plenty of other reasons why you want to modify this game. Probably you find the game too tough to handle so you want to modify the game to make it easier. You might also find that certain dialogue in the game are too offensive to read so you want to change it to more appropriate tone. You might also want to personalize this game to higher level by including your portrait or voice on the game. So get ready to work. It can be tough but the reward is well worth the effort.

One of the biggest problem for the game is you might find the game too tough to handle because it's so easy for your operative to get killed. This is because most of enemy in the game especially the soldiers love to fire in burst which mean a successful shot can take a major portion of your operative health.

So you might be thinking if you can somehow be able to modify the game so the gun fired in burst will inflict less damage? Well man, you can! Otherwise I won't write this stuff for you. But first you need to get yourself some hex editor. Take some time to learn how to use it before you can proceed.

But before you do any modification, always remember to backup the file you want to modify. The easiest way to do is to copy the file from data folder to interface folder. That way if you screw up the file, you can always copy back the file from interface folder to data folder.

itemX.dat

itemX.dat which can be found on data folder contain details of every items which can be found in the game including weapons. The file is basically a collection of records. Each record represent an item. For each record, there are several details.

int num;                   //record offset for every 336 bytes so use 
                           //16 bytes per line in hex editor
int ID;                    //don't mess up this detail!
char name[ 32 ];
char description1[ 32 ];
char description2[ 32 ];
char strongFeature1[ 32 ];
char strongFeature2[ 32 ];
char weakFeature1[ 32 ];
char weakFeature2[ 32 ];
char ammo1[ 8 ];
char ammo2[ 8 ];
int size;                  //1 for small item, 2 for big item
int weight;                //gram
int maxStatus;             //increasing it make weapon and armour tougher
                           //increasing it on drug increase the max quantity
int damage[ 2 ];           //single shot damage from ammo 1 and ammo 2
                           //for melee weapon or gun that accept 1 ammo,
                           //second damage is 0
                           //for cloth or pant, damage 1 contain red component
                           //colour, damage 2 contain green component colour
int range;                 //metres
                           //for cloth or pant, this contain blue component colour
int rateOfFire;            //miliseconds, divide 1000 by rate of fire to produce 
                           //bullets per second             
int ammo[ 2 ];             //don't mess up this detail!
int maxClipMagazine;
int listButton[ 8 ];       //don't mess up this detail!
int defaultButton[ 3 ];    //don't mess up this detail!
int normalPrice;

Most of the details are self explanatory except for a few details. Max status and damage number you see on the game has been divided by 100 to make the number much easier to handle. For instance, IAF Assault Rifle can dish out damage between 18 to 20 as what you see in the Inventory Panel. Actually the game process the damage between 1820 and 2040. This is the damage number that you'll see on the file.

So to modify damage from the rifle, you might modify it to lesser number. As the rifle can fire 3 bullets per second, it can dish out burst damage between 5460 to 6120. You can modify the first damage to around 1200 and the second damage to around 1400. Now the rifle only dish out damage between 3600 to 4200. Save the file and play the game to test whether the modification works. You need to access Inventory Panel and right click the rifle to see if your modification works.

You can also modify rate of fire to higher number so bullets per second will become smaller. Currently the rifle rate of fire is 333 ( 1000 / 333 = 3 ). By modifying it to 500, bullets per second will be reduced to 2 ( 1000 / 500 = 2 ). Now the rifle only dish out damage between 2400 to 2800. However if you do modify rate of fire, you might still hear the rifle shot 3 bullets per second as the the game shows the rifle only shot 2 bullets per second. This might sound unrealistic which mean you need to modify also the wav file associated with the rifle.

The only details you should not mess around is item ID and ammo details. If you change item ID, it is possible the game can't recognize most weapons in the game which make the game unplayable. If you change ammo details, you might not be able to reload the weapon. You also should not mess around with listButton and defaultButton because the game need the details to properly show which actions can be done with certain item.

If you want to become filthy rich in the game, you can set normal price much higher for item you frequently sold to trader such as rifle and set lower price for item you frequently buy from trader.