Dragon Warrior III (NES)/RAM map

From Data Crystal
< Dragon Warrior III (NES)
Revision as of 17:20, 5 May 2024 by Ansarya (talk | contribs) (Reformatted spell flag list)
Jump to navigation Jump to search

Chip tiny.png The following article is a RAM map for Dragon Warrior III (NES).

Main

Category Address Size Description
Unknown $0000 - $001b 28 bytes ...
Data $001c byte RNG
Unknown $001d - $002b 15 bytes ...
Data $002c byte Party Travel type (ground, ship, air)
Unknown $002d - $004b 31 bytes ...
Data $004c byte RNG
Unknown $004d - $0050 4 bytes ...
Battles $0051 byte Whose turn it is
Unknown $0052 - $00a3 82 bytes ...
Data $00a4 byte RNG
Unknown $00a5 - $00ac 8 bytes ...
Data $00ad byte Fairy Water Counter
Unknown $00ae - $00d7 42 bytes ...
Data $00d8 byte Music counter
Unknown $00d9 - $01ff 295 bytes ...
Graphics $0200 - $020f 16 bytes Player 1 - On Screen Sprite data
Graphics $0210 - $021f 16 bytes Player 2 - On Screen Sprite data
Graphics $0220 - $022f 16 bytes Player 3 - On Screen Sprite data
Graphics $0230 - $023f 16 bytes Player 4 - On Screen Sprite data
Graphics $0240 - $02ff 192 bytes On Screen Sprite data
Unknown $0300 - $04ff 512 bytes ...
Battles $0500 - $0501 word Enemy 1 - HP
Battles $0502 - $0503 word Enemy 2 - HP
Battles $0504 - $0505 word Enemy 3 - HP
Battles $0506 - $0507 word Enemy 4 - HP
Battles $0508 - $0509 word Enemy 5 - HP
Battles $050a - $050b word Enemy 6 - HP
Battles $050c - $050d word Enemy 7 - HP
Battles $050e - $050f word Enemy 8 - HP
Battles $0510 byte Enemy 1 - MP
Battles $0511 byte Enemy 2 - MP
Battles $0512 byte Enemy 3 - MP
Battles $0513 byte Enemy 4 - MP
Battles $0514 byte Enemy 5 - MP
Battles $0515 byte Enemy 6 - MP
Battles $0516 byte Enemy 7 - MP
Battles $0517 byte Enemy 8 - MP
Battles $0518 byte Enemy 1 - Agility
Battles $0519 byte Enemy 2 - Agility
Battles $051a byte Enemy 3 - Agility
Battles $051b byte Enemy 4 - Agility
Battles $051c byte Enemy 5 - Agility
Battles $051d byte Enemy 6 - Agility
Battles $051e byte Enemy 7 - Agility
Battles $051f byte Enemy 8 - Agility
Battles $0520 - $0521 word Enemy 1 - Defense
Battles $0522 - $0523 word Enemy 2 - Defense
Battles $0524 - $0525 word Enemy 3 - Defense
Battles $0526 - $0527 word Enemy 4 - Defense
Battles $0528 - $0529 word Enemy 5 - Defense
Battles $052a - $052b word Enemy 6 - Defense
Battles $052c - $052d word Enemy 7 - Defense
Battles $052e - $052f word Enemy 8 - Defense
Battles $0530 - $0531 word Enemy 1 - Status
Battles $0532 - $0533 word Enemy 2 - Status
Battles $0534 - $0535 word Enemy 3 - Status
Battles $0536 - $0537 word Enemy 4 - Status
Battles $0538 - $0539 word Enemy 5 - Status
Battles $053a - $053b word Enemy 6 - Status
Battles $053c - $053d word Enemy 7 - Status
Battles $053e - $053f word Enemy 8 - Status
Unknown $0540 - $0564 37 bytes ...
Battles $0565 byte Bikill flag on Enemy 1 (if 1)
Unknown $0566 - $056c 7 bytes ...
Battles $056d byte Enemy Group 1 - Type
Battles $056e byte Enemy Group 2 - Type
Battles $056f byte Enemy Group 3 - Type
Battles $0570 byte Enemy Group 4 - Type
Battles $0571 byte Group 1 - Count
Battles $0572 byte Group 2 - Count
Battles $0573 byte Group 3 - Count
Battles $0574 byte Group 4 - Count
Unknown $0575 - $06dd 361 bytes ...
Data $06de byte Level (World?) X Position, Level (World?) Y Position, Time of day (sub bytes)
Data $06df byte Time of day
Unknown $06e0 - $06ff 32 bytes ...
Stats $0700 byte Player 1 - Level
Stats $0701 byte Player 2 - Level
Stats $0702 byte Player 3 - Level
Stats $0703 byte Player 4 - Level
Stats $0704 byte Player 1 - Strength
Stats $0705 byte Player 2 - Strength
Stats $0706 byte Player 3 - Strength
Stats $0707 byte Player 4 - Strength
Stats $0708 byte Player 1 - Agility
Stats $0709 byte Player 2 - Agility
Stats $070a byte Player 3 - Agility
Stats $070b byte Player 4 - Agility
Stats $070c byte Player 1 - Intelligence
Stats $070d byte Player 2 - Intelligence
Stats $070e byte Player 3 - Intelligence
Stats $070f byte Player 4 - Intelligence
Stats $0710 byte Player 1 - Luck
Stats $0711 byte Player 2 - Luck
Stats $0712 byte Player 3 - Luck
Stats $0713 byte Player 4 - Luck
Stats $0714 byte Player 1 - Vitality
Stats $0715 byte Player 2 - Vitality
Stats $0716 byte Player 3 - Vitality
Stats $0717 byte Player 4 - Vitality
Stats $0718 byte Player 1 - Class / Gender
Stats $0719 byte Player 2 - Class / Gender
Stats $071a byte Player 3 - Class / Gender
Stats $071b byte Player 4 - Class / Gender
Stats $071c - $071d word Player 1 - HP
Stats $071e - $071f word Player 2 - HP
Stats $0720 - $0721 word Player 3 - HP
Stats $0722 - $0723 word Player 4 - HP
Stats $0724 - $0725 word Player 1 - Max HP
Stats $0726 - $0727 word Player 2 - Max HP
Stats $0728 - $0729 word Player 3 - Max HP
Stats $072a - $072b word Player 4 - Max HP
Stats $072c - $072d word Player 1 - MP
Stats $072e - $072f word Player 2 - MP
Stats $0730 - $0731 word Player 3 - MP
Stats $0732 - $0733 word Player 4 - MP
Stats $0734 - $0735 word Player 1 - Max MP
Stats $0736 - $0737 word Player 2 - Max MP
Stats $0738 - $0739 word Player 3 - Max MP
Stats $073a - $073b word Player 4 - Max MP
Stats $073c - $073d word Player 1 - Status
Stats $073e - $073f word Player 2 - Status
Stats $0740 - $0741 word Player 3 - Status
Stats $0742 - $0743 word Player 4 - Status
Stats $0744 - $0746 long Player 1 - Experience
Stats $0747 - $0749 long Player 2 - Experience
Stats $074a - $074c long Player 3 - Experience
Stats $074d - $074f long Player 4 - Experience
Stats $0750 - $0752 long Player 1 - Return Destinations
Stats $0753 - $0755 long Player 2 - Return Destinations
Stats $0756 - $0758 long Player 3 - Return Destinations
Stats $0759 - $075b long Player 4 - Return Destinations
Stats $075c - $0763 8 bytes Player 1 - Name
Stats $0764 - $076b 8 bytes Player 2 - Name
Stats $076c - $0773 8 bytes Player 3 - Name
Stats $0774 - $077b 8 bytes Player 4 - Name
Items $077c byte Player 1 - Item Slot 1
Items $077d byte Player 1 - Item Slot 2
Items $077e byte Player 1 - Item Slot 3
Items $077f byte Player 1 - Item Slot 4
Items $0780 byte Player 1 - Item Slot 5
Items $0781 byte Player 1 - Item Slot 6
Items $0782 byte Player 1 - Item Slot 7
Items $0783 byte Player 1 - Item Slot 8
Items $0784 byte Player 2 - Item Slot 1
Items $0785 byte Player 2 - Item Slot 2
Items $0786 byte Player 2 - Item Slot 3
Items $0787 byte Player 2 - Item Slot 4
Items $0788 byte Player 2 - Item Slot 5
Items $0789 byte Player 2 - Item Slot 6
Items $078a byte Player 2 - Item Slot 7
Items $078b byte Player 2 - Item Slot 8
Items $078c byte Player 3 - Item Slot 1
Items $078d byte Player 3 - Item Slot 2
Items $078e byte Player 3 - Item Slot 3
Items $078f byte Player 3 - Item Slot 4
Items $0790 byte Player 3 - Item Slot 5
Items $0791 byte Player 3 - Item Slot 6
Items $0792 byte Player 3 - Item Slot 7
Items $0793 byte Player 3 - Item Slot 8
Items $0794 byte Player 4 - Item Slot 1
Items $0795 byte Player 4 - Item Slot 2
Items $0796 byte Player 4 - Item Slot 3
Items $0797 byte Player 4 - Item Slot 4
Items $0798 byte Player 4 - Item Slot 5
Items $0799 byte Player 4 - Item Slot 6
Items $079a byte Player 4 - Item Slot 7
Items $079b byte Player 4 - Item Slot 8
Stats $079c - $079e long Player 1 - Wizard Battle Magic
Stats $079f byte Player 1 - Wizard Field Magic
Stats $07a0 - $07a2 long Player 1 - Pilgram Battle Magic
Stats $07a3 byte Player 1 - Pilgram Field Magic
Stats $07a4 - $07a6 long Player 2 - Wizard Battle Magic
Stats $07a7 byte Player 2 - Wizard Field Magic
Stats $07a8 - $07aa long Player 2 - Pilgram Battle Magic
Stats $07ab byte Player 2 - Pilgram Field Magic
Stats $07ac - $07ae long Player 3 - Wizard Battle Magic
Stats $07af byte Player 3 - Wizard Field Magic
Stats $07b0 - $07b2 long Player 3 - Pilgram Battle Magic
Stats $07b3 byte Player 3 - Pilgram Field Magic
Stats $07b4 - $07b6 long Player 4 - Wizard Battle Magic
Stats $07b7 byte Player 4 - Wizard Field Magic
Stats $07b8 - $07ba long Player 4 - Pilgram Battle Magic
Stats $07bb byte Player 4 - Pilgram Field Magic
Stats $07bc - $07be long Gold
Stats $07bf - $07c0 word Num Characters Registered
Stats $07c1 byte Player 1 - Character in Storage num
Stats $07c2 byte Player 2 - Character in Storage num
Stats $07c3 byte Player 3 - Character in Storage num
Stats $07c4 byte Player 4 - Character in Storage num
Unused $07c5 - $07ff 59 bytes Unused

Additional Information

Links

Useful information:

Party

Gold pieces

Character Stats

[TODO: Make sure Luck and Vitality aren't swapped, seen them at both addresses]

Types

Character Classes / Gender

This is located at $0718 + character number.

Mask Value Description
Class %00000111 $00 Hero
$01 Wizard
$02 Pilgrim
$03 Sage
$04 Soldier
$05 Merchant
$06 Fighter
$07 Goof-off
Gender %00001000 $00 Male
$08 Female
Unused %00010000 ... Unused
%00100000 ... Unused
%01000000 ... Unused
%10000000 ... Unused

Return Destinations

This is located at 0x750 + character number * 3.

The 3 bytes of Return Destinations store one bit per location visited. The upper 4 bits of the third byte are not used.

Bit Mask Destination
Byte 0 %00000001 $01 Aliahan
%00000010 $02 Reeve
%00000100 $04 Romally
%00001000 $08 Kanave
%00010000 $10 Noaniels
%00100000 $20 Assaram
%01000000 $40 Isis
%10000000 $80 Portoga
Byte 1 %00000001 $01 Baharata
%00000010 $02 Dhama
%00000100 $04 Lancel
%00001000 $08 Jipang
%00010000 $10 Eginbear
%00100000 $20 Samano
%01000000 $40 Soo
%10000000 $80 Tantegel
Byte 2 %00000001 $01 Hauksness
%00000010 $02 Cantlin
%00000100 $04 Kol
%00001000 $08 Rimuldar
%00010000 $10 Unused
%00100000 $20
%01000000 $40
%10000000 $80

Spell Flags List

First character's magic list begins at 0x79C. Add 8 * ally number for other characters.

  • Byte 0-2: Wizard Spells (in battle)
  • Byte 3: Wizard Spells (field)
  • Byte 4-6: Pilgrim Spells (in battle)
  • Byte 7: Pilgrim Spells (field)

Note: Hero uses location of Wizard spells.

Note: The Index column refers to the spell's value in the List of Spells

Class Type Bit Index Spell
Byte 0 Wizard Battle %00000001 $00 Blaze
%00000010 $2d Upper
%00000100 $09 IceBolt
%00001000 $2e Increase
%00010000 $03 Firebal
%00100000 $26 Return
%01000000 $06 Bang
%10000000 $18 Slow
Byte 1 Wizard Battle %00000001 $01 Blazemore
%00000010 $17 RobMagic
%00000100 $0a SnowBlast
%00001000 $0c IceSpears
%00010000 $04 Firebane
%00100000 $32 Bikill
%01000000 $07 Boom
%10000000 $30 Bounce
Byte 2 Wizard Battle %00000001 $02 Blazemost
%00000010 $27 Chaos
%00000100 $0b Snowstorm
%00001000 $29 BeDragon
%00010000 $05 Firevolt
%00100000 $28 Transform
%01000000 $08 Explodet
%10000000 $33 Chance
Byte 3 Wizard Field %00000001 $3b Outside
%00000010 $26 Return
%00000100 $3a X-Ray
%00001000 $3d StepGuard
%00010000 $38 Day-Night
%00100000 $36 CurseOff
%01000000 $3c Invisible
%10000000 $39 Open
Byte 4 Pilgrim Battle %00000001 $2b Sap
%00000010 $1a Heal
%00000100 $15 Expel
%00001000 $34 Antidote
%00010000 $0d Infernos
%00100000 $19 SpeedUp
%01000000 $25 Surround
%10000000 $22 Sleep
Byte 5 Pilgrim Battle %00000001 $2c Defence
%00000010 $1b Healmore
%00000100 $12 Beat
%00001000 $35 NumbOff
%00010000 $0e Infermore
%00100000 $24 StopSpell
%01000000 $16 Limbo
%10000000 $23 Awake
Byte 6 Pilgrim Battle %00000001 $31 Barrier
%00000010 $1c Healall
%00000100 $13 Defeat
%00001000 $1e Healus
%00010000 $0f Infermost
%00100000 $20 Vivify
%01000000 $14 Sacrifice
%10000000 $21 Revive
Byte 7 Pilgrim Field %00000001 $1a Heal
%00000010 $34 Antidote
%00000100 $1b Healmore
%00001000 $35 NumbOff
%00010000 $20 Vivify
%00100000 $1c Healall
%01000000 $1e Healus
%10000000 $21 Revive

Related