Final Fantasy VI/RAM map

From Data Crystal
Jump to navigation Jump to search

Chip tiny.png The following article is a RAM map for Final Fantasy VI.

The list corresponds to RAM variables used by the game engine. They are generally accessed by LDA and STA instructions.

Actors

  • $1600-$184F: Actors block (#$10 blocks, #$25 bytes/block)
    • $1600,X: Actor identifier. See Actor.
    • $1601,X: Actor graphics.
    • $1602,X-$1607,X: Name.
    • $1608,X: Level.
    • $1609,X-$160A,X: Current HP.
    • $160B,X-$160C,X: Max HP.
    • $160D,X-$160E,X: Current MP.
    • $160F,X-$1610,X: Max MP.
    • $1611,X-$1613,X: Experience.
    • $1614,X: Non-battle status 1. See Status ailment.
    • $1615,X: Non-battle status 4. See Status ailment.
    • $1616,X-$1619,X: Battle commands. See battle command.
    • $161A,X: Vigor.
    • $161B,X: Speed.
    • $161C,X: Stamina.
    • $161D,X: Magic power.
    • $161E,X: Equipped esper.
    • $161F,X: Item equipped on right hand. See Item.
    • $1620,X: Item equipped on left hand. See Item.
    • $1621,X: Item equipped on head. See Item.
    • $1622,X: Item equipped on body. See Item.
    • $1623,X: Item equipped on relic (slot #$00). See Item.
    • $1624,X: Item equipped on relic (slot #$01). See Item.
    • Repeat for all blocks. The block index corresponds to the character.
  • $1850-$185F: Multi-party block. (#$10 blocks, #$01 bytes/block)
    • #$07: Party identifier.
    • #$18: Party slot (0-3).
    • #$20: Row.
    • #$40: Availability.
    • #$80: Leader of party.
    • Repeat for all blocks. The block index corresponds to the character.

Attack

  • $11A1: Elemental type
    • #$01: Fire
    • #$02: Ice
    • #$04: Bolt
    • #$08: Poison
    • #$10: Wind
    • #$20: Pearl
    • #$40: Earth
    • #$80: Water
  • $11A2: Attack flags
    • #$01: Physical or magical damage
    • #$02: Miss if target immune to death
    • #$04: Only target dead or undead targets
    • #$08: Make heal spells damage undead
    • #$10: Randomize target
    • #$20: Ignore defense
    • #$40: Don't split damage in multi-target spells
    • #$80: Abort on allies
  • $11A3: Attack flags
    • #$01: Spell is usable outside battle
    • #$02: Ignore reflect
    • #$04: Can learn as Lore
    • #$08: Enable Runic
    • #$10: Quick/Warp flag
    • #$20: Re-target if target is dead
    • #$40: Caster dies after attack
    • #$80: Concern MP
  • $11A4: Attack flags
    • #$01: Heal damage
    • #$02: Redirection
    • #$04: Lift status
    • #$08: Toggle status
    • #$10: Stamina used in defense
    • #$20: Can't dodge attack
    • #$40: Use evasion as Lv X Spells
    • #$80: Use HP fraction
  • $11A5: Spell cost
  • $11A6: Spell power
  • $11A7: Attack flags
    • #$01: Miss if immune to status
    • #$02: Show text is attack hits
  • $11A8: Hit rate
  • $11A9: Special effect
  • $11AA: Status
    • #$01: Dark
    • #$02: Zombie
    • #$04: Poison
    • #$08: Magitek
    • #$10: Clear
    • #$20: Imp
    • #$40: Petrify
    • #$80: Death
  • $11AB: Status
    • #$01: Condemned
    • #$02: Near fatal
    • #$04: Image
    • #$08: Mute
    • #$10: Berserk
    • #$20: Muddle
    • #$40: Seizure
    • #$80: Sleep
  • $11AC: Status
    • #$01: Dance
    • #$02: Regen
    • #$04: Slow
    • #$08: Haste
    • #$10: Stop
    • #$20: Shell
    • #$40: Safe
    • #$80: Reflect
  • $11AD: Status
    • #$01: Rage
    • #$02: Freeze
    • #$04: Life 3
    • #$08: Morph
    • #$10: Chant
    • #$20: Disappear
    • #$40: Dog block
    • #$80: Float
  • $11AE: (Vigor * 2) if physical or (Magic Power) if magical
  • $11AF: Level of attacker
  • $11B0-$11B1: Damage

Battle

  • $11E0-$11E1: Encountered monster formation. See monster formation.
  • $11E2: Battle background.
  • $1DDD-$1E1C: Monster formations available on veldt.

Items

  • $1869-$1968: Item identifier. See Item.
  • $1969-$1A68: Item quantity.
  • $1EBA-$1EBD: Rare items. See Rare items.

Magic and skills

  • $1A69-$1A6C: gained Espers.
  • $1A6E-$1CF5: gained spells block. (#$0C blocks, #$36 bytes/block)
  • $1CF6: Morphy supply.
  • $1CF7: gained Sword Tech levels.
  • $1D28: gained Blitz levels.
  • $1D29-$1D2B: gained Lores.
  • $1D2C-$1D4B: gained Rages.
  • $1D4C: gained Dances.

Miscellaneous

  • $1860-$1862: Gil.
  • $1863-$1865: Play time. (hours/minutes/seconds)
  • $1866-$1868: Number of steps.
  • $1CF8-$1D27: Sword Tech names. Unused in USA version. (#$08 blocks, #$06 bytes/block)

Party

  • $69-$6C: Characters in actual party.
  • $1A6D: Active party.
  • $1EDE-1EDF: Gained characters.

Misc

  • $628A: Game is in Flashback Mode (#$00 = no, #$01 = yes)
  • $62AB: Game is paused (#$00 = no, #$01 = yes)

$7E5000

$7E5000 - $7E7C62 (while code/data decompressed from $C2686C - $C28A60 is active)