Difference between revisions of "Arcana:RAM map"

From Data Crystal
Jump to: navigation, search
(Added more bytes.)
Line 11: Line 11:
 
** #$0004: Cards
 
** #$0004: Cards
 
** #$0005: Weapons
 
** #$0005: Weapons
** #$0008: Attack
+
** #$0007: Attack
 +
* $11C3: Party condition (a series of words in the order: Rooks, Spirit, Guest1, Guest2, Enemies 1-8)
 +
** Odd byte:
 +
*** #$00: Satisfactory
 +
*** #$01: Deceased
 +
*** #$02: Not Here
 +
*** #$03: Paralyzed
 +
*** #$04: Petrified
 +
*** #$05: Confused
 +
*** #$06: Sleeping
 +
** Even byte: #$01 indicates a party member
 
* $11F3-11FA: Order that spells hit the party (2 bytes per character)
 
* $11F3-11FA: Order that spells hit the party (2 bytes per character)
 
** #$0000: Upper left
 
** #$0000: Upper left
Line 18: Line 28:
 
** #$0003: Lower right
 
** #$0003: Lower right
  
* $120B: Rooks' Element
+
* $120B: Rooks' Element/Race
* $120D: Spirit's Element
+
* $120D: Spirit's Element/Race
* $120F: Guest1's Element
+
* $120F: Guest1's Element/Race
* $1212: Guest2's Element
+
* $1212: Guest2's Element/Race
 +
* $1214: Enemy1's Element/Race
 +
** Bytes continue with Enemy2-8 in order
 
* $1223: Rooks' Strength
 
* $1223: Rooks' Strength
 
* $1225: Spirit's Strength
 
* $1225: Spirit's Strength
 
* $1227: Guest1's Strength
 
* $1227: Guest1's Strength
 
* $1229: Guest2's Strength
 
* $1229: Guest2's Strength
 +
* $122B: Enemy1's Strength (table offset?)
 +
** Bytes continue with Enemy2-8 in order
 
* $123B: Rooks' Intelligence (reduces magic damage taken)
 
* $123B: Rooks' Intelligence (reduces magic damage taken)
 
* $123D: Spirit's Intelligence
 
* $123D: Spirit's Intelligence
 
* $123F: Guest1's Intelligence
 
* $123F: Guest1's Intelligence
 
* $1241: Guest2's Intelligence
 
* $1241: Guest2's Intelligence
* $1243-$124D: Monsters' Intelligence (affects spell damage)
+
* $1243: Monsters' Intelligence (affects spell damage)
 +
** Bytes continue with Enemy2-8 in order
 
* $1253: Rooks' Endurance (reduces physical damage taken)
 
* $1253: Rooks' Endurance (reduces physical damage taken)
 
* $1255: Spirit's Endurance
 
* $1255: Spirit's Endurance
 
* $1257: Guest1's Endurance
 
* $1257: Guest1's Endurance
 
* $1259: Guest2's Endurance
 
* $1259: Guest2's Endurance
* $126B: Rooks' Alertness (affects accuracy and evasion)
+
* $125B: Enemy1's Endurance
 +
** Bytes continue with Enemy2-8 in order
 +
* $126B: Rooks' Alertness (affects accuracy, evasion and critical hits)
 
* $126D: Spirit's Alertness
 
* $126D: Spirit's Alertness
 
* $126F: Guest1's Alertness
 
* $126F: Guest1's Alertness
 
* $1271: Guest2's Alertness
 
* $1271: Guest2's Alertness
 +
* $1273: Enemy1's Alertness
 +
** Bytes continue with Enemy2-8 in order
  
* $1280-$12BF: Equipped items lists
+
* $1283: Equipped weapons
** Spaces are allocated for Rooks, Guest 1 and Guest 2. Two bytes per area, for [[Arcana:Equipment|item ID]] and character ID.
+
** Two bytes each, in order of Rooks, Guest 1 and Guest 2.
** Equipped by flags:
+
*** [[Arcana:Equipment|item ID]] / "Equipped by" flag
** #$00: Rooks
+
** "Equipped by" flags:
** #$05: Teefa
+
*** #$00: Rooks
** #$06: Salah
+
*** #$05: Teefa
** #$07: Darwin
+
*** #$06: Salah
** #$08: Axs
+
*** #$07: Darwin
 +
*** #$08: Axs
 +
* $129B: Equipped armors
 +
* $12B3: Equipped shields/accessories
 +
* $12CB: Equipped rings
  
 
* $12E3: Accuracy modifier (concerns Acc. Increase All and Accuracy Impair)
 
* $12E3: Accuracy modifier (concerns Acc. Increase All and Accuracy Impair)
 
** There are 3 possible states: StatDown, Normal and StatUp. StatUp and StatDown cancel each other out.
 
** There are 3 possible states: StatDown, Normal and StatUp. StatUp and StatDown cancel each other out.
** #$01: Rooks' accuracy up
+
** Byte values are as follows:
** #$04: Spirit's accuracy up
+
*** #$01: Rooks' accuracy up
** #$10: Guest1's accuracy up
+
*** #$04: Spirit's accuracy up
** #$40: Guest2's accuracy up
+
*** #$10: Guest1's accuracy up
** #$02: Rooks' accuracy down
+
*** #$40: Guest2's accuracy up
** #$08: Spirit's accuracy down
+
*** #$02: Rooks' accuracy down
** #$20: Guest1's accuracy down
+
*** #$08: Spirit's accuracy down
** #$80: Guest2's accuracy down
+
*** #$20: Guest1's accuracy down
 +
*** #$80: Guest2's accuracy down
 
* $12E7: Evasion modifier (concerns Dodge All and Offense Impair) (same flags)
 
* $12E7: Evasion modifier (concerns Dodge All and Offense Impair) (same flags)
 
* $12EB: Attack modifier (concerns Stomp All and Attack Impair) (same flags)
 
* $12EB: Attack modifier (concerns Stomp All and Attack Impair) (same flags)
Line 67: Line 91:
 
* $12F7: HP, Guest1
 
* $12F7: HP, Guest1
 
* $12F9: HP, Guest2
 
* $12F9: HP, Guest2
 +
* $12FB: HP, Enemy1
 +
** Bytes continue with Enemy2-8 in order
 
* $1323: MP, Rooks
 
* $1323: MP, Rooks
 
* $1325: MP, Spirit
 
* $1325: MP, Spirit
 
* $1327: MP, Guest1
 
* $1327: MP, Guest1
 
* $1329: MP, Guest2
 
* $1329: MP, Guest2
 +
* $132B: MP, Enemy1
 +
** Bytes continue with Enemy2-8 in order
 
* $1393: Max HP, Rooks
 
* $1393: Max HP, Rooks
 
* $1395: Max HP, Spirit
 
* $1395: Max HP, Spirit
 
* $1397: Max HP, Guest1
 
* $1397: Max HP, Guest1
 
* $1399: Max HP, Guest2
 
* $1399: Max HP, Guest2
 +
** (Next byte is Rooks' Max HP -> Enemies have no max HP/MP stat)
 
* $139B: Max MP, Rooks
 
* $139B: Max MP, Rooks
 
* $139D: Max MP, Spirit
 
* $139D: Max MP, Spirit
 
* $139F: Max MP, Guest1
 
* $139F: Max MP, Guest1
 
* $13A1: Max MP, Guest2
 
* $13A1: Max MP, Guest2
 +
* $13A9: Card inventory (Two bytes each, eight entries)
 +
** ([[Arcana:Equipment|item ID]] / quantity)
 +
* $13B9: Item inventory (Two bytes each, 48 entries)
 +
** ([[Arcana:Equipment|item ID]] / quantity)
 +
* $1419: Equipment inventory (Two bytes each, 48 entries)
 +
** ([[Arcana:Equipment|item ID]] / quantity)
 +
* $1459: Rooks' spell list (Two bytes each, 32 entries)
 +
* $1499: Spirit's spell list (Two bytes each, 32 entries?)
 +
* $14D9: Guest1's spell list (Two bytes each, 32 entries?)
 +
* $1519: Guest2's spell list (Two bytes each, 32 entries?)
 +
* $1559: Current GP
 +
* $155B: Current party (Two bytes each)
 +
** #$00: Rooks
 +
** #$01: Sylph
 +
** #$02: Marid
 +
** #$03: Dao
 +
** #$04: Efrite
 +
** #$05: Teefa
 +
** #$06: Salah
 +
** #$07: Darwin
 +
** #$08: Axs
 +
** #$09: (Empty slot)
 +
* $1577: Window color (Bit depth: 0BBB B0GG GG0R RRR0)
 +
* $1580-16DF: Current display
 +
** For spells, names are preceded by 06 0D (white) if usable and 06 0E (grayed) if not.
 +
* $16F3: #$01 if in motion, #$00 if standing still
 +
* $16F7: Dungeon X position
 +
* $16F9: Dungeon Y position
 +
* $16FB: Direction facing
 +
* $16FF: Suspected dungeon progress
 +
* $17BF: Suspected dungeon progress
 +
* $18CD: Current Chapter # (01-05)
 +
* $18E3: Treasure chests opened
  
 
==Inventory==
 
==Inventory==

Revision as of 14:13, 12 April 2020

(Back to Main page)

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


Battle

  • $0624-$0626: Active spirit's HP (Format: BCD)
  • $0A87-$0A8E: Current selected battle command (2 bytes per character)
    • #$0001: Main menu
    • #$0003: Items/Magic
    • #$0004: Cards
    • #$0005: Weapons
    • #$0007: Attack
  • $11C3: Party condition (a series of words in the order: Rooks, Spirit, Guest1, Guest2, Enemies 1-8)
    • Odd byte:
      • #$00: Satisfactory
      • #$01: Deceased
      • #$02: Not Here
      • #$03: Paralyzed
      • #$04: Petrified
      • #$05: Confused
      • #$06: Sleeping
    • Even byte: #$01 indicates a party member
  • $11F3-11FA: Order that spells hit the party (2 bytes per character)
    • #$0000: Upper left
    • #$0001: Upper right
    • #$0002: Lower left
    • #$0003: Lower right
  • $120B: Rooks' Element/Race
  • $120D: Spirit's Element/Race
  • $120F: Guest1's Element/Race
  • $1212: Guest2's Element/Race
  • $1214: Enemy1's Element/Race
    • Bytes continue with Enemy2-8 in order
  • $1223: Rooks' Strength
  • $1225: Spirit's Strength
  • $1227: Guest1's Strength
  • $1229: Guest2's Strength
  • $122B: Enemy1's Strength (table offset?)
    • Bytes continue with Enemy2-8 in order
  • $123B: Rooks' Intelligence (reduces magic damage taken)
  • $123D: Spirit's Intelligence
  • $123F: Guest1's Intelligence
  • $1241: Guest2's Intelligence
  • $1243: Monsters' Intelligence (affects spell damage)
    • Bytes continue with Enemy2-8 in order
  • $1253: Rooks' Endurance (reduces physical damage taken)
  • $1255: Spirit's Endurance
  • $1257: Guest1's Endurance
  • $1259: Guest2's Endurance
  • $125B: Enemy1's Endurance
    • Bytes continue with Enemy2-8 in order
  • $126B: Rooks' Alertness (affects accuracy, evasion and critical hits)
  • $126D: Spirit's Alertness
  • $126F: Guest1's Alertness
  • $1271: Guest2's Alertness
  • $1273: Enemy1's Alertness
    • Bytes continue with Enemy2-8 in order
  • $1283: Equipped weapons
    • Two bytes each, in order of Rooks, Guest 1 and Guest 2.
    • "Equipped by" flags:
      • #$00: Rooks
      • #$05: Teefa
      • #$06: Salah
      • #$07: Darwin
      • #$08: Axs
  • $129B: Equipped armors
  • $12B3: Equipped shields/accessories
  • $12CB: Equipped rings
  • $12E3: Accuracy modifier (concerns Acc. Increase All and Accuracy Impair)
    • There are 3 possible states: StatDown, Normal and StatUp. StatUp and StatDown cancel each other out.
    • Byte values are as follows:
      • #$01: Rooks' accuracy up
      • #$04: Spirit's accuracy up
      • #$10: Guest1's accuracy up
      • #$40: Guest2's accuracy up
      • #$02: Rooks' accuracy down
      • #$08: Spirit's accuracy down
      • #$20: Guest1's accuracy down
      • #$80: Guest2's accuracy down
  • $12E7: Evasion modifier (concerns Dodge All and Offense Impair) (same flags)
  • $12EB: Attack modifier (concerns Stomp All and Attack Impair) (same flags)
  • $12EF: Defense modifier (concerns Wall All and Defense Impair) (same flags)
  • $12F3: HP, Rooks
  • $12F5: HP, Spirit
  • $12F7: HP, Guest1
  • $12F9: HP, Guest2
  • $12FB: HP, Enemy1
    • Bytes continue with Enemy2-8 in order
  • $1323: MP, Rooks
  • $1325: MP, Spirit
  • $1327: MP, Guest1
  • $1329: MP, Guest2
  • $132B: MP, Enemy1
    • Bytes continue with Enemy2-8 in order
  • $1393: Max HP, Rooks
  • $1395: Max HP, Spirit
  • $1397: Max HP, Guest1
  • $1399: Max HP, Guest2
    • (Next byte is Rooks' Max HP -> Enemies have no max HP/MP stat)
  • $139B: Max MP, Rooks
  • $139D: Max MP, Spirit
  • $139F: Max MP, Guest1
  • $13A1: Max MP, Guest2
  • $13A9: Card inventory (Two bytes each, eight entries)
  • $13B9: Item inventory (Two bytes each, 48 entries)
  • $1419: Equipment inventory (Two bytes each, 48 entries)
  • $1459: Rooks' spell list (Two bytes each, 32 entries)
  • $1499: Spirit's spell list (Two bytes each, 32 entries?)
  • $14D9: Guest1's spell list (Two bytes each, 32 entries?)
  • $1519: Guest2's spell list (Two bytes each, 32 entries?)
  • $1559: Current GP
  • $155B: Current party (Two bytes each)
    • #$00: Rooks
    • #$01: Sylph
    • #$02: Marid
    • #$03: Dao
    • #$04: Efrite
    • #$05: Teefa
    • #$06: Salah
    • #$07: Darwin
    • #$08: Axs
    • #$09: (Empty slot)
  • $1577: Window color (Bit depth: 0BBB B0GG GG0R RRR0)
  • $1580-16DF: Current display
    • For spells, names are preceded by 06 0D (white) if usable and 06 0E (grayed) if not.
  • $16F3: #$01 if in motion, #$00 if standing still
  • $16F7: Dungeon X position
  • $16F9: Dungeon Y position
  • $16FB: Direction facing
  • $16FF: Suspected dungeon progress
  • $17BF: Suspected dungeon progress
  • $18CD: Current Chapter # (01-05)
  • $18E3: Treasure chests opened

Inventory

  • $13A9-$13B7: Card inventory (2 bytes per slot, ID then quantity)
    • #$00: Empty slot
    • #$01: Wind Card
    • #$02: Earth Card
    • #$03: Water Card
    • #$04: Fire Card
    • #$05: Null Card
    • #$06: Fog Card
    • #$07: Call Amulet
    • #$08: Mirror Card (bugged)
  • $13B9-$1418: Item inventory (2 bytes per slot, $30 slots: ID then #$00)
    • #$01: Return Ring
    • #$02: Water of Life (dummied)
    • #$03: Sleeping Bag
    • #$04: Tent
    • #$05: Strength Honey
    • #$06: Intelligence Honey
    • #$07: Endurance Honey
    • #$08: Agility Honey
    • #$09: Restore Honey
    • #$0A: MP Honey
    • #$0B: Herbs
    • #$0C: Medicine
    • #$0D: Silver Flask
    • #$0E: Gold Flask
    • #$0F: Maiden's Tears
    • #$10: Moon Oil
    • #$11: Enchanted Jewel (dummied)
  • $1419-1458: Equipment inventory (2 bytes per slot, $20 slots: ID then Equipped By)
    • Equipped by flags:
    • #$00: Rooks
    • #$05: Teefa
    • #$06: Salah
    • #$07: Darwin
    • #$08: Axs
    • #$FF: Nobody

Actors Continued

  • $1459-$1398: Rooks' spell list (2 bytes per entry, Spell ID followed by #$00)
  • $1499-14D8: Spirit's spell list
  • $14D9-1518: Guest1's spell list
  • $1519-1558: Guest2's spell list
  • $155D: Active spirit
    • $01: Sylph
    • $02: Dao
    • $03: Marid
    • $04: Efrite
    • $09: none
  • $155F: Guest1
  • $1561: Guest2
    • $05: Teefa
    • $06: Salah
    • $07: Darwin
    • $08: Axs
    • $09: none

Miscellaneous

  • $15AF: Text being displayed
  • $16F7: X position on map
  • $16F9: Y position on map
  • $16FB: Facing (#$00 North, #$02 East, #$04 South, #$06 West)
  • $18E3-$18E8: Treasure chest flags (each chest has its own bit)