Difference between revisions of "Final Fantasy 4 Advance:ROM map"

From Data Crystal
Jump to navigation Jump to search
Line 61: Line 61:
  
 
*'''Monster stats'''
 
*'''Monster stats'''
1020180 = Various sizes and pointer drivenI do not have the pointer table yet.
+
1020180 = 28 bytes eachThe monster order is not the same as in the Bestiary. The Bestiary jumps around alot
 
<BR><BR>
 
<BR><BR>
 
This is a rough draft...and needs to be fixed once the pointer table is discovered.<BR><BR>
 
This is a rough draft...and needs to be fixed once the pointer table is discovered.<BR><BR>
Line 84: Line 84:
 
23 = Status Resistances (1) <BR>
 
23 = Status Resistances (1) <BR>
 
24 = Monster Type (1) <BR>
 
24 = Monster Type (1) <BR>
25-56 = Unknown (?)<BR>
+
25-28 = Unknown (?)<BR>
  
 
*'''Fonts'''
 
*'''Fonts'''

Revision as of 09:45, 31 December 2005

392A5C - Beginning of event pointers, which are relative and consist of 4 bytes.

0DBA00 - Beginning of map event pointers. Map events are 12 bytes long, and are used to place event data on maps. Event ID is the same as the pointer list at 392A5C. All treasure chests are also defined by this 12 byte data.

Format for treasure chests:

The first 2 bytes are the chest ID number. Next, are the chest content bytes, which are 6 bytes. The first 2 of those bytes are for items, the second 2 are for enemy encounters, and if the first 2 bytes are FFFF, the next 4 bytes are money amount. The next 2 bytes are used for what tile the chest turns to when the item is obtained. The last 2 bytes are currently unknown.

F0EEB - start of list for the item shop in Baron

395D8A - This is the encounter ID for Baigan. Changing this makes you fight a different monster.

0D95A4 - Map pointers. It alternates between graphic pointers and clipping pointers. Note that for treasure chests, co-ordinates are NOT used, but rather the first chest entry in that map's index will be in the first "chest" clipping, and go from top to bottom, left to right. Also note the map compression has not been cracked yet.

0D67F0 - warp data for the Black Mage room in Baron Castle. The first 2 bytes are map ID, and the second 2 bytes are exit locations. The rest is currently unknown.

Some data from JCE3000GT & Dragonsbrethren/DKK - Offsets are in Decimal and not Hex

  • Character data:

994008
01 = Level
02 = Equippable Hand
03-04 = HP
05-06 = MP
07 = STR
08 = AGI
09 = STAM
10 = INT
11 = SPIRIT
12 = ? (0x00 value)
13-16 = Current EXP
17-18 = Right hand
19-20 = Amount in R-Hand
21-22 = Left hand
23-24 = Amount in L-Hand
25-26 = Head
27-28 = Body
29-30 = Arms
31-32 = Possibly status ailments?

  • Shop data

986836 (18 bytes long possible and each shop length is pointer driven)

01-02 = Type of shop (00-Weapon, 01-Item, 02-Armor [unknown if there are any more shop type bytes)
03-18 = Items in integer form (example: 0100 is Fire Claw)
The shop closes with the following bytes FF00.

I do not have the pointer table yet...or not even 100% sure if it has one.

  • Item bytes

.txt File with item bytes

  • Items won from monsters

1028266

12 bytes each. Putting 4 of the same value makes that item 100% chance of winning from battle.

01 = % Chance of winning
02 = Empty byte (0x00)
03-12 = Items (use table above)

  • Monster stats

1020180 = 28 bytes each. The monster order is not the same as in the Bestiary. The Bestiary jumps around alot

This is a rough draft...and needs to be fixed once the pointer table is discovered.

Byte # = data type (length):
01-04 = HP (4 bytes)
05 = Experience (2)
07 = Gil (2)
08 = Unknown (1)
09 = Strength (1)
10 = Unknown (1)
11 = Defense (1)
12 = Unknown (1)
13 = Unknown (1)
14 = Unknown (1)
15 = Magic Defense (1)
16 = Unknown (1)
17-18 = Unknown (2)
19 = Unknown (1)
20 = Unknown (1)
21 = Unknown (1)
22 = Magic Power (1)
23 = Status Resistances (1)
24 = Monster Type (1)
25-28 = Unknown (?)

  • Fonts

3D8CC0 = menu font (view in VisualBoy graphics mode with 1 tile width in any tile editor)

There are a total of 3 fonts the menu font is the third. The font uses some kind of odd format with width and overlapping tiles that we haven't 100% figured out yet.