SSBM/Disc Files

From SuperCombo Wiki

This is a direct conversion of this Google Document. It needs to be cleaned up.


This is a page dedicated to providing descriptions for the various Files within the SSBM Disc, called the SSBM ISO. There are also tables of Memory Addresses/Hexidecimal References for various Pieces of Data in the game.

Note: the files and naming scheme used throughout this document are based on the tool wit. The equivalents for output from gcr are put Angled Brackets < > in where applicable.

sys <&&systemdata>

  • main.dol - main executable, where most of the code and game logic resides
  • boot.bin - GAMEID (GALE01), name, and description are stored here
    • also runtime offsets and sizes of important files like main.dol and fst.bin, which is important to know if you significantly change the size of either of those
  • bi2.bin - secondary boot, not much to say.
  • apploader.img - nintendo official apploader, nothing (that I can think of) has come out of hacking it
  • fst.bin - file system table, table of all the files in /files, and their names
    • also holds offsets and sizes, so if you significantly change a file size, it has to be represented in the fst.bin

Some more info can be found at YAGCD:Ch13 DVD Structure

Most gamecube iso rebuilders will fix fst.bin and boot.bin automagically, and also allow you to change GAMEID, name and description.

files

Filename Description Comment
Ty*.dat Toy File list them at your discretion
Contains trophies but it also
contains items in an unsorted manner (such as TyFood)
Mn*.dat Menu file (ExtAll) all menus?
(MaAll) Main Menu
(Namedef) name creation
(SlChr) Select Character, CSS
(SlMap) Select Map, SSS
Mv*.mth “Movie” file “Congratulations”
Pl*.dat Player file Character information:
(Bo) Boy; Male Wireframe
(Ca) C.Falcon
(Ch) Crazy Hand
(Cl) CLink, Young Link
(Co) Common
(Dk) Donkey Kong
(Dr) Dr.Mario
(Fc) Falco
(Fe) Fire Emblem, Roy
(Fx) Fox
(Gk) GigaKoopa, GigaBowser,
(Gl) Girl; Female Wireframe
(Gn) Ganondorf
(Gw) Game n Watch
(Kb) Kirby
(Kp) Koopa, Bowser
(Lg) Luigi
(Lk) Link
(Mh) Master Hand
(Mr) Mario?
(Ms) Mars?, Marth
(Mt) Mewtwo
(Nn) Nana, Ice Climbers
(Ns) Ness
(Pc) Pichu
(Pe) Peach
(Pk) Pikachu
(Pp) Popo, Ice Climbers
(Pr) Purin, JigglyPuff
(Sb) SandBag
(Sk) Sheik
(Ss) Samus
(Sh)
(Ys) Yoshi
(Zd) Zelda
Pl*{Aq,Bk,Bu,Gr,Gy,La,Nr,Or,Pi,Re,Wh,Ye}.dat Costume specific player file (otherwise, the color) (Aq) Aqua
(Bk) Black
(Bu) Blue
(Gr) Green
(Gy) Gray
(La) Lavender
(Nr) Neutral
(Or) Orange
(Pi) Pink
(Re) Red
(Wh) White
(Ye) Yellow
Pl*AJ.dat Animation Joint file
Gr*.dat “Ground(?)” stage file (GrBB) Big Blue
(GrCn) Corneria
(GrCs) Princess Peach's Castle
(GrEF1) Goomba Trophy Stage
(GrEF2) Entei Trophy Stage
(GrEF3) Mask Trophy Stage
(GrFs) Fourside
(GrFz) Flat Zone
(GrGb) Great Bay (Termina)
(GrGd) Garden (Kongo Jungle)
(GrGr) Green Greens
(GrHe) Heal (All-Star)
(GrHr) Homerun Contest
(GrI1) Mushroom Kingdom
(GrI2) Mushroom Kingdom II
(GrIm) Icicle Mountain
(GrIz) Izumi, Fountain of Dreams
(GrKg) Kongo Jungle
(GrKr) Kraid, Brinstar Depths
(GrMc) Mute City
(GrNBa) Battlefield
(GrNBr) F-Zero adventure mode stage
(GrNFg) Figure Get, Falling trophy stage
(GrNKr) Mushroom Kingdom adventure mode stage
(GrNLa) Final Destination
(GrNPo) Pushon?
(GrNSr) Shrine Route, Hyrule Castle chasm, adv. mode stage
(GrNZr) Zebes Route, Brinstar adv mode
(GrOk) Kongo Jungle N64
(GrOp) Dream Land N64
(GrOt) Onett
(GrOy) Yoshi's Story N64
(GrPs) Pokemon Stadium
(GrPs1) Pokemon Stadium, Fire
(GrPs2) Pokemon Stadium, Grass
(GrPs3) Pokemon Stadium, Water
(GrPs4) Pokemon Stadium, Rock
(GrPu) Pura, Poke Floats
(GrRc) Rainbow Cruise
(GrSh) Shrine, Hyrule Temple
(GrSt) Yoshi's Story
(GrTe) "TEST"
(GrVe) Venom
(GrYt) Yoshi's Island
(GrZe) Brinstar, Planet Zebes
GrT*.dat Target test stages see Pl* for character prefixes.
Gm*.dat, Gm*.thp Game? Scene data, videos Don’t know about .dat, but there are video files for the different single player modes
(Kumite) multi-man melee
(Gover) Game Over screen
(Pause) Pause interface
(TtAll).{ukd,usd} Contains the Smash title
GmRstM*.dat Demo Result Motion one for every playable character
Ef*.dat “Effect” data Lot of projectiles, and kirby stuff
(CoData) Common effects such as smoke & dust
If*.dat Interface? no idea (All) Contains the damage percent images and character icons
(HrRecord) Home Run Record, (Prize)
Ir*.dat related to demo?
Lb*.dat Library data (Ad) lbAudioLoadData
(Bf) lbBgFlashColAnimData
(McGame) memory card game data
(McSnap) memory card
(Rb) lbRumbleData
(Rf) lbReferenceData
Nt*.dat
Sd*.dat Text Data (SlChr) holds the" Random Stage Select" stage names
Vi*.dat “Visual” ”visual...” I think it might be the little videos that play when you leave the main menu on too long, or it’s for the tutorial
opening.bnr little image and info Shows in the gamecube/wii/dolphin menu
usa.ini empty file specific to US NTSC?
DbCo.dat Debug Common? ”dbLoadCommonData”
ItCo.dat Item Common “itmCommonFFlower”
PdPm.dat Player Data Player Manager? ”plLoadCommonData”
SmSt.dat Sound Manager? Related to sound FX;
”smSoundTestLoadData”
TmBox.dat Tournament Box ”tournament_box[2,3,4]_array”

files/audio

lots of audio files

Filename Song Title/Stage
1p_qk.hps Healing Room Theme (all star mode)
akaneia.hps Fire Emblem Theme (alt theme on Temple)
balloon.hps Fighter Theme (alt theme on Icicle Mountain)
bigblue.hps Big Blue
castle.hps Peach’s Castle Theme
continue.hps Continue? clip
corneria.hps Corneria
docmari.hps Dr.Mario’s theme
ending.hps Plays in the short cutscene after you complete a 1-Player mode
famidemo.hps Unknown (related to the 15-minute special movie?)
ff_1p01.hps Classic Mode Stage Complete
ff_1p02.hps Classic Mode Stage Complete
ff_bad.hps Unused “success” theme
ff_good.hps Unused “success” theme
ff_<dood>.dhps Character Fanfares
ff_step{1,2,3}.hps Unused fanfares
flatzone.hps Flat Zone
fourside.hps Fourside
gameover.hps Game Over jingle
garden.hps Kongo Jungle Melee
greatbay.hps Great Bay
greens.hps Green Greens
howto.hps and howto_s.hps How to Play themes. One plays on the title screen after idling and one plays when How to Play is selected in the data files.
hyaku.hps Multi-Man Melee 1 theme (also alt on Battlefield)
hyaku2.hps Multi-Man Melee 2 theme (also alt on Final Destination)
icemt.hps Ice Mountain
inis1_01.hps Mushroom Kingdom I
inis2_01.hps Mushroom Kingdom II
inis1_02.hps and inis2_02.hps These tracks play on Kingdom I and II when there is either 30 seconds of time left or a player is on their last stock.
intro_es.hps Classic Mode Intro jingle
intro_nm.hps Adventure Mode Intro jingle
item_h.hps Hammer music (only used in sound test)
item_s.hps Starman music (only used in sound test)
izumi.hps Fountain of Dreams
kongo.hps Jungle Japes
kraid.hps Brinstar Depths
menu01.hps and menu3.hps The Menu music. menu01 is the main one.
menu02.hps Trophy Collector (and trophy viewing?) stage theme. Unsure why it’s called menu02 (possibly links to the fact that this theme is a menu theme in smash 4) Edit: Alternate Menu theme that plays randomly when playing
mrider.hps Mach Rider theme (alt on Big Blue)
mutecity.hps Mute City
old_dk.hps Kongo Jungle 64
old_kb.hps Dream Land 64
old_ys.hps Yoshi’s Island 64
onetto.hps Onett
onetto2.hps Mother 2 Theme (alt on Onett)
opening.hps The audio that goes with MvOpen.mth (the game’s intro sequence)
pokesta.hps Battle Theme (alt on Pokemon Stadium)
pstadium.hps Pokemon Stadium
pura.hps Poke Floats
rcruise.hps Rainbow Cruise
s_info{1,2,3}.hps and s_new{1,2}.hps An achievement! Which one plays depends on what kind of achievment (trophy, character, other)
s_newcom.hps Challenger Approaching jingle
s_select.hps Unused. This is a copy of item_h.hps
saria.hps Saria’s Theme (alt on Great Bay)
shrine.hps Temple
siren.hps “Warning Siren” Plays on the second stage of Brinstar (adventure mode)
smari3.hps Super Mario Bros 3 (alt on Yoshi’s Island Melee)
sp_end.hps Final Destination
sp_giga.hps Giga Bowser theme (adventure mode - Final Destination and event 51)
sp_metal.hps Metal Theme (adventure mode - Battlefield and classic stage 11)
sp_zako.hps Battlefield
swm_15min.hps Audio attributed to MvOmake15.mth (the Special Movie)2
target.hps Break the Targets theme.
venom.hps Venom
vl_*.hps Adventure mode audio. Mainly for cutscenes.
vs_hyou1.hps and vs_hyou2.hps Tournament Mode themes.
yorster.hps Yoshi’s Island Melee
ystory.hps Yoshi’s Story
zebes.hps Brinstar

files/audio/us

lots of localization files

Filename Description
nr_name.ssm Announcer voicing character names on character select screen.

SSBM (1.02) Data Sheet

These Tables are a conversion of This Google Sheet.

Global Addresses

pic Effect Comments
0x803B7C08 Classic mode continue coin requirements 0x00 - Very Easy (1 coin required)
0x803B7C0D lmode continue coin requirements Same as above.
0x803B7C11 All-Star mode continue coin requirements Same as above, but all five values in this offset are "0A".
0x803C12E0 START of Per Character Action State Table Indexed by Internal Character ID
0x803c14f0 Aerial Down B table
0x803C167C Per Character Neutral Special Action Initalization Table Indexed by Internal Character ID
0x803C2800 START of Shared Action State Function Table See Action State Reference
0x803D4A48 Game duration and pause on/off Loaded from DOL.See the "Modifying Default Settings" DOL mod section for information on the variable list: http://smashboards.com/threads/the-dol-mod-topic.326347/
0x803D4A50 Game duration and pause on/off 0x08010000 = 8 minutes, pause off. 0x08000100 = 8 minutes, pause on
0x803f0328 Ready to fight banner visiblity status
0x803f0aa8 Stamina Mode Narrarator Sound FX ID Other Special Melee Sound FX ID's are located around here
0x803F0E06 P1 Character select 0x00 - Team (0x00 = Red 0x01 = Blue 0x02 = Green)
0x803F0E08
0x803F0E2A P2 Character select 0x01 - Player Mode (0x00 = Human 0x01 = CPU 0x02 = Demo? 0x03 = Disabled) 8
0x803F0E2C P2 character select 4 Bytes - Example: Reading 4 bytes at address 0x803F0E08 returns 0x00010A0A
0x803F0E4E P3 Character select 0x02 - Costume ID
0x803c14f0 P3 character select Byte 2 is costume ID (goes from 0x00 to 0x03 or however many costumes a character has), so the example means player 1 has Fox's orange costume since 0x01 is the associated ID.
0x803F0E72 P4 Character select use computer visio
0x803F0E74 P4 character select Byte 3 and 4 indicate the character ID. Unsure if they're ever different. 0x00 is Dr. mario and 0x18 is Roy (Roster ordering). Therefore, the example means player 1 is Fox since 0x0A is Fox's ID.
0x803F14C4 Start of Item Action Function Table Indexed by Item ID. See Entity Data Offsets for info.
0x803F20E0 These all seem to be addresses within a function, rather than a pointer to the start of the function.
0x80432A28 Frame advance on/off 0x80000000 = on. Increment word by 1 to advance frame by frame. 00000000 = unpause
0x80432A2C Global speed modifier Defaults at 0xA4CB8. Cut it in half for double speed (0x5265C).
0x80452C68 START INGAME Camera Struct See Entity Data Offsets for notes
0x80453080 P1 Block 0x00 of P1's static Player Block data. Each player is 0xE90 apart (goes up to Player 6).
0x8045310E P1Stock
0x80453130 P1 character entity data pointer Refer to the Char Offset table. Each subsequent player's pointer is stored at 0xE90
0x80453F10 P2 Block
0x80453F9E P2Stock
0x80453FC0 P2 character entity data pointer
0x80454DA0 P3 Block
0x80454E2E P3Stock
0x80454E50 P3 character entity data pointer
0x80455C30 P4 Block
0x80455CBE P4Stock
0x80455CE0 P4 character entity data pointer
0x8045BF10 ??? See above for variable list.
0x8045BF28 Unlocked characters bitfield 0 = locked, 1 = unlocked. Characters are in order of their external values excluding starters, from Mr. Game & Watch in the LSB to Ganondorf in 10
0x8045BF2A Unlocked stages bitfield 0 = locked, 1 = unlocked. Stages are in a unique order
0x8045C370 Item Frequency, VS Mode (8-bit)
0x8045c384 Music/Sound volume slider last position? Doesn't actually affect the music/sound volume when changed, but if changed outside of sound menu the slider will appear at the newly inputted position upon next sound menu entry
0x8045D850 Start of Nametag Data
0x8046B6C4 Bomb Rain Timer If it is greater than 0x4B0, it rains bombs (likely num frames of current match).
0x8046B6C8 Game timer minutes/seconds left Ex. 000001E0 = 8 minutes (1E0=decimal 480[seconds] = 8 minutes)
0x8046B6CC Game timer counter (16-bit) Counts up every frame to subtract from timer. Write 0 to this every frame to freeze timer.
0x8046DB6D
0x8046DB6E Bomb Rain toggle/Is Sudden Death Change to anything greater than 00 to immediately start bomb rain during a match (has to be at least 20 seconds after match starts for bombs to drop)
0x8046DB80 Start of Current Match information @ +0x08 = Item Switch values
0x80479C5F P1 Previous Input Timer (8-bit) These appear to reset to 0 whenever an input is received.
0x80479C8F P2 Previous Input Timer (8-bit) counts up 1 every frame until another input is sent, or it hits 0x64 (100 frames). Also resets on menu transition - Absolome
0x80479CBF P3 Previous Input Timer (8-bit) These are spaced 0x30 apart
0x80479CEF P4 Previous Input Timer (8-bit)
0x80479D30 Scene controller 00 = Current major; 01 = Pending major; 02 = Previous major; 03 = Current minor 1.5
0x80479D60 Global frame timer
0x80479D68 Game pause on/off 0x10000000 = paused
0x80479D7C JJ Disable game functions from processing each frame. Each bit is a flag for a different function.
0x804807C8 Teams Mode flag (8-bit) 01 = on, 00 = off (free for all)
0x80480820 P1 Character Select? Uses External ID
0x8048082c Has Something to do with above address
0x8049E6C8 START of Current Stage Info
0x804A1FD8 In-game debug settings
0x804C1FAC Controller 1 Digital Data Bit Flags: xxxx xxxx UDLR UDLR xxxS YXBA xLRZ UDRL
0x804C1FB0 Controller 1 Digital Data (previous frame) Nibbles: [0] ? [1] ? [2]C-Stick [3] Control Stick [4] Start Button [5] Right-Side Buttons [6]Top-of-Controller Buttons [7] D-Pad
0x804C1FC4 Words: [0] Control Stick X [1] Control Stick Y [2] C-Stick X [3] C-Stick Y
0x804C1FC8 Bytes: [0] Left Shoulder [1] Right Shoulder
0x804C1FCC Controller 1 Analog Data
0x804D36A0 Hitbox color
0x804D36A4 Grab box color
0x804D36A8 Gecko Code ??
0x804D36AC Hurtbox color
0x804D36B0
0x804D36B4 Invincible hurtbox color
0x804D36B8
0x804D36BC Intangible hurtbox color
0x804D36C0
0x804D36C4 Shield collision bubble color
0x804D36C8
0x804D36CC Reflector collision bubble color
0x804D36D0
0x804D36D4
0x804D36D8
0x804D36DC Detection box color (i.e. Ganondorf/Falcon side-B)
0x804D36E0
0x804D36E4
0x804D36E8
0x804D36EC
0x804D36F0
0x804D36F4
0x804D36F8
0x804D36FC last color table entry
0x804D4A08 Debug Level (32-bit) 0 = Master, 1 = No-Debug-Rom, 2 = Debug-Develop, 3 = Debug-Rom, 4 = Develop
0x804D5F90 Random seed Changes every frame and is affected by player actions. For ALL random events.
0x804d6554 Pointer to PICo.dat NOTE: This does not point to the entire PICo.dat file. Instead it only points first offset located in the PICo Offsets sheet
0x804D6554 Pointer to common attributes table from PlCo.dat
0x804D6730 KO star count (8-bit per player) =p1p2p3p4
0x804d6ca4 Frames before inputs are taken on SSS Byte
0x804D6CAD Stage select (16-bit) Indicates the stage selection on the stage select screen.
0x804d6cf2 Frames before inputs are taken on CSS Byte
0x804D6D58 HUD toggle Toggle for displaying the game timer, player's percents, stock icons, etc. 00=ON, 01=OFF
0x804D7420 Global Power-on Count Increments by 1 every frame. Never resets.
0x804D8278 Editing does something weird to animation (taken from AR code)
0x804D9250 Fox/Falco horizontal momentum from shooting laser Default is zero. Changing this value was very unstable.
0x804D9254 Fox/Falco Laser offsets Fox - vertical offset of entire laser. Falco - z-axis offset of laser ring graphic effect
0x804D9258 Fox/Falco horizontal laser offset Negative = shoots from behind them
0x804D9274 Fox/Falco Gun Size Multiplier
0x804D9278 Fox/Falco vertical momentum during Up-B Default is zero. Making it too high/negative will affect being able to go in angles (above 1 or below -1?)
0x804D927C Fox/Falco Up-B charge animation speed multiplier Default is 3f800000 = 1. Increase to make faster. Making it too fast will cause freezes.
0x804D9280 Fox/Falco angle of pointed body while traveling in Up-B animation
0x804D92D4 Fox/Falco side-b speed modifier
0x804DE328 UI Camera FOV [float] Changes the camera angle along with HUD and menu elements, but does not issue any black coloring on textures
0x804DE338
0x8065CC14 Current Menu? It updates to a different predictable value every time you switch menus, but it's written to by the OSAllocFromHeap function so setting a breakpoint here really doesn't work.
0x80BDC5F4 Global width multiplier 1.0 by default. Written by some code at 0x803427C4.
0x8111674C P4 Cursor X Position Floating point ranging from -35 to 26 (If set outside of the boundaries, moves to closest point within boundaries)
0x81116750 P4 Cursor Y Position Floating point ranging from -22 to 25 (If set outside of the boundaries, moves to closest point within boundaries)
0x811176EC P3 Cursor X Position Floating point ranging from -35 to 26 (If set outside of the boundaries, moves to closest point within boundaries)
0x811176F0 P3 Cursor Y Position Floating point ranging from -22 to 25 (If set outside of the boundaries, moves to closest point within boundaries)
0x8111826C P2 Cursor X Position Floating point ranging from -35 to 26 (If set outside of the boundaries, moves to closest point within boundaries)
0x81118270 P2 Cursor Y Position Floating point ranging from -22 to 25 (If set outside of the boundaries, moves to closest point within boundaries)
0x81118DEC P1 Cursor X Position Floating point ranging from -35 to 26 (If set outside of the boundaries, moves to closest point within boundaries)
0x81118DF0 P1 Cursor Y Position Floating point ranging from -22 to 25 (If set outside of the boundaries, moves to closest point within boundaries)
0x811ad6c0 Offset to RAM copy of character Plxx.dat file for P1? *usually*, this seems to change depending on the order that the .dat files were loaded into ram, so if p2 chooses a character first, then this will not be p1's .dat file.
Start of Regular Match Continue coin requirements 5 Bytes - Reads how many coins the player needs in-order to continue after losing in regular match mode.
0x01 - Easy (2 coins required)
0x02 - Normal (3 coins required)
0x03 - Hard (5 coins required)
0x04 - Very Hard (10 coins required)
00000000: Enable all. FFFFFFFF: Disable all.
5 Bytes
0x04 - Current hovered character ID (Goes up to 0x19 for the random slots left of pichu and right of roy)
0x80453080 START of Static Player Blocks See Char Data Offsets for information
0 if no entities out, otherwise it's the first in daisy chain if 1 or more is active.
This address changes when allocated, so you should refer to the pointer before accessing Character Data
Controller Data for Controllers 2 - 4 can be found by offsetting these values by a multiple of 0x44.
Starting from the LSB: Brinstar Depths, Poké Floats, Big Blue, Fourside, Mushroom Kingdom II, Flat Zone, Battlefield, Final Destination, Dream Land 64, Yoshi's Island 64, Kongo Jungle 64
Debug Mode Graphics Color Table all RGBA format


Function Addresses

T Title Single line or function? Description Registers
SFX & Audio
8038cff4 Play sound effect Function r3 = sfx ID; r4 = volume (00 - FF); r5 = ?? (usually 0x80); r6 = ?? (00-FF); r7 = echo parameter? (00-0F, usually 7 in-game)
80024030 Play menu sound effect Function Play a menu sound. Leads to the above function but takes more neatly-assorted menu sound IDs, and all the menus use this. r3 = sfx ID
8017435c Play menu sound: "Back" Function Plays the menu sound made when pressing B. No parameters/registers are required.
80174338 Play menu sound: "Forward" Function Plays the menu sound made when pressing A. No parameters/registers are required.
80174380 Play menu sound: "Select" Function Plays the menu sound made when pressing up/down. No parameters/registers are required.
80023f28 Play music Function r3 = HPS ID #
800236dc Stop music Function
8038bd6c Stop all sound effects Function
In-Game Mechanics
80034110 Get character data pointer Function Returns a pointer for the character data based on the given player number. r3 = player number
8006ad10 Main character loop Function Top-level character update; runs once per character per frame in game loop
80033c60 Set initial stock count Function Stores stock amount to a player at the beginning of the match. Runs once per player. r5 = stock count; r3 = player number
80033ce0 Lose a stock Function Loads the player's stock count, subtracts 1, then stores it unless if the player number zero-indexed is greater than 5 which freezes the game. r3 = player number
800693ac Load action state Function Load new action state for a character. Every action state has an init function before branching to this. f1 = starting frame, r3 = char data offset, r4 = action state ID,
8008cfac Init aerial action state (takes any state ID) Function All aerials use this init function. However, any state ID is accepted, making this very versatile for loading any normal state. r4 = state ID
8006b808 Action state IASA check Single line Branches to the IASA check of the current action state
8016c080 End stock game Single line Sets a register to 1 that causes "GAME!" to trigger. Noping this will prevent any win conditions from ending the match.
8016b558 Count players in match Function No input, walks the 6 player blocks and checks the "player type" output r3 = number of characters in match
80164840 Get character unlock status Function Checks if a given character is unlocked from its external ID input r3 = character external ID; output r3 = 0 if locked, 1 if unlocked
8019f6ec Game Over screen Function Ends the game if state ID in r0 is not "0".
8019fce0 Load game over state for Continue popup Single line Loads the state ID and checks which state it is. Noping this will remove it from the screen regardless if it is a Game Over or not.
8019fce4 Continue popup state ID check single line Checks which Game Over state it is for the continue popup. If the value is different from 0, then the game will delete the popup from the screen. r0 = Game Over state ID
801a09d4 Continue SFX and Music state ID check single line Checks which Game Over state it is for the audio to be played on the background. If the value in the register does not match 0, then they will remain silent. Noping this code will prevent the audio from playing with any state in the register after loading the screen.
801a0a10 Game Over coin check Function Checks how many coins the player has before ending the game. Coins lower than the required sets the register "r0" to 1 and then stores it. input r0 = required coins; r5 = coins the player has
801a0a84 Continue state Single line Sets the register to 0 if the coins is equal to or higher than the amount of required coins and then stores the state. output r0 = Game Over state ID
801a0a90 Game Over state Single line Sets the register to 1 if the coins is less than the amount of required coins and then stores the state. output r0 = Game Over state ID
8003722c Check and update Stale Moves Function Checks to see if a collision is part of a multi-hit move that has already hit, reads the stale move table, and updates the table accordinlgly
80268B18 SpawnEntity Function Allows you to spawn Entities of the provided struct pointer r3 Entity*
Random Number Generator
80380580 Function Main RNG function; takes the value from 0x804d5f90 and calculates a new value before storing it back input r3 = number of possible numbers (1-indexed) , output r3 = random number (0-indexed)
80380528 Function In-game RNG function; runs several times per frame to calculate random events for graphics such as dust clouds
803805bc
803804f8
801b2ba4 Set Classic Mode stage + character Function Picks a random index from a defined lookup table of stages and characters, then outputs its pointer. Called multiple times upon starting Classic Mode, presumably storing the entire run in one go "
input r3 = pointer to lookup table; r13 = pointer to pointer to player's character ID (read through function 8015cdc8); output r3 = pointer to index" (Not sure if this should be here or in in-game mechanics)
Menu Navigation Function
801a42f8 Function I don't know a lot about this function howerver, setting a breakpoint here and looping stepping through makes it easy to write codes like Boot to CSS etc. r3 = next screen
Stages
80164430 Get stage unlock status Function "Checks if a given stage is unlocked, from either its standard ID or a classic mode equivalent
" input r3 = stage ID; output r3 = 0 if locked, 1 if unlocked
GFX & Visual
802F3B04 Timer Milliseconds (visual) Single line This line of code sets what the timer's milliseconds slot displays (does not affect actual millisecond value, only the visual indicator in the timer) 0x00 - 0x63 (0-99), anything higher will just cut the upper numbers off Put the value you want to display in the milliseconds slot into r24. Originally moves the value from r5. - Savestate
Misc
80014BD0 Fetch data from ARAM? Function Copies a 32-byte-aligned chunk of data from ARAM into RAM. Used for loading individual animations from the full copy of PlxxAJ which sits in ARAM, probably among other uses. Calls the relevant lower level functions to do the actual memory copying "r3 = pointer to start of data block in ARAM
r4 = pointer to target location in RAM
r5 = size of data block
r6 = unknown, I've only seen it be 0
r7 = unknown, I've only seen it be 0
Directly before calling, r31 was set to hardcoded 804316c0. Relevant?"


Action State Reference

Move Table Struct
0x00 Animation State Loaded into 0x14 of the player data during Action State Change
0x04
0x07 Move Type Used ie. tracked as a 'jump' for scoring purposes
0x08 Flags 1 "Bit 0x01 = gets counted in the total Action States used
Bit 0x40 = move counts as a self-destruct for 1 second"
0x0C Function pointer - animation interrupt Points to a function that defines what state is entered at the end of this one.
0x10 Function pointer - input interrupt Points to the state's IASA function.
0x14 Function pointer - action physics Points to the state's physics behavior per frame.
0x18 Function pointer - collision interrupt Points to the state's function that defines what state to enter when platform collision changes.
0x1C Function pointer - camera behavior Points to a function related to camera behavior for the given state.
0x20 Start of next move
ID (Dec) ID (Hex) Action State Function Address
0000 0000 DeadDown Standard downward death
0001 0001 DeadLeft Standard leftward death
0002 0002 DeadRight Standard rightward death
0003 0003 DeadUp Upward death used in 1P "Team Kirby", etc.
0004 0004 DeadUpStar Standard Star KO
0005 0005 DeadUpStarIce Star KO while encased in ice (Freezie)
0006 0006 64-esque front fall, unused, I believe
0007 0007
0008 0008 DeadUpFallHitCamera
0009 0009 DeadUpFallIce
0010 000A DeadUpFallHitCameraIce
0011 000B Rebirth "Nothing" state, probably - it is the state Shiek/Zelda is in when their counterpart is the one currently playing. Also state of Nana when Sopo is alive
0012 000C Entering on halo 0x800bfd9c
0013 000D RebirthWait Waiting on halo
0014 000E Wait Standing state
0015 000F WalkSlow
0016 0010 WalkMiddle
0017 0011 WalkFast
0018 0012 Turn
0019 0013 TurnRun
0020 0014 Dash
0021 0015 Run
0022 0016 RunDirect
0023 0017 RunBrake
0024 0018 KneeBend Pre-jump animation
0025 0019 JumpF First jump forward
0026 001A JumpB First jump backward
0027 001B JumpAerialF Aerial jump forward
0028 001C JumpAerialB Aerial jump backward
0029 001D Fall Falling straight down
0030 001E FallF Falling with forward DI
0031 001F FallB Falling with backward DI
0032 0020 FallAerial Falling after the second jump
0033 0021 FallAerialF Falling after the second jump with forward DI
0034 0022 FallAerialB Falling after the second jump with backward DI
0035 0023 FallSpecial Special fall after UpB or airdodge
0036 0024 FallSpecialF Special fall with forward DI
0037 0025 FallSpecialB Special fall with backward DI
0038 0026 DamageFall Tumbling
0039 0027 Squat Going from stand to crouch
0040 0028 SquatWait Crouching
0041 0029 SquatRv Going from crouch to stand
0042 002A Landing
0043 002B LandingFallSpecial Landing from special fall
0044 002C Attack11 Jab 1
0045 002D Attack12 Jab 2
0046 002E Attack13 Jab 3
0047 002F Attack100Start Start of a rapid jab
0048 0030 Attack100Loop Middle of a rapid jab
0049 0031 Attack100End End of a rapid jab
0050 0032 AttackDash Dash attack
0051 0033 AttackS3Hi High Ftilt
0052 0034 AttackS3HiS High-mid Ftilt
0053 0035 AttackS3S Mid Ftilt
0054 0036 AttackS3LwS Low-mid Ftilt
0055 0037 AttackS3Lw Low Ftilt
0056 0038 AttackHi3 Uptilt
0057 0039 AttackLw3 Downtilt
0058 003A AttackS4Hi High Fsmash
0059 003B AttackS4HiS High-mid Fsmash
0060 003C AttackS4S Mid Fsmash
0061 003D AttackS4LwS Low-mid Fsmash
0062 003E AttackS4Lw Low Fsmash
0063 003F AttackHi4 Upsmash
0064 0040 AttackLw4 Downsmash
0065 0041 AttackAirN Nair
0066 0042 AttackAirF Fair
0067 0043 AttackAirB Bair
0068 0044 AttackAirHi Uair
0069 0045 AttackAirLw Dair
0070 0046 LandingAirN Landing during Nair
0071 0047 LandingAirF Landing during Fair
0072 0048 LandingAirB Landing during Bair
0073 0049 LandingAirHi Landing during Uair
0074 004A LandingAirLw Landing during Dair
0075 004B DamageHi1
0076 004C DamageHi2
0077 004D DamageHi3
0078 004E DamageN1
0079 004F DamageN2
0080 0050 DamageN3
0081 0051 DamageLw1
0082 0052 DamageLw2
0083 0053 DamageLw3
0084 0054 DamageAir1
0085 0055 DamageAir2
0086 0056 DamageAir3
0087 0057 DamageFlyHi
0088 0058 DamageFlyN
0089 0059 DamageFlyLw
0090 005A DamageFlyTop
0091 005B DamageFlyRoll
0092 005C LightGet Picking up an item
0093 005D HeavyGet Picking up a heavy item (barrel)
0094 005E LightThrowF Throwing items at standard speed 0x80095a30
0095 005F LightThrowB
0096 0060 LightThrowHi
0097 0061 LightThrowLw
0098 0062 LightThrowDash
0099 0063 LightThrowDrop
0100 0064 LightThrowAirF
0101 0065 LightThrowAirB
0102 0066 LightThrowAirHi
0103 0067 LightThrowAirLw
0104 0068 HeavyThrowF
0105 0069 HeavyThrowB
0106 006A HeavyThrowHi
0107 006B HeavyThrowLw
0108 006C LightThrowF4 Throwing items at Smash speed
0109 006D LightThrowB4
0110 006E LightThrowHi4
0111 006F LightThrowLw4
0112 0070 LightThrowAirF4
0113 0071 LightThrowAirB4
0114 0072 LightThrowAirHi4
0115 0073 LightThrowAirLw4
0116 0074 HeavyThrowF4
0117 0075 HeavyThrowB4
0118 0076 HeavyThrowHi4
0119 0077 HeavyThrowLw4
0120 0078 SwordSwing1 Beam sword swings
0121 0079 SwordSwing3
0122 007A SwordSwing4
0123 007B SwordSwingDash
0124 007C BatSwing1 Home Run Bat swings
0125 007D BatSwing3
0126 007E BatSwing4
0127 007F BatSwingDash
0128 0080 ParasolSwing1 Parasol swings
0129 0081 ParasolSwing3
0130 0082 ParasolSwing4
0131 0083 ParasolSwingDash
0132 0084 HarisenSwing1 Fan swings
0133 0085 HarisenSwing3
0134 0086 HarisenSwing4
0135 0087 HarisenSwingDash
0136 0088 StarRodSwing1 Star Rod swings
0137 0089 StarRodSwing3
0138 008A StarRodSwing4
0139 008B StarRodSwingDash
0140 008C LipStickSwing1 Lip's Stick swings
0141 008D LipStickSwing3
0142 008E LipStickSwing4
0143 008F LipStickSwingDash
0144 0090 ItemParasolOpen
0145 0091 ItemParasolFall
0146 0092 ItemParasolFallSpecial
0147 0093 ItemParasolDamageFall
0148 0094 LGunShoot Raygun shots
0149 0095 LGunShootAir
0150 0096 LGunShootEmpty
0151 0097 LGunShootAirEmpty
0152 0098 FireFlowerShoot
0153 0099 FireFlowerShootAir
0154 009A ItemScrew
0155 009B ItemScrewAir
0156 009C DamageScrew
0157 009D DamageScrewAir
0158 009E ItemScopeStart
0159 009F ItemScopeRapid
0160 00A0 ItemScopeFire
0161 00A1 ItemScopeEnd
0162 00A2 ItemScopeAirStart
0163 00A3 ItemScopeAirRapid
0164 00A4 ItemScopeAirFire
0165 00A5 ItemScopeAirEnd
0166 00A6 ItemScopeStartEmpty
0167 00A7 ItemScopeRapidEmpty
0168 00A8 ItemScopeFireEmpty
0169 00A9 ItemScopeEndEmpty
0170 00AA ItemScopeAirStartEmpty
0171 00AB ItemScopeAirRapidEmpty
0172 00AC ItemScopeAirFireEmpty
0173 00AD ItemScopeAirEndEmpty
0174 00AE LiftWait
0175 00AF LiftWalk1
0176 00B0 LiftWalk2
0177 00B1 LiftTurn
0178 00B2 GuardOn Shield startup 0x80093a50
0179 00B3 Guard Holding shield 0x80
0180 00B4 GuardOff Shield release 0x80
0181 00B5 GuardSetOff Shield stun
0182 00B6 GuardReflect 0x80
0183 00B7 DownBoundU The missed tech bounce, facing up
0184 00B8 DownWaitU Lying on ground facing up
0185 00B9 DownDamageU Getting hit by a low knockback move lying on ground facing up
0186 00BA DownStandU Neutral getup
0187 00BB DownAttackU Get up attack from ground face up
0188 00BC DownFowardU Missed tech roll forward
0189 00BD DownBackU Missed tech roll backward
0190 00BE DownSpotU Does not appear to be used, may have been a stick down option for missed tech at one point
0191 00BF DownBoundD The missed tech bounce, facing down
0192 00C0 DownWaitD Lying on ground facing down 0x80
0193 00C1 DownDamageD Getting hit by a low knockback move lying on the ground facing down 0x80
0194 00C2 DownStandD Neutral getup 0x80
0195 00C3 DownAttackD Get up attack from ground face down 0x80
0196 00C4 DownFowardD Missed tech roll forward 0x80
0197 00C5 DownBackD Missed tech roll backward 0x80
0198 00C6 DownSpotD Does not appear to be used, may have been a stick down option for missed tech at one point 0x80
0199 00C7 Passive Neutral tech
0200 00C8 PassiveStandF Forward tech
0201 00C9 PassiveStandB Backward tech
0202 00CA PassiveWall Wall tech
0203 00CB PassiveWallJump Walljump tech/plain walljump
0204 00CC PassiveCeil Ceiling tech
0205 00CD ShieldBreakFly
0206 00CE ShieldBreakFall
0207 00CF ShieldBreakDownU
0208 00D0 ShieldBreakDownD
0209 00D1 ShieldBreakStandU
0210 00D2 ShieldBreakStandD
0211 00D3 FuraFura Shield-break tottering 0x80099010
0212 00D4 Catch Grab 0x800d8c54
0213 00D5 CatchPull Successfully grabbing a character - pulling them in 0x80
0214 00D6 CatchDash 0x80
0215 00D7 CatchDashPull 0x80
0216 00D8 CatchWait Grabbing and holding a character 0x80
0217 00D9 CatchAttack Pummel 0x80
0218 00DA CatchCut When opponent breaks of a character's grab 0x80
0219 00DB ThrowF Forward throw 0x80
0220 00DC ThrowB Back throw 0x80
0221 00DD ThrowHi Up throw 0x80
0222 00DE ThrowLw Down throw 0x80
0223 00DF CapturePulledHi 0x80
0224 00E0 CaptureWaitHi 0x80
0225 00E1 CaptureDamageHi 0x80
0226 00E2 CapturePulledLw Becoming grabbed 0x80
0227 00E3 CaptureWaitLw When grabbed 0x80
0228 00E4 CaptureDamageLw Pummeled 0x80
0229 00E5 CaptureCut Grab release 0x80
0230 00E6 CaptureJump Jumping mash out of grab 0x80
0231 00E7 CaptureNeck Does not appear to be used 0x80
0232 00E8 CaptureFoot Does not appear to be used 0x80
0233 00E9 EscapeF roll forward 0x80
0234 00EA EscapeB roll backward 0x80
0235 00EB Escape spotdodge 0x800998ec
0236 00EC EscapeAir airdodge 0x80099a9c
0237 00ED ReboundStop
0238 00EE Rebound
0239 00EF ThrownF Thrown forward
0240 00F0 ThrownB Thrown backward
0241 00F1 ThrownHi Thrown up
0242 00F2 ThrownLw Thrown down
0243 00F3 ThrownLwWomen Thrown down as a female character
0244 00F4 Pass Drop through platform 0x80
0245 00F5 Ottotto Ledge teeter
0246 00F6 OttottoWait
0247 00F7 FlyReflectWall Missed walltech
0248 00F8 FlyReflectCeil Missed ceiling tech
0249 00F9 StopWall Wall bonk
0250 00FA StopCeil Ceiling bonk
0251 00FB MissFoot Backward shield slideoff
0252 00FC CliffCatch Catching the ledge 0x80
0253 00FD CliffWait Hanging on the ledge 0x80
0254 00FE CliffClimbSlow Climbing the ledge (100%+) 0x80
0255 00FF CliffClimbQuick Climbing the ledge (<100%) 0x80
0256 0100 CliffAttackSlow Ledge attack (100%+) 0x80
0257 0101 CliffAttackQuick Ledge attack (<100%) 0x80
0258 0102 CliffEscapeSlow Ledge roll (100%+) 0x80
0259 0103 CliffEscapeQuick Ledge roll (<100%) 0x80
0260 0104 CliffJumpSlow1 Ledge jump/tournament winner (100%+)
0261 0105 CliffJumpSlow2 Ledge jump/tournament winner (100%+)
0262 0106 CliffJumpQuick1 Ledge jump/tournament winner (<100%)
0263 0107 CliffJumpQuick2 Ledge jump/tournament winner (<100%)
0264 0108 AppealR Taunt right 0x80
0265 0109 AppealL Taunt left 0x80
0266 010A ShoulderedWait DK carry
0267 010B ShoulderedWalkSlow
0268 010C ShoulderedWalkMiddle
0269 010D ShoulderedWalkFast
0270 010E ShoulderedTurn
0271 010F ThrownFF DK carry throws
0272 0110 ThrownFB
0273 0111 ThrownFHi
0274 0112 ThrownFLw
0275 0113 CaptureCaptain
0276 0114 CaptureYoshi
0277 0115 YoshiEgg
0278 0116 CaptureKoopa
0279 0117 CaptureDamageKoopa
0280 0118 CaptureWaitKoopa
0281 0119 ThrownKoopaF
0282 011A ThrownKoopaB
0283 011B CaptureKoopaAir
0284 011C CaptureDamageKoopaAir
0285 011D CaptureWaitKoopaAir
0286 011E ThrownKoopaAirF
0287 011F ThrownKoopaAirB
0288 0120 CaptureKirby
0289 0121 CaptureWaitKirby
0290 0122 ThrownKirbyStar
0291 0123 ThrownCopyStar
0292 0124 ThrownKirby
0293 0125 BarrelWait
0294 0126 Bury Stuck in ground by DK side B or similar
0295 0127 BuryWait
0296 0128 BuryJump
0297 0129 DamageSong Put to sleep by Jigglypuff up B or similar
0298 012A DamageSongWait
0299 012B DamageSongRv
0300 012C DamageBind Hit by Mewtwo's Disable
0301 012D CaptureMewtwo Does not appear to be used
0302 012E CaptureMewtwoAir Does not appear to be used
0303 012F ThrownMewtwo Hit by Mewtwo's Confusion
0304 0130 ThrownMewtwoAir Hit by Mewtwo's Confusion
0305 0131 WarpStarJump
0306 0132 WarpStarFall
0307 0133 HammerWait
0308 0134 HammerWalk
0309 0135 HammerTurn
0310 0136 HammerKneeBend
0311 0137 HammerFall
0312 0138 HammerJump
0313 0139 HammerLanding
0314 013A KinokoGiantStart Super/Poison mushroom states
0315 013B KinokoGiantStartAir
0316 013C KinokoGiantEnd
0317 013D KinokoGiantEndAir
0318 013E KinokoSmallStart
0319 013F KinokoSmallStartAir
0320 0140 KinokoSmallEnd
0321 0141 KinokoSmallEndAir
0322 0142 Entry Warp in at beginning of match.
0323 0143 EntryStart
0324 0144 EntryEnd
0325 0145 DamageIce
0326 0146 DamageIceJump
0327 0147 CaptureMasterhand
0328 0148 CapturedamageMasterhand
0329 0149 CapturewaitMasterhand
0330 014A ThrownMasterhand
0331 014B CaptureKirbyYoshi
0332 014C KirbyYoshiEgg
0333 014D CaptureLeadead
0334 014E CaptureLikelike
0335 014F DownReflect A very rare action state where the character transitions from a DownBoundU or DownBoundD (missed tech) state into a wall bounce. This state is not techable and neither is the probable next floor hit. Most commonly encountered on Pokémon Stadium
0336 0150 CaptureCrazyhand
0337 0151 CapturedamageCrazyhand
0338 0152 CapturewaitCrazyhand
0339 0153 ThrownCrazyhand
0340 0154 BarrelCannonWait
0341 0155 Wait1 No general action states at this point or later are used, it's all character-specific action states
0342 0156 Wait2
0343 0157 Wait3
0344 0158 Wait4
0345 0159 WaitItem
0346 015A SquatWait1
0347 015B SquatWait2
0348 015C SquatWaitItem
0349 015D GuardDamage
0350 015E EscapeN
0351 015F AttackS4Hold
0352 0160 HeavyWalk1
0353 0161 HeavyWalk2
0354 0162 ItemHammerWait
0355 0163 ItemHammerMove
0356 0164 ItemBlind
0357 0165 DamageElec
0358 0166 FuraSleepStart
0359 0167 FuraSleepLoop
0360 0168 FuraSleepEnd
0361 0169 WallDamage
0362 016A CliffWait1
0363 016B CliffWait2
0364 016C SlipDown
0365 016D Slip
0366 016E SlipTurn
0367 016F SlipDash
0368 0170 SlipWait
0369 0171 SlipStand
0370 0172 SlipAttack
0371 0173 SlipEscapeF
0372 0174 SlipEscapeB
0373 0175 AppealS
0374 0176 Zitabata
0375 0177 CaptureKoopaHit
0376 0178 ThrownKoopaEndF
0377 0179 ThrownKoopaEndB
0378 017A CaptureKoopaAirHit
0379 017B ThrownKoopaAirEndF
0380 017C ThrownKoopaAirEndB
0381 017D ThrownKirbyDrinkSShot
0382 017E ThrownKirbySpitSShot


ID Lists

Character External ID Character Internal ID Stage ID Internal Stage ID CPU AI Type ITEMS Element ID Status List SFX ID Name Tags Music Menus
Original Music Track Filename (.hps) Music ID
0x00 // Captain Falcon 0x00 // Mario DEBUG 0x02 Princess Peach's Castle 00 = // stay 0x00 // Capsule 0x00 = Normal 00000001 (1) // Stamina 0000 - 00A9: In-game sound effects DEFAULT All-Star Rest Area 1p_qk 00 00 - Title Screen (Press Start)
0x01 // Donkey Kong 0x01 // Fox 000 [000] // Dummy 0x03 Rainbow Cruise 02 = // escape 0x01 // Box 0x01 = Fire 00000010 (2) // No Character Voice 00AA: Trophy get RC Fire Emblem akaneia 01 01 - Reloads menu from language change? (brings to language change selection and saves)
0x02 // Fox 0x02 // Captain Falcon 001 [001] // TEST 0x04 Kongo Jungle 0x02 // Barrel (Taru) 0x02 = Electric 00000100 (4) // Low Gravity 00AB: Award jingle VIVI Balloon Fight baloon 02 02 - VS mode character select
0x03 // Mr. Game & Watch 0x03 // Donkey Kong 0x05 Jungle Japes 03 = // jump 0x03 // Egg 0x03 = Slash 00001000 (8) // Invisible 00AC: Menu back 64DD Big Blue bigblue 03 03 - Classic Mode
0x04 // Kirby 0x04 // Kirby STANDARD 0x06 Great Bay 04 = // normal 0x04 // Party Ball (Kusudama) 0x04 = Coin 00010000 (16) // Metal Icon 00AD: Menu forward 6502 Princess Peach's Castle castle 04 04 - Adventure Mode
0x05 // Bowser 0x05 // Bowser 002 [002] // Fountain of Dreams (Izumi) 0x07 Hyrule Temple 05 = // manual 0x05 // Barrel Cannon (TaruCann) 00100000 (32) // Metal Character 00AE: Menu up/down AMPM Continue continue 05 05 - All-Star Mode
0x06 // Link 0x06 // Link 003 [003] // Pokémon Stadium (Pstadium) 0x08 Brinstar 06 = // nana 0x06 // Bob-omb (BombHei) 0x06 = Sleep (103 frames) 01000000 (64) // Unknown/Unused 00AF: Menu access denied BABA Corneria corneria 06 06 - Debug Menu
0x07 // Luigi 0x07 // Sheik 004 [004] // Princess Peach's Castle (Castle) 0x09 Brinstar Depths 07 = // defensive 0x07 // Mr. Saturn (Dosei) 0x07 = Sleep (412 frames) 10000000 (128) // Vibration Setting on 00B0: Magnifier damage sound BOMB Dr. Mario docmari 07 07 - Master Sound Test
0x08 // Mario 0x08 // Ness 005 [005] // Kongo Jungle (Kongo) 0x0A Yoshi's Story 08 = // struggle 0x08 // Heart Container 0x08 = Grounded 00B1: Pause sound Ending Fanfare ending 08 08 - Looks like regular VS mode, but actually cycles through many different character select screens
0x09 // Marth 0x09 // Peach 006 [006] // Brinstar (Zebes) 0x0B Yoshi's Island 09 = // freak 0x09 // Maxim Tomato 0x09 = Grounded 00B2: Star Fox intercom sound EAD Demo Fanfare (Unused) famidemo 09 09 - Black Screen...?
0x0A // Mewtwo 0x0A // Popo 007 [007] // Corneria 0x0C Fountain of Dreams 0A = // cooperate 0x0A // Starman (Super Star) 0x0A = Cape 00B3: Results screen left/right HVC 1P Mode Fanfare 1 ff_1p01 0a 0A - Camera Mode
0x0B // Ness 0x0B // Nana 008 [008] // Yoshi's Story (Story) 0x0D Green Greens 0B = // splwlink (Bomb-Fest Event Link) 0x0B // Home-Run Bat 0x0B = Empty 00B4: Results screen coin get MIC 1P Mode Fanfare 2 ff_1p02 0b 0B - Trophy Gallery
0x0C // Peach 0x0C // Pikachu 009 [009] // Onett 0x0E Corneria 0C = // splwsamus (Bomb-Fest Event Samus) 0x0C // Beam Sword 0x0C = Disable 00B5 - 00C1: Misc menu sounds N64 Unused Bad Fanfare ff_bad 0c 0C - Trophy Lottery
0x0D // Pikachu 0x0D // Samus 010 [00A] // Mute City 0x0F Venom 0D = // onlyitem 0x0D // Parasol 0x0D = Darkness 00DB - 013C: Item sounds NEO Donkey Kong Victory Theme ff_dk 0d 0D - Trophy Collection
0x0E // Ice Climbers 0x0E // Yoshi 011 [00B] // Rainbow Cruise (RCruise) 0x10 Pokemon Stadium 0E = // evzelda (Hide 'n' Sheik Event Zelda) 0x0E // Green Shell (G Shell) 0x0E = Screw Attack 013D - 014B: Crowd sounds NUS Fire Emblem Victory Theme ff_emb 0e 0E - Starts a match (with the debug menu configurations?)
0x0F // Jigglypuff 0x0F // Jigglypuff 012 [00C] // Jungle Japes (Garden) 0x11 Poke Floats 0F = // noact 0x0F // Red Shell (R Shell) 0x0F = Lips Stick 014C - 020A: Walking sound effects (lots of repeats) QD Game & Watch Victory Theme ff_flat 0f 0F - Target Test
0x10 // Samus 0x10 // Mewtwo 013 [00D] // Great Bay 0x12 Mute City 10 = // air 0x10 // Ray Gun (L Gun) 0x10+ = Nothing (no graphic) SW Star Fox Victory Theme ff_fox 10 10 - Super Sudden Death
0x11 // Yoshi 0x11 // Luigi 014 [00E] // Hyrule Temple (Shrine) 0x13 Big Blue 11 = // item 0x11 // Freezie (Freeze) 4E20: Narrator game title shouts TIE F-Zero Victory Theme ff_fzero 11 11 - Invisible Melee
0x12 // Zelda 0x12 // Marth 015 [00F] // Brinstar Depths (Kraid) 0x14 Onett 12 = // Guard edge 0x12 // Food 7530: Narrator game modes VBOY Unused Good Fanfare ff_good 12 12 - Slo-Mo Melee
0x13 // Sheik 0x13 // Zelda 016 [010] // Yoshi's Island (Yoster) 0x15 Fourside bom 0x13 // Proximity Mine (MSBomb) 9C40: Narrator single-player phrases Ice Climber Victory Theme ff_ice 13 13 - Lightning Melee
0x14 // Falco 0x14 // Young Link 017 [011] // Green Greens (Greens) 0x16 Icicle Mountain 14 = // Cooperative 0x14 // Flipper C350: Narrator versus phrases RESTRICTED Kirby Victory Theme ff_kirby 14 14 - "A new foe has appeared!" (Ganon with sword, freezes if you try to progress, ID from debug?)
0x15 // Young Link 0x15 // Dr. Mario 018 [012] // Fourside 0x18 Mushroom Kingdom 15 = // Coop 2 0x15 // Super Scope (S Scope) 7C830: Narrator character calls + Additional phrases CPU1 Legend of Zelda Victory Theme ff_link 15 15 - Classic Mode trophy acquisition & credits (C.Falcon, ID from debug?)
0x16 // Dr. Mario 0x16 // Falco 019 [013] // Mushroom Kingdom I (Inishie1) 0x19 Mushroom Kingdom II 16 = // Normal? 0x16 // Star Rod CPU2 Super Mario Victory Theme ff_mario 16 16 - Adventure Mode trophy acquisition & credits (C.Falcon, ID from debug?)
0x17 // Roy 0x17 // Pichu 020 [014] // Mushroom Kingdom II (Inishie2) 0x1B Flat Zone 17 = // Multi-Man Melee AI 0x17 // Lip's Stick CPU3 Earthbound Victory Theme ff_ness 17 17 - All-Star Mode trophy acquisition & credits (C.Falcon, ID from debug?)
0x18 // Pichu 0x18 // Mr. Game & Watch // 021 [015] // Akaneia (Deleted Stage) 0x1C Dream Land 18 = // Escape + Attack 0x18 // Fan (Harisen) CPU4 Pokemon Victory Theme ff_poke 18 18 - Intro video
0x19 // Ganondorf 0x19 // Ganondorf 022 [016] // Venom 0x1D Yoshi's Island (64) 19 = // Walk + Attack 0x19 // Fire Flower (F Flower) CPU5 Metroid Victory Theme ff_samus 19 19 - Cycles through Adventure Mode cinematics
0x1A // Master Hand 0x1A // Roy 023 [017] // Poké Floats (Pura) 0x1E Kongo Jungle (64) 1A = // Stay + Attack 0x1A // Super Mushroom (Kinoko) CPU6 Unused Fanfare 1 ff_step1 1a 1A - Character trophy acquisition (no credits) (uses All-Star trophy) (C.Falcon, ID from debug?)
0x1B // Wireframe Male 0x1B // Master Hand 024 [018] // Big Blue Unused Fanfare 2 ff_step2 1b 1B - Tournament Menu
0x1C // Wireframe Female 025 [019] // Icicle Mountain 0x1D // Warp Star (WStar) CPU9 Unused Fanfare 3 ff_step3 1c 1C - Training Mode
0x1D // Giga Bowser 0x1D // Wireframe Male (Boy) 026 [01A] // Icetop 0x1E // Screw Attack (ScBall) HMN Yoshi Victory Theme ff_yoshi 1d 1D - Tiny Melee
0x1E // Crazy Hand 0x1E // Wireframe Female (Girl) 0x1F // Bunny Hood (RabbitC) HMN Flat Zone flatzone 1e 1E - Giant Melee
0x1F // Sandbag 0x1F // Giga Bowser 027 [01B] // Flat Zone 0x20 // Metal Box (MetalB) HMN0 Fourside fourside 1f 1F - Stamina Mode
0x20 // Popo 0x20 // Sandbag 028 [01C] // Dream Land N64 (old ppp) 0x21 // Cloaking Device (SpyCloak) HMN1 Game Over gameover 20 20 - Home-Run Contest
0x21 // User Select(Event) / None 029 [01D] // Yoshi's Island N64 (old yosh) 0x22 // Poké Ball (M Ball) HMN2 Kongo Jungle garden 21 21 - 10-Man Melee
030 [01E] // Kongo Jungle N64 (old kong) HMN3 Great Bay greatbay 22 22 - 100-Man Melee
031 [01F] // Battlefield (battle) ITEM RELATED HMN4 Green Greens greens 23 23 - 3-Minute Melee
032 [020] // Final Destination (last) 0x23 // Ray Gun recoil effect HMN5 How to Play (video audio) howto 24 24 - 15-Minute Melee
0x24 // Star Rod Star HMN6 How to Play howto_s 25 25 - Endless Melee
TARGET TEST 0x25 // Lips Stick Dust HMN7 Multi-Man Melee 1 hyaku 26 26 - Cruel Melee
033 [021] // Target Test // Mario (TMario) 0x26 // Super Scope Beam HMN8 Multi-Man Melee 2 hyaku2 27 27 - "Enable Progressive Scan Display?"
034 [022] // Target Test // C. Falcon (TCaptain) 0x27 // Ray Gun Beam HMN9 Icicle Mountain icemt 28 28 - Reboot
035 [023] // Target Test // Young Link (TClink) 0x28 // Hammer Head Mushroom Kingdom inis1_01 29 29 - Memory Card Overwrite Confirmation
036 [024] // Target Test // Donkey Kong (TDonkey) 0x29 // Flower RANDOM Mushroom Kingdom (Finale) inis1_02 2a 2A - Fixed-Camera Mode
037 [025] // Target Test // Dr. Mario (TDrmario) 0x2A // Yoshi's egg (Event) AAAA Mushroom Kingdom II inis2_01 2b 2B - Loads Event Match 1 (Match ID from the debug menu?)
038 [026] // Target Test // Falco (TFalco) 1DER Mushroom Kingdom II (Finale) inis2_02 2c 2C - Single-Button Mode
039 [027] // Target Test // Fox (TFox) MONSTERS 2BIT Classic Fanfare intro_es 2d
040 [028] // Target Test // Ice Climbers (TIceclim) 0x2B // Goomba (DKuriboh) 2L8 Adventure Fanfare intro_nm 2e
041 [029] // Target Test // Kirby (TKirby) 0x2C // Redead (Leadead) 2PAY Hammer Theme item_h 2f
042 [02A] // Target Test // Bowser (TKoopa) 0x2D // Octarok (Octarock) 401K Star Theme item_s 30
043 [02B] // Target Test // Link (TLink) 0x2E // Ottosea 4BDN Fountain of Dreams izumi 31
044 [02C] // Target Test // Luigi (TLuigi) 0x2F // Stone(Octarok Projectile) 4BY4 Jungle Japes kongo 32
045 [02D] // Target Test // Marth (TMars) 4EVA Brinstar Depths kraid 33
046 [02E] // Target Test // Mewtwo (TMewtwo) CHARACTER RELATED 7HVN Main Menu (Default) menu01 34
047 [02F] // Target Test // Ness (TNess) 48 0x30 // Mario's fire AOK Lottery menu02 35
048 [030] // Target Test // Peach (TPeach) 49 ARCH Main Menu (Alternate) menu3 36
049 [031] // Target Test // Pichu (TPichu) 50 0x32 // Kirby's Cutter beam ARN Mach Rider mrider 37
050 [032] // Target Test // Pikachu (TPikachu) 51 0x33 // Kirby's Hammer ASH Mute City mutecity 38
051 [033] // Target Test // Jigglypuff (TPurin) 52 0x34 // BAST Kongo Jungle N64 old_dk 39
052 [034] // Target Test // Samus (TSamus) 53 0x35 // BBBB Dream Land 64 old_kb 3a
053 [035] // Target Test // Sheik (TSeak) 54 0x36 // Fox's Laser BCUZ Yoshi's Island 64 old_ys 3b
054 [036] // Target Test // Yoshi (TYoshi 55 0x37 // Falco's Laser BETA Onett onetto 3c
055 [037] // Target Test // Zelda (TZelda) 56 0x38 // Fox's shadow BOBO Mother 2 onetto2 3d
056 [038] // Target Test // Mr. Game & Watch (TGamewat) 57 0x39 // Falco's shadow BONE Opening (video audio) opening 3e
057 [039] // Target Test // Roy (TEmblem) 58 0x3A // Link's bomb BOO Battle Theme (Pokemon) pokesta 3f
058 [03A] // Target Test // Ganondorf (TGanon) 59 0x3B // Young Link's bomb BORT Pokemon Stadium pstadium 40
60 0x3C // Link's boomerang BOZO Poke Floats pura 41
ADVENTURE MODE 61 0x3D // Young Link's boomerang BUB Rainbow Cruise rcruise 42
059 [03B] // 1 //1 Kinoko (Mushroom Kingdom Adventure) 62 0x3E // Link's Hookshot BUD Info Fanfare 1 s_info1 43
060 [03C] // 1 //2 Castle (vs Peach & Mario [or luigi]) 63 0x3F // Young Link's Hookshot BUZZ Info Fanfare 2 s_info2 44
061 [03D] // 2 //1 Kongo (vs 2 mini Donkey Kongs) 64 0x40 // Arrow BYRN Info Fanfare 3 s_info3 45
062 [03E] // 2 //2 Garden (vs Donkey Kong) 65 0x41 // Fire Arrow CHUM Trophy Fanfare s_new1 46
063 [03F] // 3 //1 Meiktu (Zelda Adventure[Underground Maze]) 66 0x42 // PK Fire COOP Unused Fanfare s_new2 47
064 [040] // 3 //2 Shrine (vs Zelda) 67 0x43 // PK Flash CUBE Challenger Approaching s_newcom 48
065 [041] // 4 //1 Zebes (vs Samus) 68 0x44 // PK Flash CUD Unused Song (Hammer Theme) s_select 49
066 [042] // 4 //2 Dassyut (Escape from Brinstar Adventure) 69 0x45 // PK Thunder (Primary) DAYZ Saria's Theme saria 4a
067 [043] // 5 //1 Greens (vs Kirby) 70 0x46 // PK Thunder DIRT Temple shrine 4b
068 [044] // 5 //2 Greens (vs Kirby Team) 71 0x47 // PK Thunder DIVA Brinstar Escape siren 4c
069 [045] // 5 //3 Greens (classic Kirby music) (vs Giant Kirby) 72 0x48 // PK Thunder DNCR Super Mario Bros. 3 smari3 4d
070 [046] // 6 //1 Corneria (vs Fox [or Falco]) 73 0x49 // PK Thunder DUCK Final Destination sp_end 4e
071 [047] // 6 //2 Corneria (vs Fox [or Falco] with massive arwing attack) 74 0x4A // Fox's Blaster DUD Giga Bowser sp_giga 4f
072 [048] // 7 //1 Pokémon Stadium (vs Pikachu Team, and 1 Jigglypuff if unlocked, lots of pokeball) 75 0x4B // Falco's Blaster DUFF Metal Battle sp_metal 50
073 [049] // 8 //1 B Route (F //Zero Adventure[F //Zero Grand Prix]) 76 0x4C // Link's Arrow DV8 Battlefield (Fighting Wire Frames) sp_zako 51
074 [04A] // 8 //2 Mute City (vs Captain Falcon) 77 0x4D // Young Link's arrow ED Special Movie (video audio) swm_15min 52
075 [04B] // 9 //1 Onett (vs Ness x3, lots of Mr Saturn) 78 0x4E // PK Flash (explosion) ELBO Targets! target 53
076 [04C] // 10 //1 Icemt (Icicle Mountain Adventure) 79 0x4F // Needle(thrown) FAMI Venom venom 54
077 [04D] // 10 //2 Icetop (vs Ice Climbers x2) 80 0x50 // Needle FIDO Metal Mario Cutscene vl_battle 55
078 [04E] // 11 //1 Battle (vs Fighting Wireframe team, low gravity) 81 0x51 // Pikachu's Thunder FILO Luigi Adventure Cutscene vl_castle 56
079 [04F] // 11 //2 Battle (vs Metal Mario [& Metal Luigi if unlocked]) 82 0x52 // Pichu's Thunder FIRE Corneria Adventure Cutscene vl_corneria 57
080 [050] // 12 //1 Last (vs Bowser) 83 0x53 // Mario's cape FLAV Space Adventure Cutscene vl_cosmos 58
081 [051] // 12 //2 Last (vs Giga Bowser) 84 0x54 // Dr.Mario's cape FLEA Bowser Destroyed Cutscene vl_figure1 59
85 0x55 // Smoke (Sheik) FLYN Giga Bowser Destroyed Cutscene vl_figure2 5a
BONUS STAGE 86 0x56 // Yoshi's egg(thrown) GBA F-Zero Adventure Cutscene vl_fzero 5b
082 [052] // Takisusume (Race to the Finish Classic) 87 0x57 // Yoshi's Tongue?? GCN Giga Bowser Cutscene vl_last_v2 5c
083 [053] // Grab the Trophies (figureget) 88 0x58 // Yoshi's Star GLUV Tournament Mode 1 vs_hyou1 5d
084 [054] // Homerun Contest (homerun) 89 0x59 // Pikachu's thunder (B) GR8 Tournament Mode 2 vs_hyou2 5e
085 [055] // Heal (All-Star's Stage Inbetween Matches) 90 0x5A // Pikachu's thunder (B) GRIT Yoshi's Island yorster 5f
91 0x5B // Pichu's thunder (B) GRRL Yoshi's Story ystory 60
CLASSIC (VS SINGLE CHARACTER) 92 0x5C // Pichu's thunder (B) GUST Brinstar zebes 61
086 [056] // Princess Peach's Castle (vs Mario) 93 0x5D // Samus's bomb GUT
087 [057] // Rainbow Cruise (vs Mario) 94 0x5E // Samus's chargeshot HAMB
088 [058] // Kongo Jungle (vs Donkey Kong) 95 0x5F // Missile HAND
089 [059] // Jungle Japes (vs Donkey Kong) 96 0x60 // Grapple beam HELA
090 [05A] // Great Bay (vs Link) 97 0x61 // Sheik's chain HEYU
091 [05B] // Temple (vs Link) 98 0x62 // HI5
092 [05C] // Brinstar (vs Samus) 0x63 // Turnip HIKU
093 [05D] // Brinstar Depths (vs Samus) 0x64 // Bowser's flame HOOD
094 [05E] // Yoshi's Story (vs Yoshi) 0x65 // Ness's bat HYDE
095 [05F] // Yoshi's Island (vs Yoshi) 0x66 // Yoyo IGGY
096 [060] // Fountain of Dreams (vs Kirby) 0x67 // Peach's parasol IKE
097 [061] // Green Greens (vs Kirby) 0x68 // Toad IMPA
098 [062] // Corneria (vs Fox) 0x69 // Luigi's fire JAZZ
099 [063] // Venom (vs Fox) 0x6A // Ice(Iceclimbers) JEKL
100 [064] // Pokémon Stadium (Only Pokeballs)(vs Pikachu) 0x6B // Blizzard JOJO
101 [065] // Mushroom Kingdom I (vs Luigi) 0x6C // Zelda's fire JUNK
102 [066] // Mushroom Kingdom II (vs Luigi) 0x6D // Zelda's fire (explosion) KEY
103 [067] // Mute City (vs Captain Falcon) 0x6E // KILA
104 [068] // Big Blue (vs Captain Falcon) 0x6F // Toad's spore KITY
105 [069] // Onett (vs Ness) 0x70 // Mewtwo's Shadowball KLOB
106 [06A] // Fourside (vs Ness) 0x71 // Iceclimbers' Up //B KNEE
107 [06B] // Pokémon Stadium (vs Jigglypuff) 0x72 // Pesticide L33T
108 [06C] // Princess Peach's Castle (vs Bowser) 0x73 // Manhole L8ER
109 [06D] // Battlefield (vs Bowser) 0x74 // Fire(G&W) LCD
110 [06E] // Princess Peach's Castle (vs Peach) 0x75 // Parashute LOKI
111 [06F] // Mushroom Kingdom II (vs Peach) 0x76 // Turtle LULU
112 [070] // Temple (vs Zelda) 0x77 // Sperky MAC
113 [071] // Great Bay (vs Marth) 0x78 // Judge MAMA
114 [072] // Final Destination (vs Mewtwo) 0x79 // ME
115 [073] // Pokémon Stadium (vs Mewtwo) 0x7A // Sausage MILO
116 [074] // Icicle Mountain (vs Ice Climbers) 0x7B // Milk (Young Link) MIST
117 [075] // Icicle Mountain (vs Ice Climbers) 0x7C // Firefighter(G&W) MOJO
118 [076] // Mushroom Kingdom I (Dr. Mario Music) (vs Dr. Mario) 0x7D // Masterhand's Laser MOSH
119 [077] // Great Bay (vs Young Link) 0x7E // Masterhand's Bullet NADA
120 [078] // Temple (vs Young Link) 0x7F // Crazyhand's Laser ZZZZ
121 [079] // Corneria (vs Falco) 0x80 // Crazyhand's Bullet NAVI
122 [07A] // Venom (vs Falco) 0x81 // Crazyhand's Bomb NELL
123 [07B] // Great Bay (Unused) 0x82 // Kirby copy Mario's Fire (B) NEWT
124 [07C] // Pokémon Stadium (Pichu) 0x83 // Kirby copy Dr. Mario's Capsule (B) NOOK
0x84 // Kirby copy Luigi's Fire (B) NEWB
CLASSIC (VS TWO CHARACTERS) 0x85 // Kirby copy IceClimber's IceCube (B) ODIN
125 [07D] // Battlefield (Plays Mario Theme) (vs Team Mario & Bowser) 0x86 // Kirby copy Peach's Toad (B) OLAF
126 [07E] // Mushroom Kingdom II (vs Team Mario & Peach) 0x87 // Kirby copy Toad's Spore (B) OOPS
127 [07F] // Kongo Jungle (vs Team DK & Fox) 0x88 // Kirby copy Fox's Laser (B) OPUS
128 [080] // Temple (vs Team Link & Zelda) 0x89 // Kirby copy Falco's Laser (B) PAPA
129 [081] // Great Bay (vs Team Link & Young Link) 0x8A // Kirby copy Fox's Blaster (B) PIT
130 [082] // Mushroom Kingdom I (vs Team Link & Luigi) 0x8B // Kirby copy Falco's Blaster (B) POP
131 [083] // Great Bay (Saria's Song) (vs Team Marth & Link) 0x8C // Kirby copy Link's Arrow (B) PKMN
132 [084] // Big Blue (vs Team Samus & Captain Falcon) 0x8D // Kirby copy Young Link's Arrow (B) QTPI
133 [085] // Brinstar (vs Team Samus & Fox) 0x8E // Kirby copy Link's Arrow (B) RAM
134 [086] // Yoshi's Story (vs Team Yoshi & Luigi) 0x8F // Kirby copy Young Link's Arrow (B) RNDM
135 [087] // Yoshi's Island (vs Team Yoshi & Ness) 0x90 // Kirby copy Mewtwo's Shadowball (B) ROBN
136 [088] // Green Greens (vs Team Kirby & Pikachu) 0x91 // Kirby copy PK Flash (B) ROT8
137 [089] // Fountain of Dreams (vs Team Kirby & Pichu) 0x92 // Kirby copy PK Flash Explosion (B) RUTO
138 [08A] // Green Greens (vs Team Kirby & Jigglypuff) 0x93 // Kirby copy Pikachu's Thunder (B) SAMI
139 [08B] // Icicle Mountain (vs Team Kirby & Ice Climbers) 0x94 // Kirby copy Pikachu's Thunder (B) SET
140 [08C] // Corneria (vs Team Fox & Falco) 0x95 // Kirby copy Pichu's Thunder (B) SETI
141 [08D] // Mute City (vs Team Fox & Captain Falcon) 0x96 // Kirby copy Pichu's Thunder (B) SHIG
142 [08E] // Pokémon Stadium (vs Team Pikachu & Pichu) 0x97 // Kirby copy Samus' Chargeshot (B) SK8R
143 [08F] // Pokémon Stadium (vs Team Pikachu & Jigglypuff) 0x98 // Kirby copy Sheik's Needle (thrown) (B) SLIM
144 [090] // Mushroom Kingdom I (vs Team Luigi & Dr. Mario) 0x99 // Kirby copy Sheik's Needle (ground) (B) SMOK
145 [091] // Onett (alt music) (vs Team Ness & Peach) 0x9A // Kirby copy Bowser's Flame (B) SNES
146 [092] // Fourside (vs Team Ness & Mewtwo) 0x9B // Kirby copy Mr. Game & Watch's Sausage (B) SNTA
147 [093] // Big Blue (mRider song) (vs Team Captain Falcon & Falco) 0x9C // (unique) SPUD
148 [094] // Battlefield (vs Team Bowser & Mewtwo) 0x9D // Yoshi's Tongue?? (B) STAR
149 [095] // Battlefield (vs Team Bowser & Peach) 0x9E // (unique) THOR
150 [096] // Battlefield (vs Team Bowser & Zelda) 0x9F // Coin THUG
151 [097] // Temple (vs Team Peach & Zelda) 0xA0 // (unique) TIRE
152 [098] // Great Bay (Saria's Song) (vs Team Zelda & Young Link) TLOZ
153 [099] // Temple (Emblem) (vs Team Zelda & Marth) POKEMON TNDO
154 [09A] // Great Bay (Unused) 0xA0 // Used for Random Pokemon value TOAD
0xA1 // Goldeen (Tosakinto) TOMM
CLASSIC (VS GIANT CHARACTER) 0xA2 // Chicorita UNO
155 [09B] // Princess Peach's Castle (vs Giant Mario) 0xA3 // Snorlax WALK
156 [09C] // Kongo Jungle (vs Giant DK) 0xA4 // Blastoise WART
157 [09D] // Great Bay (vs vs Giant Link) 0xA5 // Weezing (Matadogas) WARZ
158 [09E] // Yoshi's Story (vs Giant Yoshi) 0xA6 // Charizard (Lizardon) WITH
159 [09F] // Mushroom Kingdom II (vs Giant Luigi) 0xA7 // Moltres YETI
160 [0A0] // Mute City (vs Giant Captain Falcon) 0xA8 // Zapdos YNOT
161 [0A1] // Pokémon Stadium (vs Giant Jigglypuff) 0xA9 // Articuno ZAXO
162 [0A2] // Fountain of Dreams (vs Giant Bowser) 0xAA // Wobbuffet ZETA
163 [0A3] // Mushroom Kingdom I (vs Giant Dr. Mario) 0xAB // Scizor ZOD
164 [0A4] // Temple (vs Giant Young Link) 0xAC // Unown ZOE
0xAD // Entei WORM
CLASSIC (VS TEAM CHARACTER) 0xAE // Raikou GEEK
165 [0A5] // Rainbow Cruise (vs Team Mario) 0xAF // Suicune DUDE
166 [0A6] // Jungle Japes (vs Team Donkey Kong) 0xB0 // Bellossom (Kireihana) WYRN
167 [0A7] // Fountain of Dreams (vs Team Kirby) 0xB1 // Electrode (Marumine) BLOB
168 [0A8] // Mushroom Kingdom II (vs Team Luigi) 0xB2 // Lugia
169 [0A9] // Onett (vs Team Ness) 0xB3 // Ho-oh
170 [0AA] // Pokémon Stadium (vs Team Jigglypuff) 0xB4 // Ditto (Metamon)
171 [0AB] // Icicle Mountain (Unused) 0xB5 // Clefairy
172 [0AC] // Pokémon Stadium (vs Team Pichu) 0xB6 // Togepi
173 [0AD] // Flat Zone (vs Team Game & Watch) 0xB7 // Mew
174 [0AE] // Mute City (vs Team Captain Falcon) 0xB8 // Celebi
0xB9 // Staryu (Hitodeman)
CLASSIC FINAL 0xBA // Chansey
175 [0AF] // Battlefield (No items) (vs Metal Character) 0xBB // Porygon2
176 [0B0] // Final Destination (No items) (vs Master Hand) 0xBC // Cyndaquil (Hinoarashi)
0xBD // Marill
ALL-STAR 0xBE // Venusaur (Fushigibana)
177 [0B1] // Rainbow Cruise (vs Mario)
178 [0B2] // Kongo Jungle (vs Donkey Kong) POKEMON RELATED
179 [0B3] // Great Bay (vs Link) 0xBF // Chicorita's Leaf
180 [0B4] // Brinstar (vs Samus) 0xC0 // Blastoise's Water
181 [0B5] // Yoshi's Story (vs Yoshi) 0xC1 // Weezing's Gas
182 [0B6] // Green Greens (vs Kirby) 0xC2 // Weezing's Gas
183 [0B7] // Corneria (vs Fox) 0xC3 // Charizard's Breath
184 [0B8] // Pokémon Stadium (vs Pikachu) 0xC4 // Charizard's Breath
185 [0B9] // Mushroom Kingdom I (vs Luigi) 0xC5 // Charizard's Breath
186 [0BA] // Mute City (vs Captain Falcon) 0xC6 // Charizard's Breath
187 [0BB] // Onett (vs Ness) 0xC7 // Mini-Unowns
188 [0BC] // Poké Floats (vs Jigglypuff) 0xC8 // Lugia's Aeroblast
189 [0BD] // Icicle Mountain (vs Ice Climbers) 0xC9 // Lugia's Aeroblast
190 [0BE] // Princess Peach's Castle (vs Peach) 0xCA // Lugia's Aeroblast
191 [0BF] // Temple (vs Zelda) 0xCB // Ho-Oh's Flame
192 [0C0] // Fountain of Dreams (Emblem Music) (vs Marth) 0xCC // Staryu's Star
193 [0C1] // Battlefield (Poké Floats song) (vs Mewtwo) 0xCD // Healing Egg
194 [0C2] // Yoshi's Island (vs Bowser) 0xCE // Cyndaquil's Fire
195 [0C3] // Mushroom Kingdom II (Dr Mario Music) (vs Dr Mario) 0xCF //
196 [0C4] // Jungle Japes (vs Young Link)
197 [0C5] // Venom (vs Falco) MONSTERS 2
198 [0C6] // Fourside (vs Pichu) 0xD0 // Old Goomba (Old-Kuri)
199 [0C7] // Final Destination (Emblem Music) (vs Roy) 0xD1 // Target (Mato)
200 [0C8] // Flat Zone (vs Team Game & Watch) 0xD2 // Shyguy (Heiho)
201 [0C9] // Brinstar Depths (vs Gannondorf) 0xD3 // Koopa(Green) (Nokonoko)
0xD4 // Koopa(Red) (PataPata)
EVENT MATCH 0xD5 // Likelile
202 [0CA] // Battlefield (Event #01) (Trouble King) 0xD6 // Old Redead (old-lead) [invalid]
203 [0CB] // Temple (Event #18) (Link's Adventure) 0xD7 // Old Octorok(old-octa) [invalid]
204 [0CC] // Princess Peach's Castle (Event #03) (Bomb-fest) 0xD8 // Old Ottosea (old-otto)
205 [0CD] // Yoshi's Story (Event #04) (Dino-wrangling) 0xD9 // White Bear (whitebea)
206 [0CE] // Onett (Event #05) (Spare Change) 0xDA // Klap
207 [0CF] // Fountain of Dreams (Event #06) (Kirbys on Parade) 0xDB // Green Shell (zgshell)
208 [0D0] // Pokémon Stadium (Event #07) (Pokémon Battle) 0xDC // Red Shell (green act) (zrshell)
209 [0D1] // Brinstar (Event #08) (Hot Date on Brinstar)
210 [0D2] // Great Bay (Event #09) (Hide 'n' Sheik) STAGE SPECIFIC
211 [0D3] // Yoshi's Island (Event #10) (All-Star Match 1-1 /vs Mario) 0xDD // Tingle (on balloon)
212 [0D4] // Icicle Mountain (Event #11) (King of the Mountain) 0xDE // [Invalid]
213 [0D5] // Mute City (Event #12) (Seconds, Anyone?) 0xDF // [Invalid]
214 [0D6] // Rainbow Cruise (Event #13) (Yoshi's Egg) 0xE0 // [Invalid]
215 [0D7] // Goomba (Event #14) (Trophy Tussle 1) 0xE1 // Apple
216 [0D8] // Battlefield (Event #37) (Legendary Pokemon) 0xE2 // Healing Apple
217 [0D9] // Corneria (Event #16) (Kirby's Air-raid) 0xE3 // [Invalid]
218 [0DA] // Jungle Japes (F-Zero Music) (Event #17) (Bounty Hunters) 0xE4 // [Invalid]
219 [0DB] // Kongo Jungle (Event #2) (Lord of the Jungle) 0xE5 // [Invalid]
220 [0DC] // Final Destination (Event #19) (Peach's Peril) 0xE6 // Tool (Flatzone)
221 [0DD] // Brinstar (Event #20) (All-Star Match 2-1 /vs Samus) 0xE7 // [Invalid]
222 [0DE] // Princess Peach's Castle (Event #21) (Ice Breaker) 0xE8 // [Invalid]
223 [0DF] // Mushroom Kingdom II (Event #22) (Super Mario 128) 0xE9 // Birdo
224 [0E0] // Brinstar Depths (Event #27) (Cold Armor) 0xEA // Arwing Laser
225 [0E1] // Yoshi's Island (Event #24) (The Yoshi Herd) 0xEB // Great Fox's Laser
226 [0E2] // Fourside (DK Rap) (Event #25) (Gargantuans) 0xEC // Birdo's Egg
227 [0E3] // Entei (Event #26) (Trophy Tussle 2)
228 [0E4] // Venom (Event #23) (Slippy's Invention)
229 [0E5] // Green Greens (Event #28) (Puffballs Unite)
230 [0E6] // Temple (Great Bay music) (Event #29) (Triforce Gathering)
231 [0E7] // Fountain of Dreams (Event #15) (Girl Power)
232 [0E8] // Mushroom Kingdom I (Event #31) (Mario Bros. Madness)
233 [0E9] // Corneria (Many Arwings) (Event #32) (Target Acquired)
234 [0EA] // F //Zero Adventure Stage (Event #33) (Lethal Marathon)
235 [0EB] // Great Bay (Event #34) (Seven Years)
236 [0EC] // Dream Land (Event #35) (Time for a Checkup)
237 [0ED] // Fourside (Event #36) (Space Travelers 1-1)
238 [0EE] // Fountain of Dreams (Event #30) (All-Star Match 3-1 /vs Kirby)
239 [0EF] // Mushroom Kingdom II (Event #38) (Super Mario Bros. 2)
240 [0F0] // Pokémon Stadium (Event #39) (Jigglypuff Live!)
241 [0F1] // Temple (Emblem Music) (Event #40) (All-Star Match 4-1 /vs Marth)
242 [0F2] // Temple (Emblem Music) (Event #41) (En Garde!)
243 [0F3] // Poké Floats (Event #42) (Trouble King 2)
244 [0F4] // Big Blue (Event #43) (Birds of Prey)
245 [0F5] // Battlefield (Event #44) (Mewtwo Strikes!)
246 [0F6] // Flat Zone (Event #45) (Game and Watch Forever!)
247 [0F7] // Temple (Emblem Music) (Event #46) (Fire Emblem Pride)
248 [0F8] // Majora's Mask (Event #47) (Trophy Tussle 3)
249 [0F9] // Yoshi's Story (Event #48) (Pikachu and Pichu)
250 [0FA] // Mushroom Kingdom I (Event #49) (All-Star Match Deluxe 5-1 /vs Dr Mario)
251 [0FB] // Final Destination (Final Destination Match) (Event #50)
252 [0FC] // Final Destination (The Showdown) (Event #51)
253 [0FD] // Jungle Japes (DK Rap) (Event #10) (All-Star Match 1-2 /vs DK)
254 [0FE] // Yoshi's Story (Event #10) (All-Star Match 1-3 /vs Yoshi)
255 [0FF] // Princess Peach's Castle (Event #10) (All-Star Match 1-4 /vs Peach)
256 [100] // Rainbow Cruise (Event #10) (All-Star Match 1-5 /vs Bowser)
257 [101] // Great Bay (All-Star Match 2-2 /vs Link)
258 [102] // Temple (All-Star Match 2-3 /vs Zelda)
259 [103] // Mute City (All-Star Match 2-4 /vs Captain Falcon)
260 [104] // Corneria (All-Star Match 2-5 /vs Fox)
261 [105] // Pokémon Stadium (All-Star Match 3-2 /vs Pikachu)
262 [106] // Onett (All-Star Match 3-3 /vs Ness)
263 [107] // Icicle Mountain (All-Star Match 3-4 /vs Ice Climbers)
264 [108] // Mushroom Kingdom II (All-Star Match 4-2 /vs Luigi)
265 [109] // Poké Floats (All-Star Match 4-3 /vs Jigglypuff)
266 [10A] // Final Destination (All-Star Match 4-4 /vs Mewtwo)
267 [10B] // Flat Zone (All-Star Match 4-5 /vs Mr Game & Watch)
268 [10C] // Venom (All-Star Match Deluxe 5-2 /vs Falco)
269 [10D] // Pokémon Stadium (All-Star Match Deluxe 5-3 /vs Pichu)
270 [10E] // Great Bay (Saria's Song) (All-Star Match Deluxe 5-4 /vs Young Link)
271 [10F] // Temple (Emblem Music) (All-Star Match Deluxe 5-5 /vs Roy)
272 [110] // Final Destination (All-Star Match Deluxe 5-6 /vs Gannondorf)
273 [111] // Battlefield (Event #36) (Space Travelers 1-2)
UNLOCKABLES
274 [112] // Pokémon Stadium //Unlocking Jigglypuff
275 [113] // Final Destination //Unlocking Mewtwo
276 [114] // Mushroom Kingdom II //Unlocking Luigi
277 [115] // Fountain of Dreams //Unlocking Marth
278 [116] // Flat Zone //Unlocking Mr Game and Watch
279 [117] // Princess Peach's Castle (DR Mario song) //Unlocking Dr Mario
280 [118] // Final Destination (Great Bay music) //Unlocking Gannondorf
281 [119] // Great Bay (Saria's Song) //Unlocking Young Link
282 [11A] // Battlefield (Corneria Music) //Unlocking Falco
283 [11B] // Pokémon Stadium //Unlocking Pichu?
284 [11C] // Temple (Emblem Music) //Unlocking Roy?
MULTI-MAN MELEE
285 [11D] // Battlefield (Multi-Man Melee)


Stage Data Offsets

Static Stage Info Struct Starts at 0x8049E6C8, 0x778 bytes length (Ends at 0x8049EE3F)
0x00 Camera boundry - Left
0x04 Camera boundry - Right
0x08 Camera boundry - Top
0x0C Camera boundry - Bottom
0x10 Blast Zones/Camera X offset
0x14 Blast Zones/Camera Y offset
0x18 Blast Zones/Camera Vertical Tilt
0x1C Camera Pan on X axis "
"
0x20 Camera Tilt on Y axis
0x24 Camera tilt amount while grounded? Float. This changes the amount that the camera tilts based on players location relative to the ground
0x28 Camera Tracking Float. Higher increases characters visible.
0x2C Camera Non-Moving Zoom Float.
0x30 Camera Tracking Smoothness Float.
0x34 Camera Zoom to Character? 0 prevents movement
0x38 Max Camera Depth Adjusting brings the camera closer to the stage. Affects 0x40 of the Camera Entity
0x40 Camera Minimum Z Pos on Pause Assumed based on grGroundParam ordering
0x44 Camera Initial Z Pos on Pause Float
0x48 Camera Max Z Pos on Pause Float
0x4C Normal Camera X? Float. Used in zz_0224c4c. These are stored when you use Pause (to return to your previous camera position, presumably)
0x50 Normal Camera Y? Float. Used in zz_0224c64
0x54 Normal Camera Z? Float. Used in zz_0224c7c
0x58 Normal Camera Zoom Float. Used in zz_0224c94
0x5C Fixed Camera X Short.
0x60 Fixed Camera Y Short.
0x64 Fixed Camera Z / Depth Max Short.
0x68 Fixed Camera Zoom Float.
0x6C Fixed Camera Around X Float. Used in zz_0224cac
0x70 Fixed Camera Focus Point on X
0x74 Blast zone position - Left
0x78 Blast zone position - Right
0x7C Blast zone position - Top
0x80 Blast zone position - Bottom
0x84 Unk Set during Stages_TrophyThink. Drop Count?
0x88 Internal Stage ID See ID lists for Internal Stage ID
0x8C Unk Byte. Used in multiple stage initialization functions and set during ac_StageInfo_InitializeBigAreaWithBonePointers. Something related to respawn point flags
0x98 Music ID for current stage Changing this does nothing
0x9C Frame of Last Bomb Rain Drop
0x12C Unk Short. Set to 0 during ac_StageInfo_InitializeBigAreaWithBonePointers
0x178 Pointer to Stage Specific Function Always a li r3, 0 function just above the main render function.
0x17C Stage Specific Function Seems to be rendering on some stages, though for FD it's simply another li r3, 0. Possibly platform related?
0x180 Stage Entity Pointer 1
0x184 Stage Entity Pointer 2
0x18C Stage Entity Pointer 3
0x190 Stage Entity Pointer 4
0x280 Pointer to P1 Spawn Point Bone
0x284 Pointer to P2 Spawn Point Bone
0x288 Pointer to P3 Spawn Point Bone
0x28C Pointer to P4 Spawn Point Bone
0x290 Pointer to P1 Respawn Point Bone
0x294 Pointer to P2 Respawn Point Bone
0x298 Pointer to P3 Respawn Point Bone
0x29C Pointer to P4 Respawn Point Bone
0x4D4 Camera Limit Left-Top Pointer Stage info file
0x4D8 Camera Limit Right-Bottom Pointer Stage info file
0x4DC Blast Zone Left-Top Pointer Stage info file
0x4E0 Blast Zone Bottom-Right Pointer Stage info file
0x694 Unk Short. See zz_01c4a08
0x6A8 Itemdata Pointer From Stage Info file
0x6AC Coll_data Pointer
0x6B0 grGroundParam Pointer See ac_StageInfo_StageSizeLoad_grGroundParam in Symbol Map
0x6B4 ALDYakuAll Pointer
0x6B8 Map_ptcl Pointer
0x6BC Map_texg Pointer
0x6C0 Yakumono_Param Pointer "AtypicalComponent_Param" - Used for non-static stage objects, like the floating platform on Great Bay.
0x6C4 Map_plit Pointer
0x6CC Quake_model_set Pointer
0x6D0 Unk Byte. Set to -1 during ac_StageInfo_InitializeBigAreaWithBonePointers
0x6D2 Unk Byte. Set to 0 during ac_StageInfo_InitializeBigAreaWithBonePointers
0x6D4 Number of Targets Left in BtT Byte.
0x6D8 Unk Short. Set to 0 during ac_StageInfo_InitializeBigAreaWithBonePointers
0x6DC Unk Byte. Set to 0 during ac_StageInfo_InitializeBigAreaWithBonePointers
0x6E0 Homerun Contest Distance Float. This is a coordinate offset, rather than the distance normally seen.
0x6E4 Unk Flag Short.
0x724 Unk Float. Always -10000. Set during ac_StageInfo_InitializeBigAreaWithBonePointers
0x728 Unk Float.
0x740 Unk Short. Stored by zz_01c5784 and loaded by zz_01c5794


Entity Data Offsets

Offset Variable Comments
GObj Length 0x38 This is the same entity structure used by players, objects, and items
0x00 Entity Class Short.
0x02 p_link Byte.
0x03 gx_link Byte.
0x04 p_priority Byte.
0x05 gx_priority Byte.
0x06 obj_kind Byte. Set to 0xFF for NO REF.
0x07 data_kind Byte. Set to 0xFF for NO REF.
0x08 Next GObj data pointer Pointer.
0x0C Previous GObj data pointer Pointer.
0x10 Next GObj data pointer - GX Ordered Pointer.
0x14 Previous GObj data pointer - GX Ordered Pointer.
0x18 Pointer to GObjProc
0x1C GXCallback Render Function Always seems to be 0x80080E18(entity_t*, int code) for players and 0x8026EECC for items, called each frame
0x20 Render Priorities 64-bit bitmask. Only valid for a CObj referencing GObj. Each bit determines which priority level is rendered by that camera.
0x28 Pointer to HSD Object Typically CObj, JObj, LObj, or Fog
0x2C Pointer to Entity Data
0x30 Pointer to Destructor Function Always 0x8006DABC for players. 0x8026AE10 for Blaster, possibly same for other items.
0x34 Unk Linked List
GObjProc
0x00 Parent Pointer
0x04 Next Pointer
0x08 Prev Pointer
0x0C s_link Byte
0x0D Flags Byte
0x10 Parent GObj
0x14 Proc Function
Camera Struct Typically found at 80452C68
0x00 Pointer to Entity Struct
0x04 Camera Type Int. Index used by 803BCB18. 0 = Normal, 1 = Pause, 2 = One Player View (Off-Center), 3 = One Player View (Centered), 4 = Fixed, 5 = Crazy, 6 = Demo, 8 = Developer Locked
0x08 Background Color Byte. First 6 bits are hex color code
0x0C View Distance? Float
0x10 Distance to Background? Float
0x14 Pan Angle Float. + = Right, - = Left.
0x18 Tilt Angle Float. + = Up, - = Down.
0x1C Tilt Angle 2? Float. Only seems to tilt downward. Setting it causes the camera to jump to P1, if unpaused
0x2C Pan Around Point Angle? Float
0x30 Tilt Around Point Angle? Float
0x34 Depth Float. + = Further Away
0x3C Tilt Around Point Angle (Repeated) Float.
0x40 Depth (Repeated) Float. Upper Limit set by Stage Data.
0x44 Field of View Float
0x84 X Translation Float. + = Right, - = Left.
0x88 Y Translation Float. + = Up, - = Down.
0x3D8 Tracking X-Coordinate Float
0x3DC Tracking Y-Coordinate Float
0x3E0 Tracking Z-Coordinate Float
0x3E4 Type 8: X-Coordinate Float.
0x3E8 Type 8: Y-Coordinate Float.
0x3EC Type 8: Z-Coordinate Float.
Item Data Struct Length 0x1000
0x00 Pointer to Next Entity Struct
0x04 Pointer to Entity Struct
0x08 ??? 0x08 & 0x0C are either flags or garbage. Only set after something expires it seems.
0x0C ???
0x10 Item Type
0x14 Item Sub Type 0x08 = Player Spawned? 0x4 = Game Spawned?
0x1C Item Spawn Count
0x20 ??? Possibly flags. Seems to be set when an item has expired, like a laser.
0x28 State Index 0 = On Ground, 2 = Held, 3 = Airborne (This index is used for 0xBC function pointers)
0x2C Direction Float. -1 to 1
0x30 Direction (Repeated?) Float.
0x34 Projectile spin (amount per frame) Float. 0.0 for Fox's Laser, 200.0 for Mario's Fireball and Link's bomb. Projectiles don't spin when set to 0. Setting 200 results in rotation of about 0.523599 radians (30 degrees) per frame. Didn't bother checking how this float is actually converted to radians. The check for this value occurs in zz_0274658
0x38 Scale Float. 1 to 0.85 generally for things like Fox's Laser
0x40 X Velocity
0x44 Y Velocity
0x48 Z Velocity?
0x4C X Position
0x50 Y Position
0x54 Z Position?
0xB0 Direction (Repeated?)
0xB8 Pointer to Static Item Data Points to various function pointers related to the item
0xBC Pointer to More Static Item Data
0xC4 Pointer to a bunch of pointers in .dat 0x4 at this offset related to shyguy on hit attributes as well as Samus Charge Shot hitbox info
0xCC Pointer to Projectile Attributes in .dat
0x378 Start of Physics Struct 4 Sets of XYZ, as seen in Char Data
0x518 Pointer to "Owner" Character Data Does not change after item is thrown
0x574 rrggbbaa Set based on the following 4 Floats
0x578 Red Float. 0 - 255
0x57C Green Float. 0 - 255
0x580 Blue Float. 0 - 255
0x584 Alpha Float. 0 - 255 (255 = item is 100% of color, 0 = no color change)
0x588 Red Blink Rate Float
0x58C Blue Blink Rate Float
0x590 Green Blink Rate Float
0x594 Alpha Blink Rate Float
0x5C4 Enable Color 0x80 to Apply Color (Melee uses 0x91 according to similar Char Data)
0xCA0 Immediate Damage Taken? Float
0xC30 Hit Environment Flag codeline 8026da54 writes to this for energy based projectiles
0xC34 Hit Hurtbox Flag? codeline 80270b90 for projectile vs projectile and 80078114 for projectile vs player
0xC48
0xC4C
0xC64 Hit Reflect Box Flag? was 02 on reflect
0xC90
0xC9C Total Damage Taken Float
0xCF4 Pointer to Player Hit
0xD44 Time till Expiration Float, set by 8027515c
0xD48 Half of Time til Expiration Float, set by 8027516c
0xDD4
0xDDC GObj pointer
0xDEC Misc Flags/Timers? Used to know which stage samus' charge shot is in (0-7)
0xDF4 Misc Flags/Timers? Used to count how many times tingle dances before flying away / how may frames before spawning tingle
0xE00 Pointer to "Owner" Static Player Block
0xE0C Velocity to add/subtract?
0xE38 ??? Flag Byte. Used in Destroy/Heal function of Maxim Tomato
0xE3C ??? Offset Added to 0x80473A18 for (0x80473A18 + Offset) + 0x90 = 0
Static Item Table Struct
0x00
0x04
0x08
0x0C
0x10
0x14
0x18 Pointer to Should Item Be Destroyed Function?
Item Function Table Struct Length 0x3C
0x00 Pointer to Statedata This list of pointers for all items is just above the start of the Item Function Table
0x04 OnCreate (item_t*)
0x08 OnDestroy (item_t*) Not always used, but can be seen with items like the Box or acts as the Heal function for healing items
0x0C OnPickup (item_t*)
0x10 OnRelease(item_t*) This is your R+A throw away
0x14 OnThrow (item_t*)
0x18 OnHitCollision(item_t*) Functionally, this is actually a collision check, since it occurs multiple times before hits are actually registered. If this function returns 1, the item is 'instant on touch'
0x1C OnTakeDamage(item_t*) For Mr. Saturn, this only occurs when it collides with another Mr. Saturn
0x20 OnFallOffEdge (item_t *, item->item_data->0xB8)
0x24
0x28
0x2C 0x00000000
0x30
0x34
0x38
0x3C
Spawn Item Struct Length 0x58? Used for the SpawnEntity function
0x00 Pointer to Player Entity Not always applicable. Used for characters like Peach
0x04 Pointer to creator GOBJ
0x08 Item Type Index
0x0C Sub Type?
0x10 Unk Pointer Set to 0 by SpawnEntity; is never read. May be leftover garbage from the stack.
0x14 X (Horizontal) Position Float
0x18 Y (Vertical) Position Float
0x1C Z (Depth) Position Float
0x20 X Position (Repeated) Float
0x24 Y Position (Repeated) Float
0x28 Z Position (Repeated) Float
0x2C X Velocity Float
0x30 Y Velocity Float
0x34 Z Velocity Float
0x38 Angular Velocity Float. 1 or -1
0x44 0x80000000
0x48 "Is Spawned" Flag Set to 1 by SpawnItem
0x50 Pointer to Player Article Floating Points Used by Fox's Laser and presumably anything else modified by Article FP
0x54 Pointer to Player Character Data
Spawn Player Struct
0x00 Possible Length 0xC Int
0x05 Player Slot Byte
0x06 Unknown Byte. Generally 0xFF
0x07 Flags Byte. 0x2A = Normal, 0x80 = Nana, 0x00 = Player Clone, 0x29 = Multi-Man Fight


Hitbox Data Offsets

http://smashboards.com/threads/custom-subaction-event-character-data-modifications.429112/#post-20920399
*Hitbox Data Offsets Start* Size 0x138
0x0 Hitbox Status (0 is disabled, 1 (set to this value by the hitbox subaction event handler specifically at 0x800712B0), 2 initialized/enabled, 3 triggered) Doesn't actually revalidate hitboxes alone.
0x4 Hitbox Group Read via (subaction data + 1 >> 4) & 7. If it matches another previous hitbox, then data from 0x74+ is copied in. Essentially determines if a hitbox could multi-hit by having different hitbox groups. This will be compared against each Hitbox and if it matches, it'll overwrite the existing hitbox's 0x74+ with its own, which would be 0'ing out that group if a hitbox is newly initialized. Presumably, this would cause it to know on the following frame if a hitbox had hit or not, or if multiple are in the same group, only 1 can hit.
0x8 Damage (Unstaled, Int) For use in damage calculation as hitbox damage
0xC Damage (Staled, Float)
0x10 Z offset from bone (float)
0x14 Y offset from bone (float)
0x18 X offset from bone (float)
0x1C Size of hitbox (float)
0x20 Knockback Angle (int)
0x24 Knockback Growth (int)
0x28 Weight-Dependent Base Knockback(int)
0x2C
0x30 Element (int)
0x34 Shield Damage (int)
0x38 Hit SFX (int)
0x3C Hit SFX type (int)
0x40 Flags 1 Bit 7: Hits Grounded Foes; Bit 6: Hits Aerial Foes; Bit 5: Hitbox Interaction Bit 1; Bit 4: Hitbox Interaction Bit 2
0x41 Flags 1 Initialized to 0b????0000.
0x42 Flags 1 Initialized to 0b010?01?1.
0x43 Flags 1 Bit 5 is initialized to 0.
0x44 Flags 2 Copied in 0x800084fc.
0x45 Flags 2 Copied in 0x800084fc.
0x46 Flags 2
0x47 Flags 2
0x48 Bone Attachment Data Pointer
0x4C Z Position (float)
0x50 Y Position (float)
0x54 X Position (float)
0x58 Last Z Position (float)
0x5C Last Y Position (float)
0x60 Last X Position (float)
0x64 Last Collision Z Position (float)
0x68 Last Collision Y Position (float)
0x6C Last Collision X Position (float)
0x70
0x74 Pointer of Player Hit Repeats every 0x8 offset after this, 12 times. If pointer exists, then that player cannot be hit again by any of these hitboxes.
0x78 ??? Copied in 0x800084fc. Potentially part of 0x74
0x7C-0xB3 ??? Copied in 0x800084fc. Assembly suggests that they are potentially doublewords.
0xB4 (0xBC?) ??? Copied in 0x800084fc. Array of some 8 byte-sized structure, length 4.
0xD4-0x113 ??? Copied in 0x800084fc. Assembly suggests that they are potentially doublewords.
0x114 ??? Copied in 0x800084fc. Array of some 8 byte-sized structure, length 4.
0x134 ??? The highest bit is set to bit 3 of an out of bounds byte? Idk the code for this (near the end of 0x8007121C) doesn't make sense.


Gm Gover Offsets

Offset Hex Value Effect Comments
0x145D8 00000280 640 Horizontal Viewport Stretch
0x145DC 000001E0 480 Vertical Viewport Stretch
0x145F8 41200000 10 Near plane clipping
0x145FC 459C4000 5000 Far plane clipping
0x14600 41C7FFFF 24.999998 Screen Field of view
0x14604 3F9BBBBF 1.216667 Screen Aspect ratio


Hurtbox Offsets

Information courtesy of Tatata0 on the Melee Light Discord. Achilles: [...] Hurtboxes start at 0x11AC, spaced 0x4C apart. Hitbox0 starts 0x914 of char data offset, spaced 0x138 apart.
*Hurtbox Data Offsets Start*
0x0
0x4
0x8
0xC
0x10 Scale Hurtbox scale, uniform value that scales the entire capsule.
0x14
0x18
0x1C End 1 - X Position Global cooridnates for each end point, updated every frame.
0x20 End 1 - Y Position Changes only affect the hurtbox at the exact time they're updated in game time. Can be studied in develop mode pause menu.
0x24 End 1 - Z Position
0x28 End 2 - X Position
0x2C End 2 - Y Position
0x30 End 2 - Z Position
0x34
0x38
0x3C
0x40
0x41
0x42
0x43
0x44
0x45
0x46
0x47
0x48
0x4C


PlCo Offsets

Hex Default value Effect Comments
0x9FE0 3E8F5C29 0.28 joystick & c-stick x-axis dead zone
0x9FE4 3E8F5C29 0.28 joystick & c-stick y-axis dead zone
0x9FE8 3E800000 0.25 "joystick X needed for cardinal direction change button timer data
"
0x9FEC 3E800000 0.25 joystick Y needed for cardinal direction change button timer data
0x9FF0 3E99999A 0.30 L/R Analog dead zone
0x9FF4 3EB33333 0.35 L/R Analog stored when pressing Z
0x9FF8 3E800000 0.25 analog data needed for change button timer data (assumption)
0x9FFC 00000028 40 tech dead window (cannot tech for 40 frames after performing a tech)
0xA024 40800000 4 (dashing) frame at which fsmash interrupt window ends
0xA02C 41A00000 20 (dashing) frame at which dash attack interrupt window ends
0xA050 3F29999A 0.6625
0xA054 00000004 4 max frames since joystick cardinal direction change into Y-axis for tap jumping y joystick window for up-b and down-b (negated)
0xA0C4 00000007 7 l-cancel, frames before landing to hit L/R/Z
0xA0C8 40000000 2 l-cancel, animation speed division
0xA0D4 3C23D70A 0.01 Weight based knockback reduction multiplier? (Knockback related)(higher values = more reduction)
0xA0D8 40000000 2.0 Knockback formula value 1(?) (Higher = More knockback) (Affects at 0 percent, so not damage) (High values will insta-kill)
0xA0E0 3CF5C28F 0.03 Launch speed multiplier Velocity applied when taking knockback is knockback*this
0xA0E4 000000000 0.0 Knockback formula value 3(?)(Minimum knockback?) (Higher = More knockback) (Affects at 0 percent, so not damage) (High values will insta-kill)
0xA0E8 451C4000 2500.0 Maximum Knockback
0xA0EC 42C80000 100.0 Throw knockback multiplier(?) Weight used in Throw Knockback calculation
0xA0F0 3DCCCCCD 0.1 Knockback formula value 4(?)(Minimum knockback?) (Higher = More knockback) (Affects at 0 percent, so not damage) (High values will insta-kill)
0xA0F4 3D4CCCCD 0.05 Knockback formula value 5(?) (Higher = More knockback) (Affects at 0 percent, so not damage) (High values will insta-kill)
0xA0F8 41200000 10.0 WDSK Knockback multiplier (Higher = More knockback)
0xA0FC 3FB33333 1.4 Knockback formula value 6(?) (Higher = More knockback) (Affects at 0 percent, so not damage) (High values will insta-kill)(probably is more knockback values just ahead of this, but w/e, I spent about an hour mapping 10 knockback values)
0xA100 41900000 18 Knockback formula value 7 (Higher values increase knockback)
0xA134 3ECCCCCD 0.4 Hitstun multiplier
0xA138 41200000 10 Something to do with tumbling? (Hilarious)
0xA170 3F733333 0.95 V-cancelling knockback reduction
0xA174 41A00000 20 Max number of frames of hitlag
0xA178 3EAAAAAB 0.333333 damage multiplier for frames of hitlag
0xA17C 40400000 3 Base hitlag
0xA180 3F2AAAAB 0.666667 Hitlag multiplier on crouching
0xA184 3FC00000 1.5 Electric hitlag multiplier
0xA188 41900000 18 Max DI(?)
0xA1E4 3d50e560 0.051 Launch speed decay per frame
0xA1FC 3F0CCCCD 0.55
0xA230 41A00000 20 Window to tech after hitting L/R
0xA238 3DCCCCCD 0.1 Air Friction? (Seems to affect air friction while double jumping)
0xA240 42700000 60 Shield HP
0xA244 3E19999A 0.15 "
" (Affects the Shield's Minimum size until it breaks)
0xA248 41000000 8 Minimum frames holding shield (Dictates how many frames until the player can shield release.)
0xA258 3E0F5C29 0.14 Shield depletion rate
0xA25C 3D8F5C29 0.07 Shield regeneration rate
0xA260 41F00000 30 Shield reset when broken (Shield HP resets to this after being broken)
0xA264 3F800000 1 Shield Damage Multiplier? (Makes shield receive more damage)
0xA26C 3FC00000 1.5 Shield Stun Damage Multiplier (Something related to shield pushback with low damaging attacks)
0xA270 40000000 2 Base Shield Stun Shield Stun = (1 - [(0xA2C8 - 0xA2C4) * AShield + 0xA2C4]) * 0xA26C * dmg + 0xA270 [Note: Affects Shield Knockback]
0xA274 3E4CCCCD 0.2 Shield Knockback Conversion Multiplier Shield KB = 0xA274 * Shield Stun * 0xA29C for normal shield. 0xA274 * Shield Stun for powershield
0xA278 40000000 2 Digital shield pushback resistance?
0xA284 3F800000 1 Powershield projectile reflect duration
0xA288 3F400000 0.75 Powershield projectile reflect size ratio
0xA28C 3F000000 0.5 Reflected projectiles damage ratio (powershield)
0xA294 40400000 3 Digital Powershield duration? (Likely the frames the Powershield bubble is active for.)
0xA29C 3F19999A 0.6 Normal Shield Knockback Multiplier (non-powershield) Shield KB = 0xA274 * Shield Stun * 0xA29C for normal shield.
0xA2B4 3F800000 1 Lightshield size multiplier
0xA2B8 3F000000 0.5 Digital shield size multiplier
0xA2BC 3DCCCCCD 0.1 Lightshield damage multiplier? (Setting it too high makes shield gain HP!)
0xA2C0 3E99999A 0.3 Digital shield damage multiplier? (Setting it too high makes shield gain HP!)
0xA2C4 3D4CCCCD 0.05 Analog Shield Stun Mult. Value 1 Part of Shield Stun Formula
0xA2C8 3F333333 0.7 Analog Shield Stun Mult. Value 2 Part of Shield Stun Formula
0xA2CC 3DCCCCCD 0.1 Lightshield depletion rate
0xA2D0 40000000 2 Digital shield depletion rate
0xA2D4 42800000 64 Lightshield graphical size?
0xA2D8 43C80000 400 Digital shield graphical size?
0xA2F4 BF333333
min Y joystick for spotdodge
0xA2F8 00000004 4 max frames since joystick cardinal direction change into Y-axis for spot dodging
0xA30C 3e800000 0.25 `
0xA310 3e800000 0.25 Air Dodge Y-axis movement
0xA318 40466666 3.1 Air Dodge units of movement (Super Wavedashes galore! Will crash if it is set too high!)
0xA31C 3f666666 0.9 Air Dodge momentum multiplier per frame
0xA320 3F19999A 0.6
0xA324 41200000 10 Air Dodge(wavedash) landing lag
0xA428 3F000000 0.5 Air Dodge special fall horizontal tumble multiplier (How fast you tumble in special fall)(High values will cause it to hang with ALMOST no chance of game unfreezing)
0xA42C 3F000001 0.6 Shield angling speed (High values will cause it to hang)
0xA430 3E99999A 0.3 Player on player collision x-push (High values cause instant death) (How much momentum is given upon touching another player)
0xA438 3FB33333 1.4 Player on player collision z-push (How much momentum is given upon touching another player)
0xA448 40C00000 6 max frames since joystick cardinal direction change into Y-axis for shield dropping (doesn't SDI if hold count is greater than or equal to 6)
0xA444 3F28F5C3 0.66 Y joystick for shield dropping (negated)
0xA474 3E800000 0.25 Joystick position to drop from ledge
0xA478 0000001E 30 Frames before you can regrab the ledge
0xA47C 0000001E 30 Frames of ledge intangibility
0xA490 3F333333 0.7 minimum smash DI threshold formula number If (xjoy * xjoy) + (yjoy * yjoy) < (0.7 * 0.7) Apply no SDI
0xA494 00000004 4 cardinal direction change for Smash DI (greater than or equal to is false)
0xA498 40C00000 6 smash DI x/y coord movement normalization (joystick value multiplied by this) (SDI Strength)
0xA49C 40400000 3 Initial spawn platform player stretch timer (Keyframes of player stretching)
0xA4D4 3F4CCCCD 0.8 Blast zone death blast graphic scale
0xA4E0 0000003C 60 Death respawn timer (how long before you respawn)
0xA5E0 41100000 9 Grounded attack element reduction per input (frames)
0xA5EC 3F333333 0.7 Multiplier for damage in bury formula
0xA600 00000012 18 Grounded attack element frames of invincibilty on exit
0xA668 000001E0 480 super/poison mushroom timing (frames)
0xA66C 00000064 100 damage percent compare when obtaining mushroom
0xA670 000000B4 180 super/poison mushroom timing if > 100% damage (I think) (Setting this to zero will probably hang upon starting a game!)
0xA6A0 0000001E 30 Player is Stretched out at start of match. Both this and Platform compression timer run at same time. Both must be complete to leave platform
0xA6A4 0000001E 30 Initial spawn platform compression timer (Volume of spawn platform) Spawn platform is compressed to nothing
0xA748 43020000 130 disable walljumping after riding wall for this time (frames)
0xA74C 3F4CCCCD 0.8 joystick x axis min value for walljumping
0xA750 40400000 3 max frames since joystick cardinal direction change into x-axis for walljumping & spot dodging
0xA754 00000005 5 frames of "stick to wall" during walljump
0xA788 3C23D70A 0.01 Max amount of overlap between hitboxes to count as phantom If the overlap between a hitbox and hurtbox is less than or equal to this number, but greater than 0, hit will be phantom
0xA78C 0000003C 60 Magnifier loop damage loop time (frames)
0xA790 00000096 150 Magnifier loop damage max percent allowed Any percent higher and you won't take damage
0xA794 00000001 1 Magnifier loop damage
0xA7AC 00000258 600 Cloaking Device duration (frames)
0xA7C8 00000104 260 Meteor smash lower angle limit (Lowest angle for meteor smash)
0xA7CC 00000118 280 Meteor smash upper angle limit (Highest angle for meteor smash)
0xA7D0 00000008 8 Meteor cancel window timing(frames)
0xC768 48000000 Unknown Smash charge aura lighting/blinking (Very unexplored format)
0xC76C FFFF80AA 255,255,128,170 Smash charge aura color (rgb(a?))
0xCEB8 F2595900 242,89,89 Player 1 shield color (rgb(a?))
0xCEBC 6666FF00 102,102,255 Player 2 shield color (rgb(a?)) find me
0xCEC0 FFBF4000 255,19,244 Player 3 shield color (rgb(a?))
0xCEC4 4DE64D00 77,54,77 Player 4 shield color (rgb(a?))
0xCEC8 80808000 128,128,128 CPU shield color (rgb(a?))
0xCECC FFCCCC00 255,204,204 Player 1 death flash color (rgb(a?))
0xCED0 CCCCCC00 204,204,204 Player 2 death flash color (rgb(a?))
0xCED4 FFFFB200 255,255,178 Player 3 death flash color (rgb(a?))
0xCED8 CCFFCC00 204,255,204 Player 4 death flash color (rgb(a?))
0xCEDC FFFFFF00 255,255,255 CPU death flash color (rgb(a?))


Bones

Preliminary Info: https://smashboards.com/threads/custom-subaction-event-character-data-modifications.429112/#post-20920399
Bone lookup table entry Size 0x10
0x0 "Bone Table 1" pointer
0x4 "Bone Table 2" pointer
0x8 Bone Flags Float
0xC Bone Parent ID + 1 ?
0xD ???
0xE-0xF ???
Bone Table 1 Entry
0x0 (Parent Bone?) Pointer
0x4 Int
0x8 (Child Bone?) Bone Table Entry Pointer
0xC (Child Bone?) Bone Table Entry Pointer
0x10 (Child Bone?) Bone Table Entry Pointer
0x14 ??? Flags?
0x18 ???
0x1C "ZXY 1" Float[3]
0x28 Float? / 0x1C + 0x28 are sometimes set to the quaternion representation of the rotation (see 8000c630)
0x2C ZXY Bone Scale Float[3]
0x38 "ZXY 3" Float[3]
0x44 "ZXY 4"' Float[3]
0x50 "ZXY 5" Float[3]
0x5C "ZXY 6" Float[3]
0x68 "ZXY 7" Float[3]
0x74
0x78
0x7C
0x80
0x84 Animation Reference Table Entry? Pointer. Pointer to table entry of permanant dimensions/coordinates. This pointer can change between different animations (verify?).
Bone Table 2 Entry
Animation Reference Table Entry? Pointer. Pointer to table entry of permanant dimensions/coordinates. This pointer can change between different animations (verify?).
Animation Reference Table Entry


StartMelee Struct

Used by: 801a583c This struct sets up match related information 8045ac58 - Pointer to regular VS struct This is a static location, and each Special Mode has a different location for the struct of its own with the same layout
Struct Header
0x00
Set to -1 by 80167B50
0x01
Set to -1 by 80167B50
0x02
Set to -1 by 80167B50
0x03 0 Not initialized, alignment padding?
0x04 Unk
0x05
0x06
0x07
0x08
StartMelee Struct
0x00 0x1?00064C
0x04 0x83000000
0x0C 0x000000??
0x?? Byte
0x0D 0x6E Byte
0x0E Stage ID Short. Ex. 0x0008 = Yoshi's Story
0x1C 0x000000??
0x20 0xFFFFFFFF
0x24 0xFFFFFFFF
0x28 0x00000000
0x2C 0x3F800000 Float. Always 1.0?
0x30 0x3F800000 Float. Damage Ratio (Default 1.0)
0x34 Match Speed Float. Increases the speed of EVERYTHING Not set back to 1.0 for new match, permanent
0x38 Camera Change Function Pointer to the camera function associated Fixed Camera = 80165290, Normal = 0
0x3C 0x00000000
0x40 0x00000000
0x44 0x00000000
0x48 0x00000000
0x4C 0x00000000
0x50 0x00000000
0x54 0x00000000
0x58 0x00000000
0x5C 0x00000000
0x60 Player 1 Char ID Byte
0x61 Controller Port? Byte
0x62 Player 1 Stocks Byte
0x63 Costume Byte
0x64 0x00FF0000
0x68 0x09007800 Argument passed for 8016795C on first iteration.
0x6C 0x400004
0x6F Player 1 CPU Level Byte
0x70 0x00000000
0x74 0x00000000
0x78 Player 1 X Scale Float. Always 1.0, even in Tiny/Giant Melee
0x7C Player 1 Y Scale Float.
0x80 Player 1 Z Scale Float. Not set back to 1.0 for new match, permanent
0x84 - 0xA4 Player 2
0xA8 - 0xCC Player 3
0xD0 - 0xF4 Player 4
0xF8 - 0x11C Player 5
0x120 - 0x144 Player 6


Character Data Offsets

Offset Effect Comments Functional Explanations / Notes
Static Player Block Length 0xE90 Static block starting at 0x80453080 for P1, 80453F10 for P2, 80454dA0 for P3, 80455C30 for P4
0x00 Player State Int. 0x02 In-Game (includes dead). 0x00 Otherwise.
0x04 Player Character (External ID) Int.
0x08 Slot Type (Human, CPU, Demo, None) Int. (0x0000000 is HMN, 0x00000001 is CPU, 0x00000002 is Demo, 0x00000003 n/a)
0x0C Transformed Short. 0x0001 for normal, 0x0100 for transformed (Probably Zelda/Sheik only) 800326CC multiplies 1 * 0x0C if a character is transformed. So the formula for position = 0x10 + (0x0C * isTransformed), resulting in positions offsets 0x1C through 0x24 instead of 0x10 through 0x18
0x0E 0000? Short.
0x10 Nametag X (Horizontal) Position Float
0x14 Nametag Y (Vertical) Position Float
0x18 Nametag Z (Depth) Position Float
0x1C Transformed Player X Position Float. Set by initial spawn & respawns. If you're transformed, this acts as the player nametag position.
0x20 Transformed Player Y Position
0x24 Transformed Player Z Position Float.
0x28 Spawn Platform Final Position X Float. These are set the first time you respawn, unless a stage changes your spawn position
0x2C Spawn Platform Final Position Y Float.
0x30 Spawn Platform Final Position Z Float. Same as Spawn Position Z.
0x34 ?
0x38 ?
0x3C ? Int
0x40 Facing Direction Float.
0x44 Costume ID Byte. 00 = normal, 01 = red, 02 = blue, 03 = green (reflected in icon immediately)
0x45 ? Byte.
0x46 Controller Index Byte.
0x47 Byte. 00 = red, 01 = blue, 02 = green
0x48 Player ID Byte.
0x49 CPU Level Byte.
0x4A CPU Type Byte.
0x4B Handicap Value Byte.
0x4C ?
0x50 ? Float
0x54 Attack Ratio Float
0x58 Damage Defense Ratio Float
0x5C Model Scale Float. Scale that match was started with. Modifying does nothing.
0x60 Stamina HP Lost / Percentage - Currently Displayed Short
0x62 Starting Percentage / Nana's % Short. Used in modes like Sudden Death to set your starting Percentage. Otherwise Nana's or Sheik's %
0x64 Stamina HP Short
0x66 ? Short
0x68 Falls Int
0x6C Nana's Death Count Int
0x70 P1 KOs Int
0x74 P2 KOs Int
0x78 P3 KOs Int
0x7C P4 KOs Int
0x80 P5 KOs Int
0x84 P6 KOs Int
0x88 Match Frame Count Int. If -1 in zz_0035184, then it's set to MatchInfo->frame_count
0x8C Suicide Count Short
0x8E Stocks Byte
0x8F 00? Byte
0x90 Current Coins Int
0x94 Total Coins Collected Int
0x98 ?
0x9C ? Int.
0xA0 Joystick Direction Input Count Int. Incremented every time you move the joystick a different direction from neutral.
0xA4 ?
0xA8 Name Tag Slot ID
0xAC Bit Flags Byte. (Multi-Spawn - 0x40 = True) (Rumble Flag bit 24)
0xAD ?
0xAE ?
0xAF ?
0xB0 Pointer to Player Entity
0xB4 Pointer to Sub-Character Entity Used for followers, such as Nana
0xBC Stale Move Table Current Write Index Int. Zero-Indexed. Rolls over after 9. Increments after each write.
0xC0 Stale Move Index 0 1st Short is the move ID
0xC4 Stale Move Index 1 2nd Short is the # of action states that character has gone through this game
0xC8 Stale Move Index 2
0xCC Stale Move Index 3
0xD0 Stale Move Index 4
0xD4 Stale Move Index 5
0xD8 Stale Move Index 6
0xDC Stale Move Index 7
0xE0 Stale Move Index 8
0xE4 Stale Move Index 9
0xE8 Total Player Attack Count Int. Incremented by 1 with each attack, hit or miss
0xEC ? Int.
0x6A8 ? Accessed by 800362B4
0x66C Dash Forward Count
0x674 Jump Count
0x690 Ledge Grab Count
0x694 Taunt Count *
0x69C Shield Count
0xD18 Total Connected Attacks Int. Incremented when an attack lands
0xD1C Total Damage Received Float.
0xD20 Peak Damage Received Float. Reflects the highest amount of damage received in a single life
0xD28 Total Damage Given Float.
0xD38 Total Damage Received (Repeated?) Float.
START Player Entity Struct Length 0x38 Refers to values starting from the "data pointer," also known as a GObj
0x00 Entity Class Short. 0x0004 indicates a Player. Ex. 0x00040805
0x02 p_link Byte.
0x03 gx_link Byte. Index into 2 arrays (highest render priority & lowest) of various GObjs for rendering, essentially indicating object type.
0x04 P Priority Byte. Reference 8038ffb8
0x05 GX Render priority Byte. Reference 8039069C
0x06 obj_kind Byte. Set to 0xFF for NO REF.
0x07 data_kind Byte. Set to 0xFF for NO REF.
0x08 Next player's data pointer Data pointers are "daisy-chained," so each subsequent player is accessed from the data pointer of the previous
0x0C Previous player's data pointer For P2+, this points to P(n - 1)
0x10 Next player's data pointer - GX Ordered This points to the lower render priority GObj relative to this one.
0x14 Previous player's data pointer - GX Ordered This points to the higher render priority GObj relative to this one.
0x18 Pointer to GObjProc
0x1C GXCallback Render Function 0x80080E18(entity*, int code)
0x20 0x0000000000000000 64-bit bitmask. Not used by player GObj.
0x28 Pointer to JObj
0x2C Pointer to Player Character Data (see below table) Usually 0x60 away from the start of Player Entity Struct
0x30 Pointer to Destructor Function 0x8006DABC(entity*)
0x34 Pointer to Linked List
START Player Character Data Traditionally, the game points to this for anything related to Char Data, as sometimes the data does not immediately follow the entity struct
0x00 Entity Struct Pointer Points back to 0x00 of the Entity
0x04 Player Index (Internal ID) Word. Used for bone lookups, such as prior to spawning JObjs at a specified bone
0x08 Current Spawn # The current life is the nth character spawned since the beginning of the match
0x0C Player Slot Byte
0x0D Byte
0x0E Byte
0x0F Byte
0x10 Action State The value at this address indicates the action state of the character. Modifying this alone does nothing.
0x14 Animation State The animation to occur after the current one ends. Only has an effect if the current action state is set to loop.
0x18 0x155 Move table divider constant?
0x1C Shared Action State Table Pointer
0x20 Move Table Pointer Player dependent move table pointer
0x24 Character's action state hitbox/animation pointer
0x28 End of hitbox data pointer?
0x2C Facing direction Float. 1 is right, -1 is left
0x30 Facing direction Facing direction at the beginning of the current Action State
0x34 Player Scale Read on map load.
0x38 Player Scale Read on map load. Set according to 0x94. Affects physics. [Affects hitbox size?]
0x3C Player Depth Scale Read on map load. Changes width on Z-Axis
0x40 Pointer to Next Linked List Traditionally 0x00000000. THIS IS NOT ALWAYS CONSISTENT
0x44 Pointer to 0x40 / Pointer to Prev Linked List
0x48 Length of Linked List Always 0x40 (64)?
0x74 Acceleration X Float. The Acceleration vars are added to their respective Velocity (self-induced) counterparts once, then cleared immediately. Stick-influence functions typically use Acceleration to alter Velocity.
0x78 Acceleration Y Float.
0x7C Acceleration Z Float.
0x80 Horizontal velocity (self-induced) Changing this will only have an effect if the character is in the air.
0x84 Vertical Velocity (self-induced) Float. Positive = up, negative = down. Changes when the player jumps/falls of his own accord. Does not kill upward.
0x88 Depth velocity (self-induced) Float. Assume unused.
0x8C Horizontal velocity (attack-induced) Float. Positive = right, negative = left.
0x90 Vertical velocity (attack-induced) Float. Positive = up, negative = down. Only works when player is in the air. Changes when the player is attacked. Kills upward.
0x94 Depth velocity (attack-induced) Float. Assume unused.
0x98 Attacker shield knockback velocity X Float. Hitting a shield induces this type of velocity on the attacker.
0x9C Attacker shield knockback velocity Y Float.
0xA0 Attacker shield knockback velocity Z Float. Unused
0xA4 Unknown velocity X
0xA8 Unknown velocity Y
0xAC Unknown velocity Z
0xB0 X (Horizontal) position Float. Positive is right, negative is left. 00000000 is center.
0xB4 Y (Vertical) position Float.
0xB8 Z (Depth) position Float
0xBC X (Horizonal) position (Prev. Frame) Float
0xC0 Y (Vertical) position (Prev. Frame) Float
0xC4 Z (Depth) Position (Prev. Frame) Float
0xC8 X Delta (Curr - Prev Pos) Float
0xCC Y Delta (Curr - Prev Pos) Float
0xD0 Z Delta (Curr - Prev Pos) Float
0xE0 Ground/Air state 0x00000000 on ground, 0x00000001 in air. Changing does nothing.
0xE4 Ground Acceleration 1 (Added to 0xEC) Float. Added to Acceleration (0x74 - 0x7C) according to surface, and added to Ground Velocity when used.
0xE8 Ground Acceleration 2 Float. Similar to Ground Acceleration 1 in concept, but used differently: not added to Acceleration, thus shows no immediate effect on velocity. Has effect to self-induced velocity on 1 frame delay, as it's added to Ground Velocity.
0xEC Ground Velocity (ground, self-induced) Float. Self-induced. 1-dimensional ground velocity, which is converted to 3-dimensional velocity each grounded frame, according to surface angle. Replaces self-induced velocity with the converted vector.
0xF0 Ground knockback velocity (ground, attack-induced) Float. Attack-induced. 1-dimensional ground velocity, which is converted to 3-dimensional velocity each grounded frame
0xF4 Ground attacker shield knockback velocity Float. Shield hit induced. 1-dimensional ground velocity, which is converted to 3-dimensional velocity each grounded frame, according to surface angle.
0xF8 Player Nudge Velocity X Float. Horizontal velocity that grounded character gains when pushed by being close to another character.
0xFC Player Nudge Velocity Z Float. Depth velocity that grounded character gains when pushed by being close to another character.
0x100 ??? Float.
0x104 Unk Pointer
0x108 Unk Pointer
0x10C Pointer to .dat file in RAM "0x8 from the address located here contains a pointer to the start of the .dat (0x20 of the start of the .dat in RAM)
0x44 from the address located here contains a pointer to ledge grab box values. 0x10,014,0x18 are ledge grab box values"
Character Attributes These values are taken from the dat files and loaded directly into memory.
0x110 Walk initial velocity Float.
0x114 Walk acceleration
0x118 Walk terminal velocity
0x11C Slow walk max?
0x120 Mid walk point?
0x124 Fast walk min?
0x128 Ground friction
0x12C Dash initial velocity
0x130 Dash/run acceleration A ... Dash/Run Analog - Is used a multiplier for the Stick X position
0x134 Dash/run acceleration B Dash/Run Base - Is used a constant
0x138 Dash/run terminal velocity
0x13C Run animation scaling
0x140 Max RunBrake Frames
0x144 Grounded Max Horizontal Velocity
0x148 Jump startup time
0x14C Jump H initial velocity
0x150 Jump V initial velocity
0x154 Ground to air jump momentum multiplier
0x158 Jump H max velocity
0x15C Hop V initial velocity
0x160 Air jump V multiplier
0x164 Air jump H multiplier
0x168 Max Jumps
0x16C Gravity Float.
0x170 Terminal Velocity
0x174 Air mobility A
0x178 Air mobility B
0x17C Terminal Horizontal Air Velocity
0x180 Horizontal Air Friction
0x184 Fastfall Velocity
0x188 Aerial Max Horizontal Velocity Float
0x18C Jab-2 input window
0x190 Jab-3 input window
0x194 Frames to change direction on standing turn
0x198 Weight
0x19C Model Scaling
0x1A0 Initial Shield Size
0x1A4 Shield break initial velocity
0x1A8 Rapid jab window
0x1AC ???
0x1B0 ???
0x1B4 ???
0x1B8 Ledge Jump Horizontal Velocity
0x1BC Ledge Jump Vertical Velocity
0x1C0 Item Throw Velocity Multiplier
0x1C4 ???
0x1C8 ???
0x1CC ???
0x1D0 ???
0x1D4 ???
0x1D8 ???
0x1DC ???
0x1E0 ???
0x1E4 ???
0x1E8 ???
0x1EC ???
0x1F0 Kirby B Star Damage
0x1F4 Normal Landing Lag
0x1F8 N-air Landing Lag
0x1FC F-air Landing Lag
0x200 B-air Landing Lag
0x204 U-air Landing Lag
0x208 D-air Landing Lag
0x20C Victory Screen Window Model Scale
0x210 ???
0x214 Wall Jump Horizontal Velocity
0x218 Wall Jump Vertical Velocity
0x21C ???
0x220 ???
0x224 ???
0x228 ???
0x22C ???
0x230 ???
0x234 ???
0x238 ???
0x23C ???
0x240 ???
0x244 ???
0x248 ???
0x24C ???
0x250
0x254 ???
0x258 ???
0x25C Bubble ratio?
0x260 ???
0x264 ???
0x268 ???
0x26C ???
0x270 Respawn Platform Scale
0x274 ???
0x278 ???
0x27C Camera Zoom Target Bone?
0x280 ???
0x284 ???
0x288 ???
0x28C Special Jump Action = -1...?
0x290 Weight Dependent Throw Speed Flags Does not actually get read from here, only from the loaded character file itself.
*Character Attributes End*
0x2D4 Pointer to 0x2420 Used by functions that are checking Article FP data
0x2D8 Pointer to 0x2420 (Repeated)
0x3E4 Sub Action Event Timer (Start of subaction struct. Often referenced as a pointer in subaction event functions as r4)
0x3E8 Sub Action State Frame Counter Float, resets to 1 with each new action state.
0x3EC Subaction Syntax Data Position Pointer Pointer. Pointer points to the current position of the subaction event data (by the Word) as it is being read by the subaction event handler. The subaction event data is as it is stored in the Pl**.dat file.
0x3F0 Event Loop Count Int. Controlled by Event 0x0C
0x3F4 Event Return Pointer
0x3F8 Unk Int. Same functionality as 0x3F0.
0x3FC Unk
0x400 Pointer to 0x460
0x404 Pointer to 0x3C0
0x49C Pointer to 0x4B0 / Color Blend Pointer
0x4B4 rrggbbaa color Changing changes color.
0x4B8 Red value Float. Set between 0 and 255.
0x4BC Green value Float
0x4C0 Blue value Float
0x4C4 Alpha value Float
0x4C8 Red blink rate Float
0x4CC Green blink rate Float
0x4D0 Blue blink rate Float
0x4D4 Alpha blink rate Float
0x504 Color tint on/off Byte. Change to 0x80 or above to induce a color tint. Melee uses 0x91
0x58C Action state ID? read during ASC @ 80085cf8 Seems to be # of Subactions the character has
0x590 Action state data pointer I THINK this points to data related to current action state.
0x594 Team ID Most-significant bit appears to be related to air-to-ground momentum transfer, rest unknown
0x598 Unknown pointer
0x59C Pointer to portion of PlxxAJ.dat for current subaction
0x5A4 Action state data length
0x5E8 Bone lookup table (Points to a table of pointers to JObjs) http://smashboards.com/threads/custom-subaction-event-character-data-modifications.429112/#post-20920399 Note: The Table1 referenced here is incorrect - It's actually a JObj.
0x5F8 Item Held Bool?
0x60C Pointer to GFX to display
0x618 Player controller number Byte. Change this to have a different player control the character.
0x619 Costume ID Byte.
0x61A Color Overlay ID
0x61B Team ID Byte. 00 = red, 01 = blue, 02 = green
0x620 Analog Stick Data X Used to compare previous value vs. current value to differentiate "tilts" and "smashes"
0x624 Analog Stick Data Y
0x628 Prev Analog Stick X
0x62C Prev Analog Stick Y
0x630
0x634
0x638 C-Stick X-Axis Float (-1.0 to 1.0)
0x63C C-Stick Y-Axis Float (-1.0 to 1.0)
0x640 Flags
0x644
0x648
0x64C
0x650 Analog trigger data 43/140 minimum, 1.00 maximum. 0.35 if z held.
0x65C Digital Button Data See Global Addresses regarding Controller Data to better understand this.
0x660 Digital Button Data (Prev. Frame)
0x668 Instant Buttons
0x670 Frames Analog Stick Has Been in Tilt (X-Axis)
0x671 Frames Analog Stick Has Been in Tilt (Y-Axis)
0x672 Frames Analog Trigger Has Been Lightly Pressed
0x673 Frames Analog Stick Has Been in SmashTurn or Tilt (X-Axis)
0x674 Frames Analog Stick Has Been in SmashTurn or Tilt (Y-Axis)
0x675 Frames Analog Trigger Has Been Hard Pressed
0x676 Frames Since Analog Stick Was Moved From X-Axis
0x677 Frames Since Analog Stick Was Moved From Y-Axis
0x678 Frames Since Analog Trigger Was Moved
0x67C Frames Since A Button Was Pressed
0x67D Frames Since B Button Was Pressed
0x67E Frames Since X/Y Button Was Pressed
0x67F Frames Since Z Button Was Pressed
0x680 Frames Since L/R Digital Button Was Pressed
0x681 Frames Since DPad Up Button Was Pressed
0x682 Frames Since DPad Down Button Was Pressed
0x688 Unknown Byte Flag Modified in function at 0x8006abec; unknown.
0x689 Time since Special Button being pressed (not modifiable?) Modified in function at 0x8006abec; is based on the bool return value of a function pertaining to the B button. Byte. (0=just pressed; n = pressed n frames ago)
0x694 TopN X Translation Can be scaled by model scale
0x6A8 Unk (Y Offset from Double Jump position?) Float. Used for Peach, Mewtwo, Yoshi, Ness Jump calc.
0x6AC Unk Float. Seen using Peach's Umbrella
0x6F0 Pointer to 0x00 / Start of Physics Struct
0x6F4 X (Curr Frame) Float. Likely positions of TopN for physics related functions.
0x6F8 Y Float
0x6FC Z Float
0x700 X (Prev Frame) Float
0x704 Y Float
0x708 Z Float
0x70C X (Prev Frame) Float
0x710 Y Float
0x714 Z Float
0x718 X (Curr Frame) Float
0x71C Y Float
0x720 Z Float
0x724 Floor ID During Action State Set by 8004CBE8, set to -1 by 8004CBF4
0x726 Ledge grab box activation
0x72C Floor ID - Action State
0x738 Collision?
0x744 Ledge Grab Box - X Width
0x748 Ledge Grab Box - Y Displacement
0x74C Ledge Grab Box - Y Stretch
0x774 ECB top X
0x778 ECB top Y
0x77C ECB bottom X
0x780 ECB bottom Y
0x784 ECB right X
0x788 ECB right Y
0x78C ECB left X
0x790 ECB left Y
0x820 ECB Update Flags? 00000010 = Not ECB Bottom update
0x824 Environment Bitfield
0x828 Environment Bitfield Prev Frame
0x830 Position Last Landed X Float
0x834 Position Last Landed Y Float
0x83C Floor ID
0x840 Ground Type
0x83F Platform ID
0x842 Stage relation ID
0x843 Stage transformation ID Byte. Default is 00, Pokemon Stadium transformations change this value
0x844 Surface Normal X Outward pointing unit length surface normal, at the point where the character stands
0x848 Surface Normal Y
0x84C Surface Normal Z Probably always 0? But gets updated every time and is used used when the vector is normalized
0x850 Right Wall ID last hit
0x864 Left Wall ID last hit
0x878 Ceiling ID last hit
0x88C ECB Inactive Frames Int.
0x890 Pointer to Camera FP Data See 80086B80 for example
0x894 Action State Frame Counter Float, resets to 1 with each new action state.
0x898 ??? Float. Used for setting 0x3E8 during Event function
0x89C Speed of Current Animation Float. Changing does nothing.
0x8A4 ??? Knocks player out of action states when set to 40C00000
0x914 Hitbox 0 http://smashboards.com/threads/custom-subaction-event-character-data-modifications.429112/#post-20920399
0xA4C Hitbox 1 Note that the above thread lists as +0x60 position
0xB84 Hitbox 2
0xCBC Hitbox 3
0x1198 Player ID Hitbox cannot Hit? For some reason there is a flag in the hitbox subaction event that, when combined with this address being zero, prevents said hitbox from spawning (The code literally makes the parser skip over the hitbox.). See 0x8007121c. // Makes an exception for hitbox collision? Update: Pointer of the player who threw this character. Used for throw knockback collisions and enables hitboxes only when character is thrown.
0x119C Team ID stored here Somethign to do with Hitboxes and friendly fire?
0x119D Grabbing player's 0xC variable? The byte at 0xC of the grabbing player's block is stored here for the person who was grabbed
0x11A0 Hurtbox data start. https://smashboards.com/threads/melee-gecko-codes-guide-and-discussion.327311/page-44#post-21572283
0x1830 Percentage Float.
0x1838 Percentage for applied next frame Float
0x183C Damage Applied Int.
0x1840 0x00000000?
0x1844 Damage Direction Float. -1 to 1
0x1848 Knockback Angle Int. Normally 0x00000169 (Sakurai Angle)
0x184C 0x00000001?
0x1850 Force Applied Float.
0x1854 X Position of Hitbox Float
0x1858 Y Position of Hitbox Float
0x185C Z Position of Hitbox Float
0x1860 Unk Dependent on 0x1848
0x1864 Unk Dependent on 0x1848
0x1868 Damage Source Points to an entity
0x186C Last Applied Damage Float
0x18A4 ??? Float. Loaded with 80087454
0x18B4 Armor Acts like Yoshi's Double Jump Armor. Works on Grounded and Aerial! Float.
0x18B8 SDI horizontal offset
0x18BC SDI vertical offset
0x18C4 Slot of Last Damage Source 0 - 5, with 6 indicating a self-destruct
0x18D0 Type of hit 3 = normal hit, or shows Item ID used to damage.
0x18F4 Turn Timer
0x1910 Frames Spent Offscreen Goes up by 1 for every frame in offscreen bubble
0x195C Hitlag counter Float. Counts down by 1 every frame until reaching 0. The last frame of hitlag is the frame before it hits 0.
0x1968 Number of jumps used (8-bit) Gives more jumps if lowered.
0x1969 Number of walljumps used Read by the Walljump AS to determine how much velocity to give (800c2114)
0x1974 Item Held
0x1978 Item Related?
0x197C Bunny Hood
0x1988 Body State related Checked for != 0 in 800693AC and calls 8007B62C with a param of 0
0x198C Player body state (32-bit) 0 = normal, 1 = invulnerable, 2 = intangible
0x1990 Ledge invincibility timer Invincibility runs out when this hits 0. Modifiable.
0x1994 Halo invincibility timer Invincibility runs out when this hits 0. Modifiable.
0x1998 Shield size
0x199C Lightshield amount Float. 1 is hard shield. z-shield is 3D924921, or .071429
0x19A4 Shield Follow Bit
0x19C4 Shield Follow Bit
0x19E8 Reflect Follow Bit
0x1A40 Direction Absorb Was Hit From Float,
0x1A44 Damage Dealt to Absorb? Int.
0x1A4C Breakout countdowns Float. Grabs, sleep attack element, ground attack element. Player breaks out when this reaches 0.
0x1A58 Pointer to Grabbing Player
0x1A5C Linked Hitlag Partner When this character experiences hitlag, the linked hitlag partner is put to dependent hitlag with this character. Grabber / Grabbed characters are linked hitlag partners together, as are ICs performing joint sideb for example.
0x1A68 ??? Short. Set according to r4 in 8007e2d0
0x1A6A Grabbable Flag Short. Set according to r4 by 8007e2f4
0x1A94 CPU AI Type Int. Lower 8 bits is the type. Can be changed mid-game.
0x1A98 CPU Level Int. Can be changed midgame
0x1AA0 CPU Behaviour ID Determines generic "what to do" based on action states
0x1edc AI Button Commands Queued commands PlCo offsets E12C to E60C consist of button sequences
0x1F1C Pointer to 0x1F90
0x1F74 Pointer to 0x1F7C
0x2000 Lip Stick Flower Remainder Frames of Lip Stick Flower remaining
0x2004 Starman Invincibility Controls something with the duration of the sparkle after starman ends.
0x2008 Mushroom Duration (32-bit) After obtaining a either mushroom, default length gets stored in this address and is decremented by one every frame. Transforms back to regular size when reaches 0.
0x2014 Bunny Hood Duration Frames of Bunny Hood remaining
0x2028 Metal Box Duration Frames of Metal Box remaining
0x2030 Cloaking Device Duration Frames of Cloaking Device remaining
0x2064 Ledge Grab Cooldown Decrements by 1 each frame off the ledge
0x206C Total # of action states Increases by 1 with every new action state until match end.
0x2070 Word from 0x4 of Move Logic Table 8-Bit (is read in bits, but is stored with a word @ 8008968c (comes from action state change))
0x2071 Unknown 8-Bit (80037cdc reads this during actionstatechange)
0x2072 Unknown 8-Bit (80037ca4 and 80037c88 read this during actionstatechange)
0x2073 Unknown Byte (80037cf8 reads this during actionstatechange),
0x2074 Percentage as Int? Written to here (800896a4)
0x2084 ??? Byte. Seems to have something to do with how the Sakurai angle is calculated. See 0x8007ac9c.
0x208C Last attack landed
0x2090 Combo count (16-bit)
0x2098 Player tag countdown Displays the "P1", etc. tag when the countdown hits 1.
0x20A4 ??? Pointer to loaded by 800872B0
0x20C4 Pointer to 0x2138 These are part of some sort of linked list. The next value after pointers always seems to be 6.
0x20D4 Pointer to 0x1FDC
0x20D8 Pointer to 0x214C
0x20E8 Pointer to 0x1FE4
0x20EC Pointer to 0x2160
0x210C Wallride counter (8-bit) Set to 0 when contact with a wall (other conditions necessary)
0x2110 Wall location (float) Wall on left(1)/right(-1) of character
0x2114 Smash attack state 2 = charging smash, 3 = attacking with charged smash, 0 = all other times
0x2118 Smash attack charge frame counter
0x211C Frame number at which a fully charged smash initiates (float) default = 0x42700000 = 60 This isn't accurate for Fox. For him, it's a pointer to 0x2124. So, this is likely some kind of struct that needs to be better understood.
0x2120 Charged smash attack strength multiplier
0x2124 Charged smash attack animation speed multiplier (attack animation only)
0x2188 ???
0x218C ??? Int. Some kind of timer. Seems to count down on attacks and up during states like Wait
0x219C Current Action State IASA Function Pointer
0x21A0 Current Action State Animation Interrupt Pointer
0x21A4 Current Action State Physics Pointer
0x21A8 Current Action State Collision Interrupt Pointer
0x21AC Current Action State Camera Behavior Pointer
0x21BC Projectile Spawn Function Pointer 800E1178 is an example of this being set for Mario's Special N.
0x21C0 Pointer to function to execute on-hit Used by Link/YL dair and possibly others. Works for any grounded or aerial normal, but it seems not to be evaluated for specials.
0x21C4 Function to run on Shield Hit
0x21C8 Function to run on Reflect Hit
0x21D4 Function to run when player is hit
0x21D8 Function to run when player leaves hitlag
0x21DC Function to run when player is hit
0x21E4
0x21EC Function to run when player is thrown Function is run after kirby Up-Throw hit's the ground. blrl for this exists at 80069bd8 inside ActionStateChange
0x21F4 Function to run when white detection bubbles collide
0x21FC Collision bubble toggle (8-bit) 01=no collision bubbles (default), 02=collision bubbles & no char textures, 03=overlayed bubbles
0x2200 ??? Int. Checked == 0 in 800e4f48 and set to 0 if != 0
0x2204 Flag to Init Reflect Hitbox Checked for Mario Cape @ 800e1668, equals 1 when reflect hitbox should be active // Used during Fox/Falco's Shine at 800e65bc
0x220C ??? Flags Compared with 2 during Fox/Falco's shine at 800e65bc
0x2210 ??? Flags Byte. Mario's fireball spawn (800E0EE0) checks bit 24 == 1
0x2218 IASA Flags Byte. Checked and modified with 80093bc0 and 80093cd0. 0x80 = IASA enabled. Set by 80071950 (Subaction 0x5C)
0x2219 Various Flags Byte. 0x01 = Character's hitlag is dependent on another character. Dependent hitlag doesn't end when the hitlag frames run out. The dependency is broken by the another character nulling this flag, or by having dependency break flag set. 0x02 = Hitlag active since frame beginning, doesn't seem to be used much. 0x04 = Hitlag flag. 0x10 = Clear hitboxes on action-state change. 0x20 = Disable KOs. 0x40 = Disable stage collisions.
0x221A isFastFalling Flag Byte. Bit 31 checked and modified with 80093bc0 and 80093cd0. 0x10 and 0x20 are hitlag related flags. 0x40 = linked hitlag dependency break. This flag allows a character under dependent hitlag to remove the dependency.
0x221B Shield Enabled Bit Byte. Checked and modified with 80093bc0
0x221D Inputs Allowed Flags Seems to be related to whether inputs are allowed, it gets set to zero at code line 800868c0 which runs when READY HUD element is cleared. It is then set periodically over the course of a match
0x221E Model Visibility Flag rightmost bit = visibility bit
0x221F Bit Flags Byte. Get bit 24 with 80086B64. Get bit 28 with 800874BC. Get bit 29 with 8008730C.
0x2223 Metal Texture Toggle (8-bit) 01=on (like getting the metal box item), 00=off
0x2224 Can walljump (8-bit) 01 = can walljump, 00 = can't walljump
0x2227 Bit flags Byte.
0x222C Misc Flags // Bowser Flame Degradation Count // Marth Side B Refresh // Peach Float // Luigi Cyclone Flag Compared to 0 for transitioning to Action State 14 during Fox/Falco Shine @ 800e65bc, is also expected to be 0 prior in the function // Peach Float Flag reset @ (0x80069934)
0x2230 Flags Used as a check in DrMario's pill spawn function @ 0x800E0FD0 as an index for the current pill color
0x223C Original Held Item Pointer Pointer to an Item GObj When Peach's Parasol is removed by 802BDB94, this is swapped into the Held Item. Presumably for when Up-Bing with an Item
0x2324 ??? Appears to be a value or duration of sorts. See @0x800768a0
0x2328 ??? Directly related to Hitbox.0x04. When creating a hitbox, if what that value gets set to is equal to the value in this memory address, it will trigger a function that copies unknown parts of the hitbox.See @0x800768a0
0x2290 Misc Special Flags? Used for Kirby's vertical velocity boost on side B.Reset to 0 when Also used to count other things relating to frames (but as integers): Shield Time, Grabbed Time, Time Left on Spawn Platform, Time left to lie on Ground
0x2330 Hammer Duration Frames of Hammer remaining Also used to count other things relating to frames (but as integers): Shield Time, Grabbed Time, Time Left on Spawn Platform, Time left to lie on Ground
0x2340 Misc Flags // Hitstun counter // Short Hop Identifier // PS Count Float. Frames of hitstun left. Decremented by 1 every frame of game. // 0 = full hop, 1 = short hop
0x2342 Misc Flags Byte. Used for flags, like Cliff Grab.
0x2344 Misc Flags // Shield Location from Body Float. 0 = center of body, 1 = furthest amount away
0x2348 Shield Angle Float, degrees. 0 = in front of, 90 = up, 180 = behind, 270 = down (offset +10 degrees?)
0x234C Misc Flags // Times Walljumped
0x2354 Landing Lag Divisor Float. Used to calclulate landing lag. Dividend is usually 30, so 30 divided by this value gives you the number the animation speed will be DIVIDED by. Quotient smaller numbers = longer animation
0x2358 Act out of Landing Flag / ?? Read upon landing at 80096d68 and compared at 800d5db0. If 0, cannot act out of landing. If 1, can act out of landing after 4 frames. (Used to differentiate between a specialland and normal land?) // OLD DESCRIPTION: Float. Used for a comparison @ 80093c94 and 80093cd0
0x2420 Start of Per Character Article Floating Points Doesn't appear to be 1:1 with Dantarion's offsets, but mostly the same. Not all changes work. Plus they reset whenever a new spawn of the character occurs.


Character Attributes

Character Attributes

Subaction Events

Subaction 0x2C: Hitbox Length 0x14
0x0 Data "Bits 25-23: Hitbox ID
Bits 22-20: Hitbox Group # (two hitboxes with different groups are able to hit a character)
Bit 19: Hit only your grabbed target (bugged, read note)
Bits 18-11: Target Bone;
Bit 10: Use Common Bone ID (loads a certain ID based on character)
Bit 9-0: Damage (max 1023%)" "For bits 22-20, Hitbox Group #1 will only stop other Group 1 hitboxes from hitting the SAME character
Bit 19 is bugged, and will only work if you put a hitbox directly before this one. The reason: the hitbox Event reads this bit from offset 0x15 which is outside the length of this Event." Verified by reading the assembly, but it's more or less matching up with what is here: https://smashboards.com/threads/melee-hacks-and-you-new-hackers-start-here-in-the-op.247119/page-48#post-10769744
0x4 Size 2 bytes, converted to 256th precision float
0x6 Z Offset 2 bytes, converted to 256th precision float
0x8 Y Offset 2 bytes, converted to 256th precision float
0xA X Offset 2 bytes, converted to 256th precision float
0xC Data "Word. Bits 31-23: Angle
Bits 22-14: Knockback Growth
Bits 13-5: Weight Dependent Set Knockback
Bit 4: Item hit interaction
Bit 3: Hitbox appears only when thrown
Bit 2: Ignore model scale
Bit 1: Hitbox interaction
Bit 0: Rebound flag" "Bit 3 is on some of hitboxes called on the DamageFly sub actions
Bit 4 data is transferred to any item/article on hurtbox collision. If the bit of a hitbox that breaks metal box is 1, the attacker gets Metal. If 0, they don't. "
0x10 Data "Word. Bits 31-23 Base Knockback
Bits 22-18: Element
Bit 17-10: Shield damage. 1 byte, signed integer.
Bit 9-7: Hit SFX
Bit 6-2: Hit SFX Type
Bit 1: Hit grounded fighters
Bit 0: Hit aerial fighters" Negative shield damage means the hitbox will do that much less shield damage.


MnSlChr Offsets

Offset Hex Value Effect Comments
0x50E4 3F11EB85 0.57 CSS Puck Lighting Effect 1
0x50E8 3F11EB85 0.57 CSS Puck Lighting Effect 2
0x50EC 3F11EB85 0.57 CSS Puck Lighting Effect 3
0x5170 00000001 1 CSS Screen layer focus? (More knowledge about the organization of the CSS Screen and layers is required)
0x5174 00000280 640 CSS layer Horizontal Stretch
0x5178 000001E0 480 CSS layer Vertical Stretch
0x5180 00000280 640 CSS Layer height? (if lowered, part of or all of screen is black)
0x519C 41C7FFFF 24.999998 CSS Screen Field of view
0x51A0 3F9BBBBF 1.216667 CSS Screen Aspect ratio / Horizontal compression


Debug Menu Map

Effect Comments ID Character ID Stage
0 Captain Falcon 0 Dummy
0x3FA258 Language 0 = JP, 1 = US 1 Donkey Kong 1 Test
0x3FA25C Publicity (Crowd Noise) 0 = Off, 1 = On 2 Fox 2 Fountain of Dreams
0x3FA260 Stage 3 Mr. Game & Watch 3 Pokemon Stadium
0x3FA264 FFA/Teams 0 = FFA, 1 = Teams 4 Kirby 4 Princess Peach's Castle
0x3FA268 P1 Character 5 Bowser 5 Kongo Jungle
0x3FA26C P2 Character 6 Link 6 Brinstar
0x3FA270 P3 Character 7 Luigi 7 Corneria
0x3FA274 P4 Character 8 Mario 8 Yoshi's Story
0x3FA278 "All Character" 9 Marth 9 Onett
0x3FA27C P1 Kind 0 = Human, 1 = CPU, 2 = Demo, 3 = None A Mewtwo A Mute City
0x3FA280 P2 Kind B Ness B Rainbow Cruise
0x3FA284 P3 Kind C Peach C Jungle Japes
0x3FA288 P4 Kind D Pikachu D Great Bay
0x3FA28C "All Kind" E Ice Climbers E Hyrule Temple
0x3FA290 P1 Color F Samus F Brinstar Depths
0x3FA294 P2 Color 10 Jigglypuff 10 Yoshi's Island
0x3FA298 P3 Color 11 Yoshi 11 Green Greens
0x3FA29C P4 Color 12 Zelda 12 Fourside
0x3FA2A0 P1 Subcolor 13 Sheik 13 Mushroom Kingdom
0x3FA2A4 P2 Subcolor 14 Falco 14 Mushroom Kingdom II
0x3FA2A8 P3 Subcolor 15 Young Link 15 Akaneia (Freeze)
0x3FA2AC P4 Subcolor 16 Dr. Mario 16 Venom
0x3FA2B0 P1 Team 0 = Red, 1 = Green, 2 = Blue 17 Roy 17 Poke Floats
0x3FA2B4 P2 Team 18 Pichu 18 Big Blue
0x3FA2B8 P3 Team 19 Ganondorf 19 Icicle Mountain
0x3FA2BC P4 Team 1A Master Hand 1A Icetop (Freeze)
1B Male Wireframe 1B Flat Zone
0x3FA320 Game Mode 0 = Time, 1 = Stock 1C Female Wireframe 1C Dreamland 64
0x3FA324 Time (minutes) 1D Giga Bowser 1D Yoshi's Island 64
0x3FA328 Time (seconds) 1E Crazy Hand 1E Kongo Jungle 64
0x3FA32C Stock Count 1F Sandbag 1F Battlefield
Item Frequency 0 = None, 1 = Very Low, 2 = Low, 3 = Medium, 4 = High, 5 = Very High 20 Popo 20 Final Destination
21 None
0xBDD300 Dairantou Selected Index Selected index in the "Dairantou" debug menu (use Kind for none)


Free Memory

Region Start Region End Amount Description
0x80001800 0x80002FFF 17FF Free memory in all GCN/Wii games (NOTE: Gecko codehandler gets injected at 0x80001800, approx. 0xba8 in size)
0x8022887c 0x8022892c B0 Unused code function (nop 801a4f84 and 801a5070)
0x8032c848 0x8032c880 38 Unused code function (nop 801a4f84 and 801a5070)
0x8032dcb0 0x8032ddbc 10C Unused code function (nop 801a4f84 and 801a5070)
0x8032ed8c 0x8032ee90 104 Unused code function (nop 801a4f84 and 801a5070)
0x80393a5c 0x80393c10 1B4 Unused code function (nop 801a4f84 and 801a5070)
0x803fa3e8 0x803fc2ec 1F04 Debug menu tables/strings (only use this if you don't mind overwriting the debug menu!)
0x803fc420 0x803fdc1c 17FC Debug menu tables/strings (only use this if you don't mind overwriting the debug menu!)
"
" "
"
0x803001DC 0x80301E44 1C68 Probably Debug Menu functions (More debug mode code is in places higher than this)
0x804d36a0 0x804d3700 60 Color table for develop mode graphics, only use if it's ok to break this

Game Navigation

General
Controls & Notation
HUD
Game Mechanics
FAQ
Universal Strategy
Netplay
Glossary
Links
Metagame
Stages
Tiers
Controller Meta
Archived Information
Gecko Codes
Disc Files
Characters
Dr. Mario
Mario
Luigi
Bowser
Peach
Yoshi
Donkey Kong
Captain Falcon
Ganondorf
Falco
Fox
Ness
Ice Climbers
Kirby
Samus
Zelda
Sheik
Link
Young Link
Pichu
Pikachu
Jigglypuff
Mewtwo
Mr. Game and Watch
Marth
Roy
Non-Playable Characters
Male Wireframe
Female Wireframe
Master Hand
Crazy Hand
Giga Bowser
Sandbag