Dragon Ball Z: Buu's Fury/ROM map

From Data Crystal
< Dragon Ball Z: Buu's Fury
Revision as of 14:26, 24 January 2024 by Hawk (talk | contribs) (→‎Strings)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Chip tiny.png The following article is a ROM map for Dragon Ball Z: Buu's Fury.

Routines

   0x0800419c - Show logos
   0x0803d7fa - Show main screen

NPCs

The NPC struct

   struct NPC {
       int*	header;         // The same for all NPCs - 0x08017da3
       int*	event;	        // Can be a nullptr for normal NPCs
       short	x_pos;
       short	y_pos;
       int*	dialogue;	// Pointer to the entire dialogue flow
       int*	walking_path;
   };

West City

   Offset    Name
   080784b4  Vegeta
   080784b8  Boy
   080784bc  Steak Guy
   080784c0  UFO Guy
   080784c4  Air Bandits Guy
   080784c8  Bench Lady
   080784cc  Crystal Man
   080784d0  Building Cop
   080784d4  Park Cop
   080784d8  Entrance to Capsule Corp Cop

Map Codes

Maps in the game are referenced by a 32 bit code. Where the most significant byte is the direction in which the character has to be in, the others it seems are the code for the area. To test this, you can change the map link from Orange Star High School to any place on this list using the code 08271280:Value (remove spaces in the code). There are around 250 locations, and you can find them in the ROM by searching for 6d 77 00 08 and counting 8 bytes from that.

   Code       Area Name
   0001 00 00 Story 1
   0002 00 00 Story 2
   0003 00 00 Story 3
   0004 00 00 Story 4
   0005 00 00 Story 5
   0006 00 00 Story 6
   0007 00 00 Story 7
   0008 00 00 Bulma's Airship
   0009 00 00 Story 8
   000A 00 00 Story 9
   000B 00 00 ERROR
   000C 00 00 Story 10
   000D 00 00 ERROR
   000E 00 00 ERROR
   000F 00 00 Bossfight - Majin Buu vs. Gotenks
   0010 00 00 Cutscene - Hercule finds Buu's house
   0011 00 00 Inside of Buu's house
   0012 00 00 Story 11
   0013 00 00 Story 12 - Namek
   0014 00 00 Story 13
   0015 00 00 Boosfight - Majin Buu vs. SSJ3 Goku
   0016 00 00 Story 14
   0017 00 00 ERROR
   0018 00 00 ERROR
   0001 01 00 Snakeway
   0002 01 00 Snakeway
   0003 01 00 Yemma's Office
   0004 01 00 Yemma's Office (planes)
   0005 01 00 Snakeway
   0006 01 00 ERROR
   0007 01 00 ERROR
   0008 01 00 ERROR
   0009 01 00 ERROR
   000A 01 00 Grand Kai's Mansion
   000B 01 00 Grand Kai's Planet
   000C 01 00 Grand Kai's Planet (Wilderness)
   000D 01 00 Grand Kai's Planet (Wilderness)
   000E 01 00 Grand Kai's Planet (Wilderness)
   000F 01 00 Grand Kai's Planet (Wilderness)
   0010 01 00 Cave of the Ancients
   0011 01 00 Cave of the Ancients
   0012 01 00 ERROR
   0013 01 00 ERROR
   0014 01 00 Other World Stadium
   0001 02 00 Goku's house (kitchen)
   0002 02 00 Goku's house
   0003 02 00 Goku's house
   0004 02 00 Gohan and Goten's Room
   0005 02 00 Chi Chi's Room
   0006 02 00 ERROR
   0007 02 00 ERROR
   0008 02 00 East District 439 (Goku's house)
   0009 02 02 East District 439 (Under Goku's house)
   0005 03 00 Hercule's Mansion
   000A 03 00 Orange Star High School
   0011 03 00 Inside the Musuka Circus
   0014 03 00 Hercule Cafe
   0101 07 00 Papaya Island
   0110 08 01 Southwest Forest
   0013 08 02 Inside Babidi's Ship
   0015 08 01 Inside Babidi's Ship (Different place)
   0016 08 02 Inside Babidi's Ship (Different place)
   0018 08 03 Inside Babidi's Ship (Different place)
   001a 08 00 Inside Babidi's Ship (Different place)
   010B 09 00 Thieves Den
   0002 0B 00 Diablo Desert
   0007 0B 02 Diablo Desert (different place)
   000A 0B 03 Diablo Desert (different place)
   000D 0B 01 Diablo Desert (beyond the gate)
   0001 0C 02 Airship
   0003 0D 01 Fukurou Forest
   0103 0E 01 Kyodai Pyramid
   0118 0E 00 Totenhotep's Chamber
   0102 0F 01 Northern Wildreness
   0105 12 03 HFIL
   0000 14 00 Barren Wasteland
   0002 15 00 Buu's Stomach
   0012 15 00 Buu's Intestines
   0001 16 00 Heaven

Character Codes

Hmmm...
To do:
Find each value's offset from 086b6bdc

Address = Starting from 086b6bdc, sprite addresses are listed back to back. This is the address of the sprite.

Value = This is the value at that address.

The sprites are organized alphabetically in the ROM, and you can easily check which is which by setting 0202D0B8:Value which will change the sprite of the active character while in West City. Checking the scouter will reveal the name of the character most of the time, however since in some cases the names are not shown correctly or not shown at all, I took educated guesses in naming some of these to keep with the alphabetical order. For example, 086a95f4 is a dog (D), but it's under Babidi in the list (B), and it kinda looks like Bee, so I named him Bee. For those I'm not sure at all what they're called. I did not provide a name, only a description.

   Value    Address  Name
   086a89d0          Airship 1
   086a8a2c          Airship 2
   086a8a88          Alien Announcer
   086a8ae4          ------ (Western Supreme Kai)
   086a8b60          ------ (Northern Supreme Kai)
   086a8bdc          ------ (Southern Supreme Kai)
   086a8c58 086b6bf4 Android 18
   086a8db8          Annihilator
   086a8e58          Announcer
   086a8ee0          ------ (Lab Worker)
   086a8f3c          ------ (Lab Worker)
   086a8f98          ------ (Lab Worker)
   086a8ff4          ------ (Lab Worker)
   086a9050          Arqua
   086a90cc          Arqua
   086a9248 086B6C18 Assassin
   086a93e8          Atomizer
   086a9490          Baba
   086a94ec          Babidi
   086a9598          Babidi (tiny)
   086a95f4          Bee (the dog)
   086a9690          Airship Warlord
   086a9730          Blister
   086a97ac          Blood Cell
   086a9828          Bomber
   086a99c8          Bones
   086a9a68          Boy 1 ("Human")
   086a9af0          Boy 2 ("Human")
   086a9b78          Broly
   086a9d24          Bruiser
   086a9da0          Bubbles
   086a9dfc          Bulma
   086a9e84          Buu (Evil)
   086a9f24          Buu (Majin)
   086a9fcc          Buu (Soul)
   086aa06c          Buu (Goo)
   086aa10c          Buu (Goo)
   086aa1ac          Buu (Kid)
   086aa24c          Buu (Trapped)
   086aa2f0          Buu (Super)
   086aa4a0          Buu (Super)
   086aa550          Buu (Super - Gotenks)
   086aa5f0          Buu (Super - Gohan)
   086aa7a0          Buu (Super - Gohan)
   086aa850          Candy (Sweets)
   086aa8a8          Candy (Chocolate)
   086aa900          Candy (Cake)
   086aa958          Candy (Ball)
   086aa9b0          Caterpy
   086aaa2c          Caterpy
   086aaaa8          Chapuchai
   086aab24          Chapuchai
   086aaba0          Chapuchai
   086aac1c          Chapuchai
   086aac98          Chapuchai
   086aad14          Chiaotzu
   086aad70          Chi-Chi
   086aadf8          Chobi
   086aaf8c          ------ (Pilaf's Guardian?)
   086ab008 086b6cc8 Cop 
   086ab090 086b6ccc Criminal
   086ab10c 086b6cd0 Cursed One
   086ab1ac 086b6cd4 Cyborg
   086ab24c 086b6cd8 Dabura
   086ab2fc          Dabura (tiny)
   086ab358 086b6ce0 Daikaioh
   086ab4d4 086b6ce4 Death Machine
   086ab574 086b6ce8 Dende
   086ab614          Destroyer
   086ab6b4          Destroyer
   086ab754          Dr. Brief
   086ab7dc          East Kai
   086ab838          Elder Kai
   086ab8d4          Elder Kai
   086aba70          Elite Majin Fighter
   086abbec          Elite Majin Soldier
   086abd90          Elite Shield Soldier
   086abe34          Enzyme
   086abe90          Erasa
   086abf18          ------ (Earth? Rock?)
   086abf74          ------ (Earth? Rock? 2)
   086abfd0          Froug
   086ac04c          Froug
   086ac1c8          ------ (Soldier)
   086ac324          Ghost Eyes
   086ac3c4          Ghost Eyes
   086ac564          Ghost
   086ac604          Ghost
   086ac6a4          ------ (Dabora - Kind)
   086ac72c          ------ (Dabora - Kind)
   086ac8b4          Ghoul
   086ac930          Girl ("Human")
   086ac9b8          Gogeta
   086aca5c          Gogeta
   086acb00          Gogeta (Fat - Veku)
   086acb7c          Gogeta (Skinny)
   086acbf8          Gohan (Black)
   086acc98          Gohan (School)
   086acd40          Gohan (Kai)
   086acde0          Gohan (Kai w/ sword)
   086ace80          Gohan (Mystic)
   086acf24          Gohan (Saiyaman w/ helmet)
   086acfcc          Gohan (Saiyaman w/o helmet)
   086ad078          Gohan (School SSJ)
   086ad120          Gohan (Saiyaman SSJ)
   086ad1cc 086b6d80 Goku
   086ad278          Goku (GT)
   086ad30c          Goku
   086ad3b8          Goku SSJ
   086ad464          Goku SSJ
   086ad510          Goku SSJ3
   086ad5b4          Goku SSJ3
   086ad758          Goon
   086ad7d4          Goten
   086ad880          Goten SSJ
   086ad92c          Goten (Adult)
   086ad988          Gotenks
   086ada30          Gotenks (Fat)
   086adaac          Gotenks (Skinny)
   086adb28          Gotenks SSJ
   086adbcc          Gotenks SSJ3
   086adc70          Grand Kai
   086adccc          Grand Kai (Different Clothes)
   086ade54          Grand Mechandroid
   086adffc          Grand Mechandroid (Ball)
   086ae0a4          Gregory
   086ae200          Grenaider
   086ae2a0          Gunman
   086ae340          Hercule
   086ae3e0          Hercule City Mayor
   086ae568          Hessain
   086ae708          Hooligan
   086ae884          Hyper Cyborg
   086ae924          Idasa
   086ae9c0          Idasa's Mother
   086aeb48          Ion Cannon
   086aebf0          Janemba
   086aec4c          Janemba (Left hand)
   086aecec          Janemba (Right hand)
   086aed8c          Janemba Body
   086aee30          Janemba Hand (scouter info)
   086aeed4          Janemba Hand (scouter info)
   086aef78          Janemba Head
   086af018          Janemba (Mini)
   086af0bc          Janemba (Super)
   086af164          Jewl
   086af2c0          Juggernaut
   086af360          Kamikaze Attack (Gotenks ghost)
   086af400          Kibito
   086af494          Kibitoshin
   086af51c          Killa
   086af578          King Kai
   086af600          King Kai
   086af688          King Yemma
   086af710          Knight Destroyer
   086af78c          Korin
   086af7e4          Krillin
   086af884          Laser Turret
   086afa2c          Lich
   086afacc          Lightning
   086afc28          Living Dead
   086afda4          Mad Bomber
   086aff44          Elite Shield Soldier
   086b00e8          Majin Fighter
   086b0164          Majin Fighter
   086b01e0          Majin Shield Soldier (w/ shield)
   086b0284          Majin Shield Soldier (w/ shield)
   086b0328          Majin Shield Soldier (w/o shield)
   086b04cc          Super Shield Soldier
   086b0570          Man 1 ("Human")
   086b05f8          Man 2 ("Human")
   086b0680          Man 3 ("Human")
   086b0708          ------ (Dino)
   086b0770          ------ (Dino)
   086b08d8          Marauder
   086b0978          Marron
   086b0a00          Master Roshi
   086b0a88          Mechandroid
   086b0b30          Mechandroid (Ball)
   086b0cd8          Mega Cyborg
   086b0d78          Mercenary
   086b0f18          Metal Hulk
   086b0f94          Monk
   086b101c          Mr. Popo
   086b10a4          Mrs. Brief
   086b122c          Mummy
   086b12cc          Mummy 2
   086b136c          Moori
   086b13c8          Namekian
   086b1520          Ninja
   086b15c4          Ninja
   086b1768          Ninja Boss
   086b190c          Nosferatu
   086b1aac          Nosferatu (Bat)
   086b1b28          Old Man ("Human")
   086b1bc8          Old Woman ("Human")
   086b1c50          Olibu
   086b1cd8          Olibu
   086b1d60          Oolong
   086b1de8          Fighter 1
   086b1e64          Fighter 1
   086b1fe0          Fighter 2
   086b205c          Fighter 2
   086b21d8          Fighter 3
   086b2254          Fighter 3
   086b23d0          Fighter 4
   086b244c          Fighter 4
   086b24c8          Ox King
   086b2524          Pan
   086b2580          Phantom Eyes
   086b2620          Phantom
   086b27c0          Pharoah
   086b2860          Piccolo
   086b2900          Pilaf
   086b29a0          Pikkon
   086b2a3c          Pikkon
   086b2ad8          Pintar
   086b2b34          ------ (Ship?)
   086b2c90          Poltergeist Eyes
   086b2e30          Poltergeist
   086b2fd0          Power Mechandroid
   086b3178          Power Mechandroid (Ball)
   086b3220          Priest ("Village Priest")
   086b32a8          Puar
   086b3330          Pui Pui
   086b34ac 086b6f60 Punk ("Criminal")
   086b3528          Ringmaster ("Musaka")
   086b3684          Ronin
   086b3724          Samurai
   086b37c4          Scientist
   086b3920          Shadow Colossus
   086b3a9c          Shadow Warrior
   086b3b40          Sharpner
   086b3cc8          Shinobi
   086b3e6c          Shogun
   086b3f0c          Skeleton
   086b3fac          ------ (Guy carrying a bazooka)
   086b414c          Sniper
   086b41ec          Soldier ("Human")
   086b4248          Soul
   086b42a4          South Kai
   086b4300          ------ (Water)
   086b4358          Spopovich
   086b43fc          Submarine
   086b4558          Super Bio Mech
   086b46f8          Super Majin Fighter
   086b4874          Super Majin Soldier
   086b4a18          Super Shield Soldier
   086b4abc          Supreme Kai
   086b4b58          Tank
   086b4bf8          Teen ("Human")
   086b4c98          Teen 2 ("Human")
   086b4d20          Teen 3 ("Human")
   086b4da8          Thug
   086b4e24          Tien
   086b4eac          ------ (Flame)
   086b4f04          ------ (Flame)
   086b4f5c          ------ (Flame)
   086b4fb4          ------ (Flame)
   086b500c          Trunks
   086b50b8          Trunks SSJ
   086b5164          Trunks (Adult)
   086b52c0          Ultra Bio Mech
   086b5360          Uub
   086b54fc          Vampire
   086b559c          Vampire
   086b573c          Vampire (Bat)
   086b57b8          Vampire (Bat)
   086b5834          ------ (?????)
   086b58d4          Vegita
   086b5980          Vegita
   086b5a2c          Vegita (Retired)
   086b5a88          Vegita SSJ
   086b5b34          Vegita SSJ
   086b5ce0          Vegito
   086b5d84          Vegito
   086b5e28          Videl (Adult)
   086b5eb0          Videl
   086b604c          Vlad
   086b61ec          Vlad (Bat)
   086b6268          Volleyball
   086b63c4          War Machine
   086b6464          West Kai
   086b64ec          Woman 1 ("Human")
   086b6574          Woman 2
   086b65fc          Woman 3
   086b6684          Worm Head
   086b66e0          Worm Body
   086b673c          Worm Tail
   086b6798          Yajirobe
   086b67f0          Yakon
   086b6898          Yakon (Mini)
   086b6928          Yamcha
   086b69b0          Yamu
   086b6a50          Yemma's Assistant
   086b6ad8          Yemma's Assistant 2
   086b6b60          Zombie

Sprite Animations

Goku

   address  value
   086ad220 0850c1dc    Goku Stance	
   086ad224 0850cf74    Goku Walk	
   086ad228 0850dd14    Goku Run	
   086ad22c 0850e7dc    Goku Shoot	
   086ad230 0850f68c    Goku Hit1
   086ad234 085104e8    Goku Hit2
   086ad238 0851131c    Goku Hit3
   086ad23c 085116a0    Goku Defence
   086ad240 08511a98    Goku pre-Rest
   086ad244 08512564    Goku Got Hit
   086ad248 08512cd8    Goku Rest
   086ad250 085133b4    Goku Unknown
   086ad254 08513668    Goku Pickup
   086ad258 085140a4    Goku Takeoff
   086ad25c 085149c8    Goku Flying
   086ad260 0851506c    Goku Unknown
   086ad264 08515534    Goku Dead
   086ad268 08515f5c    Goku Kamehameha
   086ad26c 085166ac    Goku Teleport
   086ad274 0851754c    Goku Fusion

Strings

Offset Pointer Comment
0x7b5b64 0879bf2c Pointer to compressed text 1.
0x7b5b68 087a04f0 Pointer to compressed text 2.
0x7b5b6c 087a46c8 Pointer to compressed text 3.
0x7b5b70 087a8ad8 Pointer to compressed text 4.
0x7b5b74 087ad118 Pointer to compressed text 5.
0x7b5b78 087b1558 Pointer to compressed text 6.
0x7b5b7c 087b5aa0 Pointer to compressed text 7.