The current URL is datacrystal.tcrf.net.
Final Fantasy III (NES)/ROM map
Class and Character Data
- $69B31 to $69B88 - Commands each class can use in battle, four bytes per class
Values for each command:
04 Attack 05 Defend 06 Run 07 Escape 08 Jump 0C Peep 0D Scan 14 Item 15 Magic 0E Steal 0B Terrain 08 Jump 0F Build Up 10 Sing 11 Scare 12 Cheer
There are no more commands. Putting other values will show garbled text, that will most probably crash the game. You can give commands from one class to another, and they will even get Class Experience, although; curiously enough, they will get a different ammount of exp than the original job in most cases.
Also, to use Sing you need an harp; but you can use Attack with an harp too, making that command somewhat obsolete.
The order of the classes:
Onion K 04 05 06 14 $69B31 Fighter 04 05 06 14 $69B35 Monk 04 05 06 14 $69B39 WhiteMage 04 15 06 14 $69B3D BlackMage 04 15 06 14 $69B41 Red 04 15 06 14 $69B45 Hunter 04 05 15 14 $69B49 Knight 04 05 06 14 $69B4D Thief 04 0E 07 14 $69B51 Scholar 04 0C 0D 14 $69B55 Geomancer 04 0B 05 14 $69B59 Dragoon 04 08 05 14 $69B5D Viking 04 05 06 14 $69B61 BlackBelt 04 0F 05 14 $69B65 M.Knight 04 05 15 14 $69B69 Conjurer 04 15 06 14 $69B69 Bard 10 11 12 14 $69B71 Warlock 04 15 06 14 $69B75 Devout 04 15 06 14 $69B79 Summon 04 15 06 14 $69B7D Sage 04 15 06 14 $69B81 Ninja 04 05 06 14 $69B85
- $72010 to $720BF - Base stat data for all classes, 8 bytes per class:
0x0: Unknown (affects CP cost to change to this class) 0x1: Level needed to change to this job 0x2-0x6: Base stats (Strength-Agility-Vitality-Intelligence-Spirit) 0x8: Base MP bonus. Probably an index to a table.
Class list by order:
$72010 88 00 05 05 05 05 05 00 Onion K $72018 79 00 0A 0A 05 02 03 00 Fighter $72020 77 00 0A 0A 07 01 02 00 Monk $72028 99 00 05 06 04 05 0A 01 White Mage $72030 97 00 05 07 03 0A 05 01 Black Mage $72038 8A 00 06 07 05 06 06 02 Red Mage $72040 7B 09 05 14 05 05 05 03 Hunter $72048 8C 09 0A 0A 0A 03 07 00 Knight $72050 75 09 0A 0F 09 05 01 00 Thief $72060 A4 0E 0A 0A 0A 14 05 00 Scholar $72068 5B 0E 14 0A 0A 05 0A 00 Geomancer $72070 55 0E 0F 0A 14 05 05 00 Dragoon $72078 28 0E 17 0A 14 01 01 00 Viking $72080 82 0E 14 14 0A 02 03 03 Black Belt $72088 D8 0E 0A 0A 05 0F 0F 04 Mystic / Magic Knight $72090 BB 0E 05 0F 0F 0A 0A 00 Conjurer $72098 C4 1D 0A 0F 0A 1E 05 05 Bard $720A0 CC 1D 0F 0A 0F 05 19 06 Warlock / Magus $720A8 F0 1D 14 0F 0A 05 0F 0F Shaman / Devout $720B0 FF 27 0F 14 0F 19 19 08 Sage $720B8 00 27 19 19 14 0F 0F 09 Ninja
Base MP Values: There are 8 levels of Magic, each one has it's own points. Each chass has one value pointing to one of these groups (Not all of them, there are a few weird ones).
00 Nothing, 0 MP for all levels 01 8 Lvl 1 02 4 Lvl 1 03 4 Lvl 1 04 2 Lvl 1 05 10 Lvl 1 / 9 Lvl 2 / 8 Lvl 3 / 7 Lvl 4 / 6 Lvl 5 / 5 Lvl 6 / 4 Lvl 7 / 3 Lvl 8 06 10 Lvl 1 / 9 Lvl 2 / 8 Lvl 3 / 7 Lvl 4 / 6 Lvl 5 / 5 Lvl 6 / 4 Lvl 7 / 3 Lvl 8 07 4 Lvl 1 / 3 Lvl 2 / 2 Lvl 3 / 1 Lvl 4 08 20 Lvl 1 / 15 Lvl 2 / 10 Lvl 3 / 5 Lvl 4 / 4 Lvl 5 / 3 Lvl 6 / 2 Lvl 7 / 1 Lvl 8 0A 32 Lvl 1 / 1 Lvl 2 / 5 Lvl 5 / 1 Lvl 6 / 1 Lvl 8 0B 86 Lvl 1 / 8 Lvl 2 11 13 Lvl 4 / 13 Lvl 5 / 13 Lvl 6 / 8 Lvl 7 / 13 Lvl8 14 32 Lvl 4 / 32 Lvl 5 / 32 Lvl 6 / 32 Lvl 7 / 32 Lvl 8 15 32 Lvl 3 1A 7 Lvl 5 / 7 Lvl 7 1B 13 Lvl 1 / 45 Lvl 2 / 45 Lvl 3 / 45 Lvl 4 / 45 Lvl 5 / 6 Lvl 6 / 6 Lvl 7 / 6 Lvl 8 1C 8 Lvl 1 / 8 Lvl 2 / 8 Lvl 3 / 9 Lvl 6 / 9 Lvl 5 / 9 Lvl 6 / 9 Lvl 7 / 8 Lvl 8 1D 8 Lvl 1 / 8 Lvl 2 / 8 Lvl 4 / 10 Lvl 5 / 10 Lvl 6 / 10 Lvl 7 / 10 Lvl 8 1E 40 Lvl 1 / 40 Lvl 2 / 32 Lvl 3 / 40 Lvl 4 / 16 Lvl 5 / 16 Lvl 6 / 16 Lvl 7 / 16 Lvl 8 1F 17 Lvl 1 / 17 Lvl 2 / 17 Lvl 3 / 17 Lvl 4 / 17 Lvl 5 / 17 Lvl 6 / 17 Lvl 7 / 78 Lvl 8
After that they are pretty messy. The offset for these start at $73B98. This will add a certain number of MP to a class. As it's the base MP it will not increase. So if you give a Knight a value of 5 PM Level 1, that character will always have 5 PM (Unless you modify that class' MP gains).
- $720C0 to $721E5 - Experience needed for each level, 3 bytes per level.
- $721E6 to $732BD - Stat table for level-ups, determining which stats raise on every level for each class.
There are two bytes per level; the first determines the increase of physical stats using a bitfield: 0x80 - Strength 0x40 - Agility 0x20 - Vitality 0x10 - Intelligence 0x08 - Spirit 0x04-0x01: Amount to increase stat(s) by The second byte determines which spell levels increase using a bitfield system, one bit for each of the 8 levels. The order of classes is the same as the base stat table.
- $73BE8 to $73BE9 - Starting HP of the four characters
- $73C00 to $73C06 - Starting equipment (armor/weapons) of the four characters:
0x1,0x2,0x03: Helmet,Armor,Glove, respectively 0x04,0x06: Items in right and left hand, respectively 0x05,0x06: Quantity of items in right and left hand (for arrows etc)
- $73C07 to $73C0E - Starting magic of the four characters (empty by default), one byte for each magic level.
Weapons, Armor, Magic
- $910 to $A0F - Weapon/Armor/Magic usability table; 3 bytes for each entry, with one bit for each of the 22 classes.
Determines which classes can use which equipment. Many entries are empty or unused ingame.
- $21E10 - Price for each item in the game, two bytes per item; sorted by item ID.
- $56F00 - Sprite data for weapons during battle
- $5D0A8 - Sprite and palette that every weapon uses in battle, ordered by weapon ID; three bytes per weapon:
0x0: Animation (Sword slash, bow&arrow,etc...) 0x1: Weapon sprite used 0x2: Palette used
- $61410 to $616CF - Weapon Combat stats, 8 bytes per weapon:
0x0: Weapon Element 0x1: Hit% (max 100% by default) 0x2: Attack 0x3: Status added on successful hit 0x4: Magic cast when used/back row OK 0x5: Special properties (for Onion Sword, Shuriken, arrows) 0x6: Stat bonuses/elemental boosts 0x8: Class usability index
- $616D0 to $618CF - Armor combat stats, 8 bytes per piece:
0x0: Elemental resistance 0x1: Evade bonus 0x2: Defence 0x3: Status resistance 0x4: Magic Defence 0x5: (Always zero) 0x6: Stat bonuses/Elemental boosts 0x7: Class usability index (bit 0x80 always set for armor)
- $618D0 to $61A8F - Black/White magic data, 8 bytes per spell; sorted in descending order of spell level:
0x0: Spell Element 0x1: Hit% (max 100% by default) 0x2: Spell Power 0x3: Spell Type (damage, status setting, percent-based damage,etc) 0x4: Target status needed? (eg Life spell only works on dead targets) 0x5: Targeting,reflectability? 0x6: Unknown 0x7: Class usability index
- $61A90 to $61B4F? - Monster and item magic data
- $61B50 to $61BA7? - Geomaner's Terrain magic
- $61BA8 to $61C67 - Summon magic; sorted in ascending order of spell level
Monsters
- $21A90 - Monster Steal/drop data?
- $21C90 - Table of exp value pointers, one for each monster; each entry is a two-byte pointer to data at:
- $21D90 - Table of XP values
- $60010 to $60E7F - Monster combat data, 16 bytes per enemy:
0x0: Level 0x1-0x2: HP 0x3: AI pointer index 0x4: Skill 0x5: Elemental weakness(es) 0x6: Magic Evade/Magic Defense index 0x7: Intelligence 0x8: Attack element 0x9: Attack/Hit/Attack multipler index 0xA: Status applied on successful attack 0xB: Elemental absorption? 0xC: Defense/Evade index 0xD: Elemental resistance? 0xE: Special Attack index 0xF: Steal/Drop index
- $61010 - Combined table for monster attack/hit, defence/evade and Magic Defence/evade/, three bytes per entry. Indexed to in monster attack data
0x0: Attack/Evade/M.Evade multiplier 0x1: Hit/Evade/M.Evade % 0x2: Attack/Defense/M.Defense
Miscellaneous
- $A10 - Map connections; determines which entrances lead to which map (sprites not included).
- $3C10 to ? - Contents of all chests in the game, in no particular order
- $30810 - Text pointer for item/magic/enemy names
- $30D70 - Start of text data
- $3CC3A - Start of text data for items, magic and enemies
- $58010 to $5894F - pointers to, among other things, shop inventory data
- $62C46,4A - Maximum base Hit% for attacks
- $61C68 - Gold given by every enemy, two bytes per enemy
- $7CDE0 - Player's movement speed in towns and dungeons. Higher values than 2 cause screen glitches.