ff3:ff3us:doc:asm:ram_map

This is an old revision of the document!


RAM map

The list corresponds to RAM variables used by the game engine.

  • $1600-$184F: Actors setup (outside battle) ($10 blocks, $25 bytes by block, $01 block as actor)
    • $1600,X: Actor identifier
    • $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
    • $1615,X: Non-battle status 4
    • $1616,X-$1619,X: Battle commands
    • $161A,X: Vigor
    • $161B,X: Speed
    • $161C,X: Stamina
    • $161D,X: Magic power
    • $161E,X: Equipped esper
    • $161F,X: Item equipped on right hand
    • $1620,X: Item equipped on left hand
    • $1621,X: Item equipped on head
    • $1622,X: Item equipped on body
    • $1623,X: Item equipped on relic (slot $00)
    • $1624,X: Item equipped on relic (slot $01)
  • Repeat for all actors
  • $00B5: Command index
  • $00B6: Command sub-index
  • $00B7: Animation (not used by all commands)
  • $00B8-$00B9: Targets
  • $00BB: Targetting byte
  • $00BC: Damage incrementer (50% extra damage for each value unit)
  • $11A0: Targeting Byte
    • $01: Cursor Moveable
    • $02: One Side Only
    • $04: Autoselect both parties
    • $08: Autoselect one party
    • $10: Auto Confirm
    • $20: Manual Party Select
    • $40: Cursor Start on Enemy
    • $80: Randomize selection
  • $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
  • $11B4: Spell randomly cast by weapon (plus flags)
  • $11E0-$11E1: Encountered monster formation.
  • $11E2: Battle background.
  • $1DDD-$1E1C: Monster formations available on veldt.
  • $00EB: Script parameter 1 for event Scripts
  • $00EC: Script parameter 2 for event Scripts
  • $00ED: Script parameter 3 for event Scripts
  • $00EE: Script parameter 4 for event Scripts
  • $00EF: Script parameter 5 for event Scripts.
  • $05C4: Event loop counter.
  • $1869-$1968: Item identifier.
  • $1969-$1A68: Item quantity.
  • $1EBA-$1EBD: Rare items.
  • $1A69-$1A6C: gained Espers.
  • $1A6E-$1CF5: gained spells block. ($0C blocks by actor, $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.
  • $005B: Script current location
  • $0072: Random index for the random number generator
  • $00A2-$00A3: Targets cast on
  • $00A4-$00A5: Targets hit
  • $00BE: Index into random number table
  • $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 by swordtech name, $06 bytes/block)
  • $628A: Game is in Flashback Mode ($00 = no, $01 = yes)
  • $62AB: Game is paused ($00 = no, $01 = yes)
  • $1300: Instrument set for the current song
  • $1301: The ID of the music to play
  • $1302: The music's volume.
  • $1850-$185F: Party setup ($10 blocks, $01 bytes by block, $01 block as actor)
    • $07: Party identifier
    • $18: Party slot (0-3)
    • $20: Row
    • $40: Availability
    • $80: Leader of party
  • Repeat for all blocks
  • $0069-$006C: Characters in actual party
  • $1A6D: Active party
  • $1EDE-1EDF: Gained characters
  • ff3/ff3us/doc/asm/ram_map.1456941803.txt.gz
  • Last modified: 5 years ago
  • (external edit)