Singular Battle Records
Battle Records table
This is the table that actually drives the monster configurations that your party will be confronted with over the course of the adventure.
Primary Table location: 0×2288b4 — 0xx22a587.
Data structure size: 0×14, or 20 bytes per record.
Number of records: 0×171, or 369 battle records.
I should note that there is a separate version of the table in 0×22d3e4 — 0×22f0b7. You will need to modify both to be sure of getting the changes you desire.
Another interesting tidbit is that the first 256 Battle Records (IDs 0×000 — 0×0ff) are battles that may show up in the standard overworld map, or standard dungeons (defined as dungeons that were in the NES version of Final Fantasy). Battle records with IDs of 0×100 or greater may only be assigned to Dawn of Souls dungeons.
Battle Record Examples
Note that the Battle ID is not present in the Battle Record table, and is provided here merely for reference.
|Battle ID||Config||Run?||Preempt||Zeroes||Monster #1||Monster #2||Monster #3||Monster #4|
|000||00||00||04||00||00 03 05 00||01 00 00 00||ff 00 00 00||ff 00 00 00|
|3-5 Goblins||0 Goblin Guards|
|00e||01||00||21||00||01 00 05 00||04 01 03 00||09 00 02 00||06 00 02 00|
|0-5 Goblin Guards||1-3 Werewolves||0-2 Hill Gigases||0-2 Lizards|
|022||02||01||37||00||1a 00 01 00||1d 01 02 00||ff 00 00 00||ff 00 00 00|
|0-1 Hellhounds||1-2 Ogre Mages|
|04a||05||00||04||00||51 00 08 00||52 00 08 00||50 01 05 00||4f 00 08 00|
|0-8 Cockatrices||0-8 Pyrolisks||1-5 King Mummies||0-8 Mummies|
|07d||04||01||04||00||71 01 01 00||ff 00 00 00||ff 00 00 00||ff 00 00 00|
Battle Record info, decoded
Battle Configuration byte
If you’ve played Final Fantasy at all, you may have noticed that certain monsters are larger than others. Others are really big. This forces the game engine to position monsters differently, based on the kinds of monsters that are present. This byte alerts the engine to the kinds of monsters present. Editing Battle Regions requires a knowledge of the sizes of the various critters in the game; the game knows which monsters are small, which are large, and which are boss-sized, and based on the Configuration byte will load valid monsters. If a battle record provides no valid monsters for its Battle Configuration, Very Bad Things will happen (game execution will probably freeze). Be careful!
- 00 — Up to 9 small monsters displayed in a 3 by 3 configuration
- 01 — Up to 2 large monsters at left, followed by up to 6 small monsters in a 2 by 3 configuration to their right
- 02 — Up to 4 large monsters displayed in a 2 by 2 configuration
- 03 — Displays one fiend-sized monster
- 04 — Displays one small-sized monster in middle of screen, designating it as a mini-boss
- 05 — Intelligently displays small monsters. Flying monsters are displayed after land-bound enemies, to ascertain that graphical anomalies don’t surface. I don’t believe that large monsters can be placed in this configuration, but I’m not 100% certain on this.
- 06 — Displays one Dawn of Souls boss. This is not used for original Final Fantasy NES monsters.
It can’t get much simpler than this… this is 00 if you can run, and 01 if you can’t.
This is the chance that your party won’t be able to react in the first round of battle against these monsters; higher values increase the chance of monsters striking first. I am not sure if this chance is out of 100, or some other hexidecimal friendly number.
Monsters #1 through #4
Each battle can feature up to four types of monsters. The final four groups of four bytes determine which monster is encountered, along with how many may appear. All four groups follow these same conventions, but again, it is unwise to have all of these monsters set to null (meaning ff 00 00 00, or any time that the final three bytes are 00 00 00).
The first byte is the Monster ID referenced. See the Bestiary article to look up individual Monster IDs.
The second byte is the minimum number of that monster that can be encountered. The third byte is the maximum number that can be encountered. The fourth byte is always 00. Again, make sure at least one monster has a “minimum encountered” value of at least 1; an encounter yielding no monsters is untested and could lead to Very Bad Things.
It is safe to reference more monsters of a specific size than can be displayed; the excess monsters simply are ignored when setting up the battle.
Note Battle ID #4a above, this is a very interesting case! There is a potential of 29 monsters being placed (8 Cockatrices, 8 Pyrolisks, 5 King Mummies, and 8 Mummies). The monsters are placed in a first come, first served format. It loads Cockatrices first, then Pyrolisks, then King Mummies, and finally Mummies. Thus, it is possible that you will not face King Mummies (even though there is a minimum of one, as defined by the record), because it is very possible to encounter 9 or more Cockatrices and Pyrolisks combined.