Back to the Game Files
The Character Record
This page is about editing the character information in Wasteland. Where it is stored, what the format is, and so on.
The character record is stored in the game1 and game2 file as part of the Saved Game data. The msq header for the game1 saved game is at offset 253C5h. These contain the character record for all party members.
A single character record is 100h bytes long and has the following structure and possible values:
|00 - 0Dh||ASCIIz Character Name|
|15h - 17h||Current Money|
|18h||Sex [00 - Male, 01 - Female]|
|19h||Nationality [00 - US, 01 - Russian, 02 - Mexican, 03 - Indian, 04 - Chinese]|
|1Bh - 1Ch||MAX Constitution (MAXCON)|
|1Dh - 1Eh||Current Constitution (CON)|
|1Fh||Pointer to equipped weapon (Offset in characters item list)|
|21h - 23h||Experience points|
|25h||Pointer to equipped armor (Offset in characters item list)|
|26h - 27h||Temp storage of your CON for when you are UNC or worse, its the CON you had just before you went UNC|
|28h||Bitmap of your afflictions, i.e. radiated, diseased|
|29h||NPC flag [1 - NPC, 0 - PC]|
|2Bh||Chance of refusing to U)se a item (npc). Checked against npc's location 31h|
|2Ch||Chance of refusing to U)se a skill (npc). Checked against npc's location 31h|
|2Dh||Chance of refusing to U)se a Attribute (npc). Checked against npc's location 31h|
|2Eh||Chance of refusing to T)rade (npc). Checked against the character being traded to's Charisma|
|30h||String to print when npc joins the party|
|31h||Willingness to carry out a U)se command (npc) //May be used for other willingness checks//|
|32h - 4Ah||ASCIIz Rank string|
|4B||Flag, 1 - Game won, 0 - Game not won yet|
|4C||Flag if you've radioed in after game won. 1 - radioed and received end message and special promotion. 0 - not radioed in yet|
|4D - 7F||Unknown|
|80 - BB||Skills list, 2 bytes each (skill/level)|
|BD - F8||Carried equipment, 2 bytes each (item id/current ammo) Current ammo has a weapon status, high bit set weapon is jammed|
|F9 - FF||Unknown|
Note on 2Bh, 2Ch, 2Dh and 2Eh above. These are something akin to a "stubbornness" value. It can change as time goes on. If you successfully get a npc to carry out a order, there is a 1 in 20 chance that this value will be lowered by 1. This chance occurs everytime you succeed in getting the npc to carry out a order, and it can be lowered all the way to zero. This adds realism to the game because the longer the npc is with you, the more comfortable he is and will be more likely to carry out your orders.
How the game decides if you level up. The formula is: (New level * New level * 512) - (New level * 512) = xp points needed to go up to new level.
A character in the game can have any, or all of the available skills at any skill level (up to a limit defined by the difficulty of getting enough 'points' to achieve the skill, or the 8-bit limit of 255)*. In general, Skill level 8 is the maximum anyone will get in a normal game, with super-jerks getting up to skill 10 in easy things like gambling. All NPCs come with some pre-defined skills, which make some NPCs great, and others utter lemons, but fun to play nonetheless. (eye:You can get a gambling skill of 11+ VERY early, if you have a high luck. IIRC luck also affects skill rolls (I think Ken said this) so a high luck makes it easier to gain skiils, or at least it seems to me when I play)
There are 2 bytes pertaining to the skills and are at offset 80h in the character record. Byte 1 is the code for the skill listed below. Byte 2 is the level that character currently has in that skill NOTE: There are several "invisible" skills, these are used by the npc's in your party
Here's a complete list of the Skills and their Codes:
|04||Knife Fight||10||Silent Move||1C||Metallurgy|
|05||Pugilism||11||Combat Shooting||1D||Helicopter pilot|
|07||Swim||13||Sleight of Hand||1F||Toaster repair|
|0A||Assault Rifle||16||Alarm Disarm||22||Energy weapon|
|0B||AT Weapon||17||Bureaucracy||23||Cyborg tech|
- Without using an editor you can only hit 162? using the -SP cheat. This is assuming Supreme Jerk is level 162, I may be off on the number some. Also the game limits the number of skills, so you can have almost all, but not every skill on one character.