Disciples of Steel - Chronicles of CyHagan Cheat Codes: ------------ Disciples of Steel stores your characters in a file called #.CHR, where # is a number from 1 to 8. Load this file into your favorite hex editor (I prefer Norton's DISKEDIT). There can be up to 24 characters in the roster, though there can be only 8 characters in your party at a time. Each character is stored in a block of 200 ($0190) bytes, starting with the character's name in lower case. Here are the relative offsets from the start of the character block: Offset Name Offset Type ----------------- ------ ---- Character's Name $0000-$0009 10-character string, padded with spaces ($20) Experience Points $000E-$0011 4-byte unsigned integer Strength $0062 1 byte? (see notes) Intelligence $0064 1 byte? Wisdom $0066 1 byte? Accuracy $0068 1 byte? Intuition $006A 1 byte? Constitution $006C 1 byte? Charisma $006E 1 byte? Luck $0070 1 byte? NOTE: I'm not sure why there's an extra byte between stats. Either the second byte is for modified stats (boosted by magic items, etc.) or the stats are 2-byte unsigned integers. Skill Name Offset Type ----------------- ------ ---- Armor $0072-$0073 All skills are 2-byte Shield $0074-$0075 unsigned integers. Dodge $0076-$0077 Edged $0078-$0079 Crush $007A-$007B Axe $007C-$007D Spear $007E-$007F Bow $0080-$0081 Open Hand $0082-$0083 Track $0084-$0085 Hide $0086-$0087 Disarm $0088-$0089 Backstab $008A-$008B Steal $008C-$008D Perception $008E-$008F Karma $0090-$0091 Essence $0092-$0093 Power $0094-$0095 Haggle $0096-$0097 Firstaid $0098-$0099 Resistance $009A-$009B Body $009C-$009D I haven't deciphered these offsets yet: $000A-$000D $0012-$0061 $009E-$018F I'm pretty sure that $0012-$0061 contains items in your inventory and a flag indicating whether or not they're currently equipped, but I haven't figured out the format yet. Your hit points by location, armor by location, and money are probably stored here somewhere. I don't think $009E-$018F has any purpose at all, since it seems to contain just zeroes ($30) and spaces ($20), probably just to pad the character out to exactly 200 bytes. Note that these are _relative_ offsets from the start of each character's block. For example, the Strength for the second character in the roster would be at the _absolute_ offset $01F2 (each character block is $0190 bytes long, and the Strength offset is $62, therefore $0190+$0062 = $01F2). Don't forget to make a backup of the character file before you edit it, in case you make a mistake. If you don't have a hex editor, or don't want to do the work yourself, I'm writing a cheat program and/or an UGE module that you can use. Look for it here, soon.