Final Fantasy Tactics A2: Grimoire of the Rift

From Final Fantasy Hacktics Wiki
Revision as of 00:25, 22 December 2012 by Lennart (talk | contribs) (Continued copying notes.)
Jump to navigation Jump to search

Please note that everything comes from the US version of the game.

ROM Addresses

All address ranges are inclusive.

Special Units: 0x053D5BEC - 0x053D6863 (0x1C bytes long)

Job Data: 0x053D6864 - 0x053D963B (0x48 bytes long)

Ability Sets: 0x053D963C - 0x053D9ABB (0x0C bytes long)

Ability Table: 0x053D9ABC - 0x053DBC93 (0x0C bytes long)

Ability Data 0x053DBC94 - 0x053E638B (0x34 bytes long)

Ability Animations: 0x053E638C - 0x053EB09B (0x18 bytes long)

Equipment Data: 0x053FB748 - 0x053FF7A7 (0x28 bytes long)

Job Data

Offset Length Type Name Description
0x00 2 uint16 Portrait

The unit's portrait.

  • Overridden by unique characters.
  • Refer to the portraits list for values.
0x02 2 uint16 Enemy Portrait

The unit's portrait if on the opposing team.

  • Overridden by unique characters.
  • Refer to the portraits list for values.
0x04 2 uint16 Sprite

Map sprite of the character.

  • Does not change the sprite on the top screen.
  • Overridden by unique characters.
  • Refer to the sprite list for values.
0x06 2 uint16 Unknown

Seems to have no effect on sprites.

0x08 2 uint16 Enemy Sprite

Map sprite of enemy characters. Does not change the sprite on the top screen.

  • Overridden by unique characters.
  • Refer to the sprite list for values. Identical to friendly sprite value.
0x0A 2 uint16 Unknown

Seems to have no effect on sprites.

0x0C 1 uint8 Palette

Value:

  • 0x00 = Friendly/Monster
  • 0x01 = Enemy/Monster
  • 0x02 = Monster
  • 0x03 = Monster
  • 0x04 = Monster
  • 0x05 = Monster
  • Overridden by unique characters.
0x0D 1 uint8 Enemy Palette

Value:

  • 0x00 = Friendly/Monster
  • 0x01 = Enemy/Monster
  • 0x02 = Monster
  • 0x03 = Monster
  • 0x04 = Monster
  • 0x05 = Monster
  • Overridden by unique characters.
0x0E 1 uint8 Race

Value:

  • 0x00 = None
  • 0x01 = Hume
  • 0x02 = Bangaa
  • 0x03 = Nu Mou
  • 0x04 = Viera
  • 0x05 = Moogle
  • 0x06 = Seeq
  • 0x07 = Gria
  • 0x08 - 0x28 = Monsters
0x0F 1 uint8 Move Type

Value:

  • 0x00 = Null (Doesn't mean immobile)
  • 0x01 = Walk
  • 0x02 = Fly
  • 0x03 = Teleport
0x10 1 uint8 Stand Type

Value:

  • 0x00 = Null
  • 0x01 = Short (Can't enter water)
  • 0x02 = Normal (Enters but sinks in water)
  • 0x03 = Crawl (Malboros and alike)
  • 0x04 = Float (Fairies and alike)
0x11 1 uint8 Move

Unknown maximum.

0x12 1 uint8 Jump

Unknown maximum.

0x13 14 uint8 Stats

Offsets:

  • 0x00: HP Base
  • 0x01: HP Growth
  • 0x02: MP Base
  • 0x03: MP Growth
  • 0x04: Speed Base
  • 0x05: Speed Growth
  • 0x06: Attack Base
  • 0x07: Attack Growth
  • 0x08: Defense Base
  • 0x09: Defense Growth
  • 0x0A: Magick Base
  • 0x0B: Magick Growth
  • 0x0C: Resistance Base
  • 0x0D: Resistance Growth

See notes on stats.

0x21 8 uint8 Affinities

Offsets:

  • 0x00: Fire
  • 0x01: Air
  • 0x02: Earth
  • 0x03: Water
  • 0x04: Ice
  • 0x05: Thunder
  • 0x06: Holy
  • 0x07: Dark

Values:

  • 0x00 = Weak
  • 0x01 = Neutral
  • 0x02 = Resist
  • 0x03 = Nullify
  • 0x04 = Absorb
0x29 1 uint8 Evasion

Evasion = 100% - [Value]

0x2A 1 uint8 Unknown

Divisible by 5, varies between 10 and 30.

0x2B 1 uint8 Unknown
0x2C 1 uint8 Unknown
0x2D 1 uint8 Resilience

Resilience = 100% - [Value]

0x2E 2 uint16 Ability Set

The job's corresponding ability set (eg. Arts of War).

0x30 1 uint8 Unarmed Bonus

This is not divided by 4 and added as is.

0x31 4 pointer? Unknown

Seems to match with race.

0x35 13 ? Unknown

Lots of stuff.

0x42 1 uint8 Unknown

Seems to have something to do with playability/job switchable?

0x43 5 uint8 Equipment

See notes on equipment.

Notes on Stats

Base stats are given on recruitment and never change. A character at level 1 has base stats, growths apply when it levels. Stat growths are applied with every level up in that job, with variance (random chance of less or more growths). Stats cap at 999. Stats displayed in-game are quartered and rounded down.

Base speed is 50 + [value]. This means that 50 is the minimum base speed possible. The maximum speed is 149. Speed growth is stored as a percentage representing the chance of gaining 1 speed per level in that job.

Notes on Equipment The five bytes represents a big-endian binary array. For example...

84 00 00 EC 0E = 00100001 00000000 00000000 00110111 01110000

Each bit represents whether the corresponded equipment type can be equipped by that job.

Index Equip Type
0x00 None
0x01 Knives
0x02 Swords
0x03 Blades
0x04 Sabers
0x05 Knightswords
0x06 Rapiers
0x07 Greatswords
0x08 Broadswords
0x09 Katana
0x0A Spears
0x0B Rods
0x0C Staves
0x0D Poles
0x0E Knuckles
0x0F Bows
0x10 Greatbows
0x11 Guns
0x12 Instruments
0x13 Cannons
0x14 ?
0x15 Axes
0x16 Hammers
0x17 Maces
0x18 Cards
0x19 Books
0x1A Shields
0x1B Helmets
0x1C Ribbons
0x1D Hats
0x1E Heavy Armor
0x1F Light Armor
0x20 Cloth Armor
0x21 Shoes
0x22 Armguards
0x23 Accessories