AddCSLuaFile()

g64types = {}

g64types.MARIO_PUNCHING = 0x00100000
g64types.MARIO_KICKING = 0x00200000
g64types.MARIO_TRIPPING = 0x00400000

g64types.DefaultMarioColors = {
	{0  , 0  , 255},							   -- Overalls
	{255, 0  , 0  },							   -- Shirt/Hat
	{254, 193, 121},			                   -- Skin
	{114, 28 , 14 },			                   -- Hair	
	{255, 255, 255},							   -- Gloves
	{115, 6  , 0  },			                   -- Shoes
}

g64types.SM64TerrainType = {
	TERRAIN_STONE                    	 = 0x0000,
	TERRAIN_GRASS                        = 0x0001,
	TERRAIN_SNOW                         = 0x0002,
	TERRAIN_SAND               			 = 0x0003,
	TERRAIN_SPOOKY                	     = 0x0004,
	TERRAIN_WATER                  		 = 0x0005,
	TERRAIN_SLIDE              		     = 0x0006
}

g64types.SM64SurfaceType = {
	SURFACE_DEFAULT                      = 0x0000, -- Environment default
	SURFACE_BURNING                      = 0x0001, -- Lava / Frostbite (in SL), but is used mostly for Lava
	SURFACE_0004                         = 0x0004, -- Unused, has no function and has parameters
	SURFACE_HANGABLE                     = 0x0005, -- Ceiling that Mario can climb on
	SURFACE_SLOW                         = 0x0009, -- Slow down Mario, unused
	SURFACE_DEATH_PLANE                  = 0x000A, -- Death floor
	SURFACE_CLOSE_CAMERA                 = 0x000B, -- Close camera
	SURFACE_WATER                        = 0x000D, -- Water, has no action, used on some waterboxes below
	SURFACE_FLOWING_WATER                = 0x000E, -- Water (flowing), has parameters
	SURFACE_INTANGIBLE                   = 0x0012, -- Intangible (Separates BBH mansion from merry-go-round, for room usage)
	SURFACE_VERY_SLIPPERY                = 0x0013, -- Very slippery, mostly used for slides
	SURFACE_SLIPPERY                     = 0x0014, -- Slippery
	SURFACE_NOT_SLIPPERY                 = 0x0015, -- Non-slippery, climbable
	SURFACE_TTM_VINES                    = 0x0016, -- TTM vines, has no action defined
	SURFACE_MGR_MUSIC                    = 0x001A, -- Plays the Merry go round music, see handle_merry_go_round_music in bbh_merry_go_round.inc.c for more details
	SURFACE_INSTANT_WARP_1B              = 0x001B, -- Instant warp to another area, used to warp between areas in WDW and the endless stairs to warp back
	SURFACE_INSTANT_WARP_1C              = 0x001C, -- Instant warp to another area, used to warp between areas in WDW
	SURFACE_INSTANT_WARP_1D              = 0x001D, -- Instant warp to another area, used to warp between areas in DDD, SSL and TTM
	SURFACE_INSTANT_WARP_1E              = 0x001E, -- Instant warp to another area, used to warp between areas in DDD, SSL and TTM
	SURFACE_SHALLOW_QUICKSAND            = 0x0021, -- Shallow Quicksand (depth of 10 units)
	SURFACE_DEEP_QUICKSAND               = 0x0022, -- Quicksand (lethal, slow, depth of 160 units)
	SURFACE_INSTANT_QUICKSAND            = 0x0023, -- Quicksand (lethal, instant)
	SURFACE_DEEP_MOVING_QUICKSAND        = 0x0024, -- Moving quicksand (flowing, depth of 160 units)
	SURFACE_SHALLOW_MOVING_QUICKSAND     = 0x0025, -- Moving quicksand (flowing, depth of 25 units)
	SURFACE_QUICKSAND                    = 0x0026, -- Moving quicksand (60 units)
	SURFACE_MOVING_QUICKSAND             = 0x0027, -- Moving quicksand (flowing, depth of 60 units)
	SURFACE_WALL_MISC                    = 0x0028, -- Used for some walls, Cannon to adjust the camera, and some objects like Warp Pipe
	SURFACE_NOISE_DEFAULT                = 0x0029, -- Default floor with noise
	SURFACE_NOISE_SLIPPERY               = 0x002A, -- Slippery floor with noise
	SURFACE_HORIZONTAL_WIND              = 0x002C, -- Horizontal wind, has parameters
	SURFACE_INSTANT_MOVING_QUICKSAND     = 0x002D, -- Quicksand (lethal, flowing)
	SURFACE_ICE                          = 0x002E, -- Slippery Ice, in snow levels and THI's water floor
	SURFACE_LOOK_UP_WARP                 = 0x002F, -- Look up and warp (Wing cap entrance)
	SURFACE_HARD                         = 0x0030, -- Hard floor (Always has fall damage)
	SURFACE_WARP                         = 0x0032, -- Surface warp
	SURFACE_TIMER_START                  = 0x0033, -- Timer start (Peach's secret slide)
	SURFACE_TIMER_END                    = 0x0034, -- Timer stop (Peach's secret slide)
	SURFACE_HARD_SLIPPERY                = 0x0035, -- Hard and slippery (Always has fall damage)
	SURFACE_HARD_VERY_SLIPPERY           = 0x0036, -- Hard and very slippery (Always has fall damage)
	SURFACE_HARD_NOT_SLIPPERY            = 0x0037, -- Hard and Non-slippery (Always has fall damage)
	SURFACE_VERTICAL_WIND                = 0x0038, -- Death at bottom with vertical wind
	SURFACE_BOSS_FIGHT_CAMERA            = 0x0065, -- Wide camera for BOB and WF bosses
	SURFACE_CAMERA_FREE_ROAM             = 0x0066, -- Free roam camera for THI and TTC
	SURFACE_THI3_WALLKICK                = 0x0068, -- Surface where there's a wall kick section in THI 3rd area, has no action defined
	SURFACE_CAMERA_8_DIR                 = 0x0069, -- Surface that enables far camera for platforms, used in THI
	SURFACE_CAMERA_MIDDLE                = 0x006E, -- Surface camera that returns to the middle, used on the 4 pillars of SSL
	SURFACE_CAMERA_ROTATE_RIGHT          = 0x006F, -- Surface camera that rotates to the right (Bowser 1 & THI)
	SURFACE_CAMERA_ROTATE_LEFT           = 0x0070, -- Surface camera that rotates to the left (BOB & TTM)
	SURFACE_CAMERA_BOUNDARY              = 0x0072, -- Intangible Area, only used to restrict camera movement
	SURFACE_NOISE_VERY_SLIPPERY_73       = 0x0073, -- Very slippery floor with noise, unused
	SURFACE_NOISE_VERY_SLIPPERY_74       = 0x0074, -- Very slippery floor with noise, unused
	SURFACE_NOISE_VERY_SLIPPERY          = 0x0075, -- Very slippery floor with noise, used in CCM
	SURFACE_NO_CAM_COLLISION             = 0x0076, -- Surface with no cam collision flag
	SURFACE_NO_CAM_COLLISION_77          = 0x0077, -- Surface with no cam collision flag, unused
	SURFACE_NO_CAM_COL_VERY_SLIPPERY     = 0x0078, -- Surface with no cam collision flag, very slippery with noise (THI)
	SURFACE_NO_CAM_COL_SLIPPERY          = 0x0079, -- Surface with no cam collision flag, slippery with noise (CCM, PSS and TTM slides)
	SURFACE_SWITCH                       = 0x007A, -- Surface with no cam collision flag, non-slippery with noise, used by switches and Dorrie
	SURFACE_VANISH_CAP_WALLS             = 0x007B, -- Vanish cap walls, pass through them with Vanish Cap
	SURFACE_PAINTING_WOBBLE_A6           = 0x00A6, -- Painting wobble (BOB Left)
	SURFACE_PAINTING_WOBBLE_A7           = 0x00A7, -- Painting wobble (BOB Middle)
	SURFACE_PAINTING_WOBBLE_A8           = 0x00A8, -- Painting wobble (BOB Right)
	SURFACE_PAINTING_WOBBLE_A9           = 0x00A9, -- Painting wobble (CCM Left)
	SURFACE_PAINTING_WOBBLE_AA           = 0x00AA, -- Painting wobble (CCM Middle)
	SURFACE_PAINTING_WOBBLE_AB           = 0x00AB, -- Painting wobble (CCM Right)
	SURFACE_PAINTING_WOBBLE_AC           = 0x00AC, -- Painting wobble (WF Left)
	SURFACE_PAINTING_WOBBLE_AD           = 0x00AD, -- Painting wobble (WF Middle)
	SURFACE_PAINTING_WOBBLE_AE           = 0x00AE, -- Painting wobble (WF Right)
	SURFACE_PAINTING_WOBBLE_AF           = 0x00AF, -- Painting wobble (JRB Left)
	SURFACE_PAINTING_WOBBLE_B0           = 0x00B0, -- Painting wobble (JRB Middle)
	SURFACE_PAINTING_WOBBLE_B1           = 0x00B1, -- Painting wobble (JRB Right)
	SURFACE_PAINTING_WOBBLE_B2           = 0x00B2, -- Painting wobble (LLL Left)
	SURFACE_PAINTING_WOBBLE_B3           = 0x00B3, -- Painting wobble (LLL Middle)
	SURFACE_PAINTING_WOBBLE_B4           = 0x00B4, -- Painting wobble (LLL Right)
	SURFACE_PAINTING_WOBBLE_B5           = 0x00B5, -- Painting wobble (SSL Left)
	SURFACE_PAINTING_WOBBLE_B6           = 0x00B6, -- Painting wobble (SSL Middle)
	SURFACE_PAINTING_WOBBLE_B7           = 0x00B7, -- Painting wobble (SSL Right)
	SURFACE_PAINTING_WOBBLE_B8           = 0x00B8, -- Painting wobble (Unused - Left)
	SURFACE_PAINTING_WOBBLE_B9           = 0x00B9, -- Painting wobble (Unused - Middle)
	SURFACE_PAINTING_WOBBLE_BA           = 0x00BA, -- Painting wobble (Unused - Right)
	SURFACE_PAINTING_WOBBLE_BB           = 0x00BB, -- Painting wobble (DDD - Left), makes the painting wobble if touched
	SURFACE_PAINTING_WOBBLE_BC           = 0x00BC, -- Painting wobble (Unused, DDD - Middle)
	SURFACE_PAINTING_WOBBLE_BD           = 0x00BD, -- Painting wobble (Unused, DDD - Right)
	SURFACE_PAINTING_WOBBLE_BE           = 0x00BE, -- Painting wobble (WDW Left)
	SURFACE_PAINTING_WOBBLE_BF           = 0x00BF, -- Painting wobble (WDW Middle)
	SURFACE_PAINTING_WOBBLE_C0           = 0x00C0, -- Painting wobble (WDW Right)
	SURFACE_PAINTING_WOBBLE_C1           = 0x00C1, -- Painting wobble (THI Tiny - Left)
	SURFACE_PAINTING_WOBBLE_C2           = 0x00C2, -- Painting wobble (THI Tiny - Middle)
	SURFACE_PAINTING_WOBBLE_C3           = 0x00C3, -- Painting wobble (THI Tiny - Right)
	SURFACE_PAINTING_WOBBLE_C4           = 0x00C4, -- Painting wobble (TTM Left)
	SURFACE_PAINTING_WOBBLE_C5           = 0x00C5, -- Painting wobble (TTM Middle)
	SURFACE_PAINTING_WOBBLE_C6           = 0x00C6, -- Painting wobble (TTM Right)
	SURFACE_PAINTING_WOBBLE_C7           = 0x00C7, -- Painting wobble (Unused, TTC - Left)
	SURFACE_PAINTING_WOBBLE_C8           = 0x00C8, -- Painting wobble (Unused, TTC - Middle)
	SURFACE_PAINTING_WOBBLE_C9           = 0x00C9, -- Painting wobble (Unused, TTC - Right)
	SURFACE_PAINTING_WOBBLE_CA           = 0x00CA, -- Painting wobble (Unused, SL - Left)
	SURFACE_PAINTING_WOBBLE_CB           = 0x00CB, -- Painting wobble (Unused, SL - Middle)
	SURFACE_PAINTING_WOBBLE_CC           = 0x00CC, -- Painting wobble (Unused, SL - Right)
	SURFACE_PAINTING_WOBBLE_CD           = 0x00CD, -- Painting wobble (THI Huge - Left)
	SURFACE_PAINTING_WOBBLE_CE           = 0x00CE, -- Painting wobble (THI Huge - Middle)
	SURFACE_PAINTING_WOBBLE_CF           = 0x00CF, -- Painting wobble (THI Huge - Right)
	SURFACE_PAINTING_WOBBLE_D0           = 0x00D0, -- Painting wobble (HMC & COTMC - Left), makes the painting wobble if touched
	SURFACE_PAINTING_WOBBLE_D1           = 0x00D1, -- Painting wobble (Unused, HMC & COTMC - Middle)
	SURFACE_PAINTING_WOBBLE_D2           = 0x00D2, -- Painting wobble (Unused, HMC & COTMC - Right)
	SURFACE_PAINTING_WARP_D3             = 0x00D3, -- Painting warp (BOB Left)
	SURFACE_PAINTING_WARP_D4             = 0x00D4, -- Painting warp (BOB Middle)
	SURFACE_PAINTING_WARP_D5             = 0x00D5, -- Painting warp (BOB Right)
	SURFACE_PAINTING_WARP_D6             = 0x00D6, -- Painting warp (CCM Left)
	SURFACE_PAINTING_WARP_D7             = 0x00D7, -- Painting warp (CCM Middle)
	SURFACE_PAINTING_WARP_D8             = 0x00D8, -- Painting warp (CCM Right)
	SURFACE_PAINTING_WARP_D9             = 0x00D9, -- Painting warp (WF Left)
	SURFACE_PAINTING_WARP_DA             = 0x00DA, -- Painting warp (WF Middle)
	SURFACE_PAINTING_WARP_DB             = 0x00DB, -- Painting warp (WF Right)
	SURFACE_PAINTING_WARP_DC             = 0x00DC, -- Painting warp (JRB Left)
	SURFACE_PAINTING_WARP_DD             = 0x00DD, -- Painting warp (JRB Middle)
	SURFACE_PAINTING_WARP_DE             = 0x00DE, -- Painting warp (JRB Right)
	SURFACE_PAINTING_WARP_DF             = 0x00DF, -- Painting warp (LLL Left)
	SURFACE_PAINTING_WARP_E0             = 0x00E0, -- Painting warp (LLL Middle)
	SURFACE_PAINTING_WARP_E1             = 0x00E1, -- Painting warp (LLL Right)
	SURFACE_PAINTING_WARP_E2             = 0x00E2, -- Painting warp (SSL Left)
	SURFACE_PAINTING_WARP_E3             = 0x00E3, -- Painting warp (SSL Medium)
	SURFACE_PAINTING_WARP_E4             = 0x00E4, -- Painting warp (SSL Right)
	SURFACE_PAINTING_WARP_E5             = 0x00E5, -- Painting warp (Unused - Left)
	SURFACE_PAINTING_WARP_E6             = 0x00E6, -- Painting warp (Unused - Medium)
	SURFACE_PAINTING_WARP_E7             = 0x00E7, -- Painting warp (Unused - Right)
	SURFACE_PAINTING_WARP_E8             = 0x00E8, -- Painting warp (DDD - Left)
	SURFACE_PAINTING_WARP_E9             = 0x00E9, -- Painting warp (DDD - Middle)
	SURFACE_PAINTING_WARP_EA             = 0x00EA, -- Painting warp (DDD - Right)
	SURFACE_PAINTING_WARP_EB             = 0x00EB, -- Painting warp (WDW Left)
	SURFACE_PAINTING_WARP_EC             = 0x00EC, -- Painting warp (WDW Middle)
	SURFACE_PAINTING_WARP_ED             = 0x00ED, -- Painting warp (WDW Right)
	SURFACE_PAINTING_WARP_EE             = 0x00EE, -- Painting warp (THI Tiny - Left)
	SURFACE_PAINTING_WARP_EF             = 0x00EF, -- Painting warp (THI Tiny - Middle)
	SURFACE_PAINTING_WARP_F0             = 0x00F0, -- Painting warp (THI Tiny - Right)
	SURFACE_PAINTING_WARP_F1             = 0x00F1, -- Painting warp (TTM Left)
	SURFACE_PAINTING_WARP_F2             = 0x00F2, -- Painting warp (TTM Middle)
	SURFACE_PAINTING_WARP_F3             = 0x00F3, -- Painting warp (TTM Right)
	SURFACE_TTC_PAINTING_1               = 0x00F4, -- Painting warp (TTC Left)
	SURFACE_TTC_PAINTING_2               = 0x00F5, -- Painting warp (TTC Medium)
	SURFACE_TTC_PAINTING_3               = 0x00F6, -- Painting warp (TTC Right)
	SURFACE_PAINTING_WARP_F7             = 0x00F7, -- Painting warp (SL Left)
	SURFACE_PAINTING_WARP_F8             = 0x00F8, -- Painting warp (SL Middle)
	SURFACE_PAINTING_WARP_F9             = 0x00F9, -- Painting warp (SL Right)
	SURFACE_PAINTING_WARP_FA             = 0x00FA, -- Painting warp (THI Tiny - Left)
	SURFACE_PAINTING_WARP_FB             = 0x00FB, -- Painting warp (THI Tiny - Middle)
	SURFACE_PAINTING_WARP_FC             = 0x00FC, -- Painting warp (THI Tiny - Right)
	SURFACE_WOBBLING_WARP                = 0x00FD, -- Pool warp (HMC & DDD)
	SURFACE_TRAPDOOR                     = 0x00FF, -- Bowser Left trapdoor, has no action defined
}


g64types.SM64ParticleType = {
	PARTICLE_DUST                 		 = 0x00000001,
	PARTICLE_VERTICAL_STAR        		 = 0x00000002,
	PARTICLE_2                    		 = 0x00000004,
	PARTICLE_SPARKLES             		 = 0x00000008,
	PARTICLE_HORIZONTAL_STAR      		 = 0x00000010,
	PARTICLE_BUBBLE               		 = 0x00000020,
	PARTICLE_WATER_SPLASH         		 = 0x00000040,
	PARTICLE_IDLE_WATER_WAVE      		 = 0x00000080,
	PARTICLE_SHALLOW_WATER_WAVE   		 = 0x00000100,
	PARTICLE_PLUNGE_BUBBLE        		 = 0x00000200,
	PARTICLE_WAVE_TRAIL           		 = 0x00000400,
	PARTICLE_FIRE                 		 = 0x00000800,
	PARTICLE_SHALLOW_WATER_SPLASH 		 = 0x00001000,
	PARTICLE_LEAF                 		 = 0x00002000,
	PARTICLE_SNOW                 		 = 0x00004000,
	PARTICLE_DIRT                 		 = 0x00008000,
	PARTICLE_MIST_CIRCLE          		 = 0x00010000,
	PARTICLE_BREATH               		 = 0x00020000,
	PARTICLE_TRIANGLE             		 = 0x00040000,
	PARTICLE_19                   		 = 0x00080000
}

g64types.SM64MarioActionFlags = {
	ACT_FLAG_STATIONARY                  = 0x00000200,
	ACT_FLAG_MOVING                      = 0x00000400,
	ACT_FLAG_AIR                         = 0x00000800,
	ACT_FLAG_INTANGIBLE                  = 0x00001000,
	ACT_FLAG_SWIMMING                    = 0x00002000,
	ACT_FLAG_METAL_WATER                 = 0x00004000,
	ACT_FLAG_SHORT_HITBOX                = 0x00008000,
	ACT_FLAG_RIDING_SHELL                = 0x00010000,
	ACT_FLAG_INVULNERABLE                = 0x00020000,
	ACT_FLAG_BUTT_OR_STOMACH_SLIDE       = 0x00040000,
	ACT_FLAG_DIVING                      = 0x00080000,
	ACT_FLAG_ON_POLE                     = 0x00100000,
	ACT_FLAG_HANGING                     = 0x00200000,
	ACT_FLAG_IDLE                        = 0x00400000,
	ACT_FLAG_ATTACKING                   = 0x00800000,
	ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION  = 0x01000000,
	ACT_FLAG_CONTROL_JUMP_HEIGHT         = 0x02000000,
	ACT_FLAG_ALLOW_FIRST_PERSON          = 0x04000000,
	ACT_FLAG_PAUSE_EXIT                  = 0x08000000,
	ACT_FLAG_SWIMMING_OR_FLYING          = 0x10000000,
	ACT_FLAG_WATER_OR_TEXT               = 0x20000000,
	ACT_FLAG_THROWING                    = 0x80000000
}

g64types.SM64MarioAction = {
	-- group 0x000: stationary actions
	ACT_IDLE                       = 0x0C400201, -- (0x001 | ACT_FLAG_STATIONARY | ACT_FLAG_IDLE | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_START_SLEEPING             = 0x0C400202, -- (0x002 | ACT_FLAG_STATIONARY | ACT_FLAG_IDLE | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_SLEEPING                   = 0x0C000203, -- (0x003 | ACT_FLAG_STATIONARY | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_WAKING_UP                  = 0x0C000204, -- (0x004 | ACT_FLAG_STATIONARY | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_PANTING                    = 0x0C400205, -- (0x005 | ACT_FLAG_STATIONARY | ACT_FLAG_IDLE | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_HOLD_PANTING_UNUSED        = 0x08000206, -- (0x006 | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_HOLD_IDLE                  = 0x08000207, -- (0x007 | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_HOLD_HEAVY_IDLE            = 0x08000208, -- (0x008 | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_STANDING_AGAINST_WALL      = 0x0C400209, -- (0x009 | ACT_FLAG_STATIONARY | ACT_FLAG_IDLE | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_COUGHING                   = 0x0C40020A, -- (0x00A | ACT_FLAG_STATIONARY | ACT_FLAG_IDLE | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_SHIVERING                  = 0x0C40020B, -- (0x00B | ACT_FLAG_STATIONARY | ACT_FLAG_IDLE | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_IN_QUICKSAND               = 0x0002020D, -- (0x00D | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE)
	ACT_UNKNOWN_0002020E           = 0x0002020E, -- (0x00E | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE)
	ACT_CROUCHING                  = 0x0C008220, -- (0x020 | ACT_FLAG_STATIONARY | ACT_FLAG_SHORT_HITBOX | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_START_CROUCHING            = 0x0C008221, -- (0x021 | ACT_FLAG_STATIONARY | ACT_FLAG_SHORT_HITBOX | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_STOP_CROUCHING             = 0x0C008222, -- (0x022 | ACT_FLAG_STATIONARY | ACT_FLAG_SHORT_HITBOX | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_START_CRAWLING             = 0x0C008223, -- (0x023 | ACT_FLAG_STATIONARY | ACT_FLAG_SHORT_HITBOX | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_STOP_CRAWLING              = 0x0C008224, -- (0x024 | ACT_FLAG_STATIONARY | ACT_FLAG_SHORT_HITBOX | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_SLIDE_KICK_SLIDE_STOP      = 0x08000225, -- (0x025 | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_SHOCKWAVE_BOUNCE           = 0x00020226, -- (0x026 | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE)
	ACT_FIRST_PERSON               = 0x0C000227, -- (0x027 | ACT_FLAG_STATIONARY | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_BACKFLIP_LAND_STOP         = 0x0800022F, -- (0x02F | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_JUMP_LAND_STOP             = 0x0C000230, -- (0x030 | ACT_FLAG_STATIONARY | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_DOUBLE_JUMP_LAND_STOP      = 0x0C000231, -- (0x031 | ACT_FLAG_STATIONARY | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_FREEFALL_LAND_STOP         = 0x0C000232, -- (0x032 | ACT_FLAG_STATIONARY | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_SIDE_FLIP_LAND_STOP        = 0x0C000233, -- (0x033 | ACT_FLAG_STATIONARY | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_HOLD_JUMP_LAND_STOP        = 0x08000234, -- (0x034 | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_HOLD_FREEFALL_LAND_STOP    = 0x08000235, -- (0x035 | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_AIR_THROW_LAND             = 0x80000A36, -- (0x036 | ACT_FLAG_STATIONARY | ACT_FLAG_AIR | ACT_FLAG_THROWING)
	ACT_TWIRL_LAND                 = 0x18800238, -- (0x038 | ACT_FLAG_STATIONARY | ACT_FLAG_ATTACKING | ACT_FLAG_PAUSE_EXIT | ACT_FLAG_SWIMMING_OR_FLYING)
	ACT_LAVA_BOOST_LAND            = 0x08000239, -- (0x039 | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_TRIPLE_JUMP_LAND_STOP      = 0x0800023A, -- (0x03A | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_LONG_JUMP_LAND_STOP        = 0x0800023B, -- (0x03B | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_GROUND_POUND_LAND          = 0x0080023C, -- (0x03C | ACT_FLAG_STATIONARY | ACT_FLAG_ATTACKING)
	ACT_BRAKING_STOP               = 0x0C00023D, -- (0x03D | ACT_FLAG_STATIONARY | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_BUTT_SLIDE_STOP            = 0x0C00023E, -- (0x03E | ACT_FLAG_STATIONARY | ACT_FLAG_ALLOW_FIRST_PERSON | ACT_FLAG_PAUSE_EXIT)
	ACT_HOLD_BUTT_SLIDE_STOP       = 0x0800043F, -- (0x03F | ACT_FLAG_MOVING | ACT_FLAG_PAUSE_EXIT)
	
	-- group 0x040: moving (ground) actions
	ACT_WALKING                    = 0x04000440, -- (0x040 | ACT_FLAG_MOVING | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_HOLD_WALKING               = 0x00000442, -- (0x042 | ACT_FLAG_MOVING)
	ACT_TURNING_AROUND             = 0x00000443, -- (0x043 | ACT_FLAG_MOVING)
	ACT_FINISH_TURNING_AROUND      = 0x00000444, -- (0x044 | ACT_FLAG_MOVING)
	ACT_BRAKING                    = 0x04000445, -- (0x045 | ACT_FLAG_MOVING | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_RIDING_SHELL_GROUND        = 0x20810446, -- (0x046 | ACT_FLAG_MOVING | ACT_FLAG_RIDING_SHELL | ACT_FLAG_ATTACKING | ACT_FLAG_WATER_OR_TEXT)
	ACT_HOLD_HEAVY_WALKING         = 0x00000447, -- (0x047 | ACT_FLAG_MOVING)
	ACT_CRAWLING                   = 0x04008448, -- (0x048 | ACT_FLAG_MOVING | ACT_FLAG_SHORT_HITBOX | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_BURNING_GROUND             = 0x00020449, -- (0x049 | ACT_FLAG_MOVING | ACT_FLAG_INVULNERABLE)
	ACT_DECELERATING               = 0x0400044A, -- (0x04A | ACT_FLAG_MOVING | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_HOLD_DECELERATING          = 0x0000044B, -- (0x04B | ACT_FLAG_MOVING)
	ACT_BEGIN_SLIDING              = 0x00000050, -- (0x050)
	ACT_HOLD_BEGIN_SLIDING         = 0x00000051, -- (0x051)
	ACT_BUTT_SLIDE                 = 0x00840452, -- (0x052 | ACT_FLAG_MOVING | ACT_FLAG_BUTT_OR_STOMACH_SLIDE | ACT_FLAG_ATTACKING)
	ACT_STOMACH_SLIDE              = 0x008C0453, -- (0x053 | ACT_FLAG_MOVING | ACT_FLAG_BUTT_OR_STOMACH_SLIDE | ACT_FLAG_DIVING | ACT_FLAG_ATTACKING)
	ACT_HOLD_BUTT_SLIDE            = 0x00840454, -- (0x054 | ACT_FLAG_MOVING | ACT_FLAG_BUTT_OR_STOMACH_SLIDE | ACT_FLAG_ATTACKING)
	ACT_HOLD_STOMACH_SLIDE         = 0x008C0455, -- (0x055 | ACT_FLAG_MOVING | ACT_FLAG_BUTT_OR_STOMACH_SLIDE | ACT_FLAG_DIVING | ACT_FLAG_ATTACKING)
	ACT_DIVE_SLIDE                 = 0x00880456, -- (0x056 | ACT_FLAG_MOVING | ACT_FLAG_DIVING | ACT_FLAG_ATTACKING)
	ACT_MOVE_PUNCHING              = 0x00800457, -- (0x057 | ACT_FLAG_MOVING | ACT_FLAG_ATTACKING)
	ACT_CROUCH_SLIDE               = 0x04808459, -- (0x059 | ACT_FLAG_MOVING | ACT_FLAG_SHORT_HITBOX | ACT_FLAG_ATTACKING | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_SLIDE_KICK_SLIDE           = 0x0080045A, -- (0x05A | ACT_FLAG_MOVING | ACT_FLAG_ATTACKING)
	ACT_HARD_BACKWARD_GROUND_KB    = 0x00020460, -- (0x060 | ACT_FLAG_MOVING | ACT_FLAG_INVULNERABLE)
	ACT_HARD_FORWARD_GROUND_KB     = 0x00020461, -- (0x061 | ACT_FLAG_MOVING | ACT_FLAG_INVULNERABLE)
	ACT_BACKWARD_GROUND_KB         = 0x00020462, -- (0x062 | ACT_FLAG_MOVING | ACT_FLAG_INVULNERABLE)
	ACT_FORWARD_GROUND_KB          = 0x00020463, -- (0x063 | ACT_FLAG_MOVING | ACT_FLAG_INVULNERABLE)
	ACT_SOFT_BACKWARD_GROUND_KB    = 0x00020464, -- (0x064 | ACT_FLAG_MOVING | ACT_FLAG_INVULNERABLE)
	ACT_SOFT_FORWARD_GROUND_KB     = 0x00020465, -- (0x065 | ACT_FLAG_MOVING | ACT_FLAG_INVULNERABLE)
	ACT_GROUND_BONK                = 0x00020466, -- (0x066 | ACT_FLAG_MOVING | ACT_FLAG_INVULNERABLE)
	ACT_DEATH_EXIT_LAND            = 0x00020467, -- (0x067 | ACT_FLAG_MOVING | ACT_FLAG_INVULNERABLE)
	ACT_JUMP_LAND                  = 0x04000470, -- (0x070 | ACT_FLAG_MOVING | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_FREEFALL_LAND              = 0x04000471, -- (0x071 | ACT_FLAG_MOVING | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_DOUBLE_JUMP_LAND           = 0x04000472, -- (0x072 | ACT_FLAG_MOVING | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_SIDE_FLIP_LAND             = 0x04000473, -- (0x073 | ACT_FLAG_MOVING | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_HOLD_JUMP_LAND             = 0x00000474, -- (0x074 | ACT_FLAG_MOVING)
	ACT_HOLD_FREEFALL_LAND         = 0x00000475, -- (0x075 | ACT_FLAG_MOVING)
	ACT_QUICKSAND_JUMP_LAND        = 0x00000476, -- (0x076 | ACT_FLAG_MOVING)
	ACT_HOLD_QUICKSAND_JUMP_LAND   = 0x00000477, -- (0x077 | ACT_FLAG_MOVING)
	ACT_TRIPLE_JUMP_LAND           = 0x04000478, -- (0x078 | ACT_FLAG_MOVING | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_LONG_JUMP_LAND             = 0x00000479, -- (0x079 | ACT_FLAG_MOVING)
	ACT_BACKFLIP_LAND              = 0x0400047A, -- (0x07A | ACT_FLAG_MOVING | ACT_FLAG_ALLOW_FIRST_PERSON)
	
	-- group 0x080: airborne actions
	ACT_JUMP                       = 0x03000880, -- (0x080 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_DOUBLE_JUMP                = 0x03000881, -- (0x081 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_TRIPLE_JUMP                = 0x01000882, -- (0x082 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_BACKFLIP                   = 0x01000883, -- (0x083 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_STEEP_JUMP                 = 0x03000885, -- (0x085 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_WALL_KICK_AIR              = 0x03000886, -- (0x086 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_SIDE_FLIP                  = 0x01000887, -- (0x087 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_LONG_JUMP                  = 0x03000888, -- (0x088 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_WATER_JUMP                 = 0x01000889, -- (0x089 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_DIVE                       = 0x0188088A, -- (0x08A | ACT_FLAG_AIR | ACT_FLAG_DIVING | ACT_FLAG_ATTACKING | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_FREEFALL                   = 0x0100088C, -- (0x08C | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_TOP_OF_POLE_JUMP           = 0x0300088D, -- (0x08D | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_BUTT_SLIDE_AIR             = 0x0300088E, -- (0x08E | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_FLYING_TRIPLE_JUMP         = 0x03000894, -- (0x094 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_SHOT_FROM_CANNON           = 0x00880898, -- (0x098 | ACT_FLAG_AIR | ACT_FLAG_DIVING | ACT_FLAG_ATTACKING)
	ACT_FLYING                     = 0x10880899, -- (0x099 | ACT_FLAG_AIR | ACT_FLAG_DIVING | ACT_FLAG_ATTACKING | ACT_FLAG_SWIMMING_OR_FLYING)
	ACT_RIDING_SHELL_JUMP          = 0x0281089A, -- (0x09A | ACT_FLAG_AIR | ACT_FLAG_RIDING_SHELL | ACT_FLAG_ATTACKING | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_RIDING_SHELL_FALL          = 0x0081089B, -- (0x09B | ACT_FLAG_AIR | ACT_FLAG_RIDING_SHELL | ACT_FLAG_ATTACKING)
	ACT_VERTICAL_WIND              = 0x1008089C, -- (0x09C | ACT_FLAG_AIR | ACT_FLAG_DIVING | ACT_FLAG_SWIMMING_OR_FLYING)
	ACT_HOLD_JUMP                  = 0x030008A0, -- (0x0A0 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_HOLD_FREEFALL              = 0x010008A1, -- (0x0A1 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_HOLD_BUTT_SLIDE_AIR        = 0x010008A2, -- (0x0A2 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_HOLD_WATER_JUMP            = 0x010008A3, -- (0x0A3 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_TWIRLING                   = 0x108008A4, -- (0x0A4 | ACT_FLAG_AIR | ACT_FLAG_ATTACKING | ACT_FLAG_SWIMMING_OR_FLYING)
	ACT_FORWARD_ROLLOUT            = 0x010008A6, -- (0x0A6 | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_AIR_HIT_WALL               = 0x000008A7, -- (0x0A7 | ACT_FLAG_AIR)
	ACT_RIDING_HOOT                = 0x000004A8, -- (0x0A8 | ACT_FLAG_MOVING)
	ACT_GROUND_POUND               = 0x008008A9, -- (0x0A9 | ACT_FLAG_AIR | ACT_FLAG_ATTACKING)
	ACT_SLIDE_KICK                 = 0x018008AA, -- (0x0AA | ACT_FLAG_AIR | ACT_FLAG_ATTACKING | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_AIR_THROW                  = 0x830008AB, -- (0x0AB | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT | ACT_FLAG_THROWING)
	ACT_JUMP_KICK                  = 0x018008AC, -- (0x0AC | ACT_FLAG_AIR | ACT_FLAG_ATTACKING | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_BACKWARD_ROLLOUT           = 0x010008AD, -- (0x0AD | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_CRAZY_BOX_BOUNCE           = 0x000008AE, -- (0x0AE | ACT_FLAG_AIR)
	ACT_SPECIAL_TRIPLE_JUMP        = 0x030008AF, -- (0x0AF | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION | ACT_FLAG_CONTROL_JUMP_HEIGHT)
	ACT_BACKWARD_AIR_KB            = 0x010208B0, -- (0x0B0 | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_FORWARD_AIR_KB             = 0x010208B1, -- (0x0B1 | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_HARD_FORWARD_AIR_KB        = 0x010208B2, -- (0x0B2 | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_HARD_BACKWARD_AIR_KB       = 0x010208B3, -- (0x0B3 | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_BURNING_JUMP               = 0x010208B4, -- (0x0B4 | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_BURNING_FALL               = 0x010208B5, -- (0x0B5 | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_SOFT_BONK                  = 0x010208B6, -- (0x0B6 | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_LAVA_BOOST                 = 0x010208B7, -- (0x0B7 | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_GETTING_BLOWN              = 0x010208B8, -- (0x0B8 | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_THROWN_FORWARD             = 0x010208BD, -- (0x0BD | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_THROWN_BACKWARD            = 0x010208BE, -- (0x0BE | ACT_FLAG_AIR | ACT_FLAG_INVULNERABLE | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)
	ACT_HOLD_BUTT_SLIDE_NO_CANCEL  = 0x010008BF, -- (0x0BF | ACT_FLAG_AIR | ACT_FLAG_ALLOW_VERTICAL_WIND_ACTION)

	-- group 0x0C0: submerged actions
	ACT_WATER_IDLE                 = 0x380022C0, -- (0x0C0 | ACT_FLAG_STATIONARY | ACT_FLAG_SWIMMING | ACT_FLAG_PAUSE_EXIT | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_HOLD_WATER_IDLE            = 0x380022C1, -- (0x0C1 | ACT_FLAG_STATIONARY | ACT_FLAG_SWIMMING | ACT_FLAG_PAUSE_EXIT | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_WATER_ACTION_END           = 0x300022C2, -- (0x0C2 | ACT_FLAG_STATIONARY | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_HOLD_WATER_ACTION_END      = 0x300022C3, -- (0x0C3 | ACT_FLAG_STATIONARY | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_DROWNING                   = 0x300032C4, -- (0x0C4 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_BACKWARD_WATER_KB          = 0x300222C5, -- (0x0C5 | ACT_FLAG_STATIONARY | ACT_FLAG_SWIMMING | ACT_FLAG_INVULNERABLE | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_FORWARD_WATER_KB           = 0x300222C6, -- (0x0C6 | ACT_FLAG_STATIONARY | ACT_FLAG_SWIMMING | ACT_FLAG_INVULNERABLE | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_WATER_DEATH                = 0x300032C7, -- (0x0C7 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_WATER_SHOCKED              = 0x300222C8, -- (0x0C8 | ACT_FLAG_STATIONARY | ACT_FLAG_SWIMMING | ACT_FLAG_INVULNERABLE | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_BREASTSTROKE               = 0x300024D0, -- (0x0D0 | ACT_FLAG_MOVING | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_SWIMMING_END               = 0x300024D1, -- (0x0D1 | ACT_FLAG_MOVING | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_FLUTTER_KICK               = 0x300024D2, -- (0x0D2 | ACT_FLAG_MOVING | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_HOLD_BREASTSTROKE          = 0x300024D3, -- (0x0D3 | ACT_FLAG_MOVING | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_HOLD_SWIMMING_END          = 0x300024D4, -- (0x0D4 | ACT_FLAG_MOVING | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_HOLD_FLUTTER_KICK          = 0x300024D5, -- (0x0D5 | ACT_FLAG_MOVING | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_WATER_SHELL_SWIMMING       = 0x300024D6, -- (0x0D6 | ACT_FLAG_MOVING | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_WATER_THROW                = 0x300024E0, -- (0x0E0 | ACT_FLAG_MOVING | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_WATER_PUNCH                = 0x300024E1, -- (0x0E1 | ACT_FLAG_MOVING | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_WATER_PLUNGE               = 0x300022E2, -- (0x0E2 | ACT_FLAG_STATIONARY | ACT_FLAG_SWIMMING | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_CAUGHT_IN_WHIRLPOOL        = 0x300222E3, -- (0x0E3 | ACT_FLAG_STATIONARY | ACT_FLAG_SWIMMING | ACT_FLAG_INVULNERABLE | ACT_FLAG_SWIMMING_OR_FLYING | ACT_FLAG_WATER_OR_TEXT)
	ACT_METAL_WATER_STANDING       = 0x080042F0, -- (0x0F0 | ACT_FLAG_STATIONARY | ACT_FLAG_METAL_WATER | ACT_FLAG_PAUSE_EXIT)
	ACT_HOLD_METAL_WATER_STANDING  = 0x080042F1, -- (0x0F1 | ACT_FLAG_STATIONARY | ACT_FLAG_METAL_WATER | ACT_FLAG_PAUSE_EXIT)
	ACT_METAL_WATER_WALKING        = 0x000044F2, -- (0x0F2 | ACT_FLAG_MOVING | ACT_FLAG_METAL_WATER)
	ACT_HOLD_METAL_WATER_WALKING   = 0x000044F3, -- (0x0F3 | ACT_FLAG_MOVING | ACT_FLAG_METAL_WATER)
	ACT_METAL_WATER_FALLING        = 0x000042F4, -- (0x0F4 | ACT_FLAG_STATIONARY | ACT_FLAG_METAL_WATER)
	ACT_HOLD_METAL_WATER_FALLING   = 0x000042F5, -- (0x0F5 | ACT_FLAG_STATIONARY | ACT_FLAG_METAL_WATER)
	ACT_METAL_WATER_FALL_LAND      = 0x000042F6, -- (0x0F6 | ACT_FLAG_STATIONARY | ACT_FLAG_METAL_WATER)
	ACT_HOLD_METAL_WATER_FALL_LAND = 0x000042F7, -- (0x0F7 | ACT_FLAG_STATIONARY | ACT_FLAG_METAL_WATER)
	ACT_METAL_WATER_JUMP           = 0x000044F8, -- (0x0F8 | ACT_FLAG_MOVING | ACT_FLAG_METAL_WATER)
	ACT_HOLD_METAL_WATER_JUMP      = 0x000044F9, -- (0x0F9 | ACT_FLAG_MOVING | ACT_FLAG_METAL_WATER)
	ACT_METAL_WATER_JUMP_LAND      = 0x000044FA, -- (0x0FA | ACT_FLAG_MOVING | ACT_FLAG_METAL_WATER)
	ACT_HOLD_METAL_WATER_JUMP_LAND = 0x000044FB, -- (0x0FB | ACT_FLAG_MOVING | ACT_FLAG_METAL_WATER)

	-- group 0x100: cutscene actions
	ACT_DISAPPEARED                = 0x00001300, -- (0x100 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_INTRO_CUTSCENE             = 0x04001301, -- (0x101 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_ALLOW_FIRST_PERSON)
	ACT_STAR_DANCE_EXIT            = 0x00001302, -- (0x102 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_STAR_DANCE_WATER           = 0x00001303, -- (0x103 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_FALL_AFTER_STAR_GRAB       = 0x00001904, -- (0x104 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_READING_AUTOMATIC_DIALOG   = 0x20001305, -- (0x105 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_WATER_OR_TEXT)
	ACT_READING_NPC_DIALOG         = 0x20001306, -- (0x106 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_WATER_OR_TEXT)
	ACT_STAR_DANCE_NO_EXIT         = 0x00001307, -- (0x107 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_READING_SIGN               = 0x00001308, -- (0x108 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_JUMBO_STAR_CUTSCENE        = 0x00001909, -- (0x109 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_WAITING_FOR_DIALOG         = 0x0000130A, -- (0x10A | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_DEBUG_FREE_MOVE            = 0x0000130F, -- (0x10F | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_STANDING_DEATH             = 0x00021311, -- (0x111 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_INVULNERABLE)
	ACT_QUICKSAND_DEATH            = 0x00021312, -- (0x112 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_INVULNERABLE)
	ACT_ELECTROCUTION              = 0x00021313, -- (0x113 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_INVULNERABLE)
	ACT_SUFFOCATION                = 0x00021314, -- (0x114 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_INVULNERABLE)
	ACT_DEATH_ON_STOMACH           = 0x00021315, -- (0x115 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_INVULNERABLE)
	ACT_DEATH_ON_BACK              = 0x00021316, -- (0x116 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_INVULNERABLE)
	ACT_EATEN_BY_BUBBA             = 0x00021317, -- (0x117 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE | ACT_FLAG_INVULNERABLE)
	ACT_END_PEACH_CUTSCENE         = 0x00001918, -- (0x118 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_CREDITS_CUTSCENE           = 0x00001319, -- (0x119 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_END_WAVING_CUTSCENE        = 0x0000131A, -- (0x11A | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_PULLING_DOOR               = 0x00001320, -- (0x120 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_PUSHING_DOOR               = 0x00001321, -- (0x121 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_WARP_DOOR_SPAWN            = 0x00001322, -- (0x122 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_EMERGE_FROM_PIPE           = 0x00001923, -- (0x123 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_SPAWN_SPIN_AIRBORNE        = 0x00001924, -- (0x124 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_SPAWN_SPIN_LANDING         = 0x00001325, -- (0x125 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_EXIT_AIRBORNE              = 0x00001926, -- (0x126 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_EXIT_LAND_SAVE_DIALOG      = 0x00001327, -- (0x127 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_DEATH_EXIT                 = 0x00001928, -- (0x128 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_UNUSED_DEATH_EXIT          = 0x00001929, -- (0x129 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_FALLING_DEATH_EXIT         = 0x0000192A, -- (0x12A | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_SPECIAL_EXIT_AIRBORNE      = 0x0000192B, -- (0x12B | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_SPECIAL_DEATH_EXIT         = 0x0000192C, -- (0x12C | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_FALLING_EXIT_AIRBORNE      = 0x0000192D, -- (0x12D | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_UNLOCKING_KEY_DOOR         = 0x0000132E, -- (0x12E | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_UNLOCKING_STAR_DOOR        = 0x0000132F, -- (0x12F | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_ENTERING_STAR_DOOR         = 0x00001331, -- (0x131 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_SPAWN_NO_SPIN_AIRBORNE     = 0x00001932, -- (0x132 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_SPAWN_NO_SPIN_LANDING      = 0x00001333, -- (0x133 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_BBH_ENTER_JUMP             = 0x00001934, -- (0x134 | ACT_FLAG_AIR | ACT_FLAG_INTANGIBLE)
	ACT_BBH_ENTER_SPIN             = 0x00001535, -- (0x135 | ACT_FLAG_MOVING | ACT_FLAG_INTANGIBLE)
	ACT_TELEPORT_FADE_OUT          = 0x00001336, -- (0x136 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_TELEPORT_FADE_IN           = 0x00001337, -- (0x137 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_SHOCKED                    = 0x00020338, -- (0x138 | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE)
	ACT_SQUISHED                   = 0x00020339, -- (0x139 | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE)
	ACT_HEAD_STUCK_IN_GROUND       = 0x0002033A, -- (0x13A | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE)
	ACT_BUTT_STUCK_IN_GROUND       = 0x0002033B, -- (0x13B | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE)
	ACT_FEET_STUCK_IN_GROUND       = 0x0002033C, -- (0x13C | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE)
	ACT_PUTTING_ON_CAP             = 0x0000133D, -- (0x13D | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	
	-- group 0x140: "automatic" actions
	ACT_HOLDING_POLE               = 0x08100340, -- (0x140 | ACT_FLAG_STATIONARY | ACT_FLAG_ON_POLE | ACT_FLAG_PAUSE_EXIT)
	ACT_GRAB_POLE_SLOW             = 0x00100341, -- (0x141 | ACT_FLAG_STATIONARY | ACT_FLAG_ON_POLE)
	ACT_GRAB_POLE_FAST             = 0x00100342, -- (0x142 | ACT_FLAG_STATIONARY | ACT_FLAG_ON_POLE)
	ACT_CLIMBING_POLE              = 0x00100343, -- (0x143 | ACT_FLAG_STATIONARY | ACT_FLAG_ON_POLE)
	ACT_TOP_OF_POLE_TRANSITION     = 0x00100344, -- (0x144 | ACT_FLAG_STATIONARY | ACT_FLAG_ON_POLE)
	ACT_TOP_OF_POLE                = 0x00100345, -- (0x145 | ACT_FLAG_STATIONARY | ACT_FLAG_ON_POLE)
	ACT_START_HANGING              = 0x08200348, -- (0x148 | ACT_FLAG_STATIONARY | ACT_FLAG_HANGING | ACT_FLAG_PAUSE_EXIT)
	ACT_HANGING                    = 0x00200349, -- (0x149 | ACT_FLAG_STATIONARY | ACT_FLAG_HANGING)
	ACT_HANG_MOVING                = 0x0020054A, -- (0x14A | ACT_FLAG_MOVING | ACT_FLAG_HANGING)
	ACT_LEDGE_GRAB                 = 0x0800034B, -- (0x14B | ACT_FLAG_STATIONARY | ACT_FLAG_PAUSE_EXIT)
	ACT_LEDGE_CLIMB_SLOW_1         = 0x0000054C, -- (0x14C | ACT_FLAG_MOVING)
	ACT_LEDGE_CLIMB_SLOW_2         = 0x0000054D, -- (0x14D | ACT_FLAG_MOVING)
	ACT_LEDGE_CLIMB_DOWN           = 0x0000054E, -- (0x14E | ACT_FLAG_MOVING)
	ACT_LEDGE_CLIMB_FAST           = 0x0000054F, -- (0x14F | ACT_FLAG_MOVING)
	ACT_GRABBED                    = 0x00020370, -- (0x170 | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE)
	ACT_IN_CANNON                  = 0x00001371, -- (0x171 | ACT_FLAG_STATIONARY | ACT_FLAG_INTANGIBLE)
	ACT_TORNADO_TWIRLING           = 0x10020372, -- (0x172 | ACT_FLAG_STATIONARY | ACT_FLAG_INVULNERABLE | ACT_FLAG_SWIMMING_OR_FLYING)
	
	-- group 0x180: object actions
	ACT_PUNCHING                   = 0x00800380, -- (0x180 | ACT_FLAG_STATIONARY | ACT_FLAG_ATTACKING)
	ACT_PICKING_UP                 = 0x00000383, -- (0x183 | ACT_FLAG_STATIONARY)
	ACT_DIVE_PICKING_UP            = 0x00000385, -- (0x185 | ACT_FLAG_STATIONARY)
	ACT_STOMACH_SLIDE_STOP         = 0x00000386, -- (0x186 | ACT_FLAG_STATIONARY)
	ACT_PLACING_DOWN               = 0x00000387, -- (0x187 | ACT_FLAG_STATIONARY)
	ACT_THROWING                   = 0x80000588, -- (0x188 | ACT_FLAG_MOVING | ACT_FLAG_THROWING)
	ACT_HEAVY_THROW                = 0x80000589, -- (0x189 | ACT_FLAG_MOVING | ACT_FLAG_THROWING)
	ACT_PICKING_UP_BOWSER          = 0x00000390, -- (0x190 | ACT_FLAG_STATIONARY)
	ACT_HOLDING_BOWSER             = 0x00000391, -- (0x191 | ACT_FLAG_STATIONARY)
	ACT_RELEASING_BOWSER           = 0x00000392 -- (0x192 | ACT_FLAG_STATIONARY)
}

g64types.SM64SoundTable = {
	SOUND_ACTION_TERRAIN_JUMP               		= { 0, 4, 0x00, 0x80, 8 },
	SOUND_ACTION_TERRAIN_LANDING            		= { 0, 4, 0x08, 0x80, 8 },
	SOUND_ACTION_TERRAIN_STEP               		= { 0, 6, 0x10, 0x80, 8 },
	SOUND_ACTION_TERRAIN_BODY_HIT_GROUND    		= { 0, 4, 0x18, 0x80, 8 },
	SOUND_ACTION_TERRAIN_STEP_TIPTOE        		= { 0, 6, 0x20, 0x80, 8 },
	SOUND_ACTION_TERRAIN_STUCK_IN_GROUND    		= { 0, 4, 0x48, 0x80, 8 },
	SOUND_ACTION_TERRAIN_HEAVY_LANDING      		= { 0, 4, 0x60, 0x80, 8 },

	SOUND_ACTION_METAL_JUMP                         = { 0, 4, 0x28, 0x90, 8 },
	SOUND_ACTION_METAL_LANDING                      = { 0, 4, 0x29, 0x90, 8 },
	SOUND_ACTION_METAL_STEP                         = { 0, 4, 0x2A, 0x90, 8 },
	SOUND_ACTION_METAL_HEAVY_LANDING                = { 0, 4, 0x2B, 0x90, 8 },
	SOUND_ACTION_CLAP_HANDS_COLD                    = { 0, 6, 0x2C, 0x00, 8 },
	SOUND_ACTION_HANGING_STEP                       = { 0, 4, 0x2D, 0xA0, 8 },
	SOUND_ACTION_QUICKSAND_STEP                     = { 0, 4, 0x2E, 0x00, 8 },
	SOUND_ACTION_METAL_STEP_TIPTOE                  = { 0, 4, 0x2F, 0x90, 8 },
	SOUND_ACTION_UNKNOWN430      					= { 0, 4, 0x30, 0xC0, 8 },
	SOUND_ACTION_UNKNOWN431      					= { 0, 4, 0x31, 0x60, 8 },
	SOUND_ACTION_UNKNOWN432      					= { 0, 4, 0x32, 0x80, 8 },
	SOUND_ACTION_SWIM                               = { 0, 4, 0x33, 0x80, 8 },
	SOUND_ACTION_UNKNOWN434      					= { 0, 4, 0x34, 0x80, 8 },
	SOUND_ACTION_THROW                              = { 0, 4, 0x35, 0x80, 8 },
	SOUND_ACTION_KEY_SWISH                          = { 0, 4, 0x36, 0x80, 8 },
	SOUND_ACTION_SPIN                               = { 0, 4, 0x37, 0x80, 8 },
	SOUND_ACTION_TWIRL                              = { 0, 4, 0x38, 0x80, 8 },// same sound as spin
	SOUND_ACTION_CLIMB_UP_TREE   					= { 0, 4, 0x3A, 0x80, 8 },
	SOUND_ACTION_CLIMB_DOWN_TREE 					= 0x003B,
	SOUND_ACTION_UNK3C           					= 0x003C,
	SOUND_ACTION_UNKNOWN43D      					= { 0, 4, 0x3D, 0x80, 8 },
	SOUND_ACTION_UNKNOWN43E      					= { 0, 4, 0x3E, 0x80, 8 },
	SOUND_ACTION_PAT_BACK        					= { 0, 4, 0x3F, 0x80, 8 },
	SOUND_ACTION_BRUSH_HAIR                         = { 0, 4, 0x40, 0x80, 8 },
	SOUND_ACTION_CLIMB_UP_POLE  					= { 0, 4, 0x41, 0x80, 8 },
	SOUND_ACTION_METAL_BONK                         = { 0, 4, 0x42, 0x80, 8 },
	SOUND_ACTION_UNSTUCK_FROM_GROUND                = { 0, 4, 0x43, 0x80, 8 },
	SOUND_ACTION_HIT             					= { 0, 4, 0x44, 0xC0, 8 },
	SOUND_ACTION_HIT_2           					= { 0, 4, 0x44, 0xB0, 8 },
	SOUND_ACTION_HIT_3           					= { 0, 4, 0x44, 0xA0, 8 },
	SOUND_ACTION_BONK                               = { 0, 4, 0x45, 0xA0, 8 },
	SOUND_ACTION_SHRINK_INTO_BBH                    = { 0, 4, 0x46, 0xA0, 8 },
	SOUND_ACTION_SWIM_FAST                          = { 0, 4, 0x47, 0xA0, 8 },
	SOUND_ACTION_METAL_JUMP_WATER                   = { 0, 4, 0x50, 0x90, 8 },
	SOUND_ACTION_METAL_LAND_WATER                   = { 0, 4, 0x51, 0x90, 8 },
	SOUND_ACTION_METAL_STEP_WATER                   = { 0, 4, 0x52, 0x90, 8 },
	SOUND_ACTION_UNK53           					= 0x0053,
	SOUND_ACTION_UNK54           					= 0x0054,
	SOUND_ACTION_UNK55           					= 0x0055,
	SOUND_ACTION_FLYING_FAST     					= { 0, 4, 0x56, 0x80, 8 },// "swoop"?
	SOUND_ACTION_TELEPORT                           = { 0, 4, 0x57, 0xC0, 8 },
	SOUND_ACTION_UNKNOWN458      					= { 0, 4, 0x58, 0xA0, 8 },
	SOUND_ACTION_BOUNCE_OFF_OBJECT   				= { 0, 4, 0x59, 0xB0, 8 },
	SOUND_ACTION_SIDE_FLIP_UNK   					= { 0, 4, 0x5A, 0x80, 8 },
	SOUND_ACTION_READ_SIGN                          = { 0, 4, 0x5B, 0xFF, 8 },
	SOUND_ACTION_UNKNOWN45C      					= { 0, 4, 0x5C, 0x80, 8 },
	SOUND_ACTION_UNK5D           					= 0x005D,
	SOUND_ACTION_INTRO_UNK45E    					= { 0, 4, 0x5E, 0x80, 8 },
	SOUND_ACTION_INTRO_UNK45F    					= { 0, 4, 0x5F, 0x80, 8 },

/* Moving Sound Effects */

// Terrain-dependent moving sounds; a value 0-7 is added to the sound ID befo,e
// playing. See higher up for the different terrain types.
	SOUND_MOVING_TERRAIN_SLIDE              		= { 1, 4, 0x00, 0x00, 0 },
	SOUND_MOVING_TERRAIN_RIDING_SHELL       		= { 1, 4, 0x20, 0x00, 0 },

	SOUND_MOVING_LAVA_BURN                  		= { 1, 4, 0x10, 0x00, 0 },// ?
	SOUND_MOVING_SLIDE_DOWN_POLE            		= { 1, 4, 0x11, 0x00, 0 },// ?
	SOUND_MOVING_SLIDE_DOWN_TREE            		= { 1, 4, 0x12, 0x80, 0 },
	SOUND_MOVING_QUICKSAND_DEATH            		= { 1, 4, 0x14, 0x00, 0 },
	SOUND_MOVING_SHOCKED                    		= { 1, 4, 0x16, 0x00, 0 },
	SOUND_MOVING_FLYING                     		= { 1, 4, 0x17, 0x00, 0 },
	SOUND_MOVING_ALMOST_DROWNING            		= { 1, 0xC, 0x18, 0x00, 0,},
	SOUND_MOVING_AIM_CANNON                 		= { 1, 0xD, 0x19, 0x20, 0,},
	SOUND_MOVING_UNK1A                      		= 0x101A, // ?
	SOUND_MOVING_RIDING_SHELL_LAVA          		= { 1, 4, 0x28, 0x00, 0 },

/* Mario Sound Effects */
// A random number 0-2 is added to the sound ID before playing, producing Yah,Wah/Hoo
	SOUND_MARIO_YAH_WAH_HOO                         = { 2, 4, 0x00, 0x80, 8 },
	SOUND_MARIO_HOOHOO           					= { 2, 4, 0x03, 0x80, 8 },
	SOUND_MARIO_YAHOO            					= { 2, 4, 0x04, 0x80, 8 },
	SOUND_MARIO_UH               					= { 2, 4, 0x05, 0x80, 8 },
	SOUND_MARIO_HRMM             					= { 2, 4, 0x06, 0x80, 8 },
	SOUND_MARIO_WAH2             					= { 2, 4, 0x07, 0x80, 8 },
	SOUND_MARIO_WHOA             					= { 2, 4, 0x08, 0xC0, 8 },
	SOUND_MARIO_EEUH             					= { 2, 4, 0x09, 0x80, 8 },
	SOUND_MARIO_ATTACKED         					= { 2, 4, 0x0A, 0xFF, 8 },
	SOUND_MARIO_OOOF             					= { 2, 4, 0x0B, 0x80, 8 },
	SOUND_MARIO_OOOF2            					= { 2, 4, 0x0B, 0xD0, 8 },
	SOUND_MARIO_HERE_WE_GO                          = { 2, 4, 0x0C, 0x80, 8 },
	SOUND_MARIO_YAWNING         					= { 2, 4, 0x0D, 0x80, 8 },
	SOUND_MARIO_SNORING1                            = { 2, 4, 0x0E, 0x80, 8 },
	SOUND_MARIO_SNORING2                            = { 2, 4, 0x0F, 0x80, 8 },
	SOUND_MARIO_WAAAOOOW         					= { 2, 4, 0x10, 0xC0, 8 },
	SOUND_MARIO_HAHA             					= { 2, 4, 0x11, 0x80, 8 },
	SOUND_MARIO_HAHA_2           					= { 2, 4, 0x11, 0xF0, 8 },
	SOUND_MARIO_UH2              					= { 2, 4, 0x13, 0xD0, 8 },
	SOUND_MARIO_UH2_2            					= { 2, 4, 0x13, 0x80, 8 },
	SOUND_MARIO_ON_FIRE          					= { 2, 4, 0x14, 0xA0, 8 },
	SOUND_MARIO_DYING            					= { 2, 4, 0x15, 0xFF, 8 },
	SOUND_MARIO_PANTING_COLD                        = { 2, 4, 0x16, 0x80, 8 },

// A random number 0-2 is added to the sound ID before playing
	SOUND_MARIO_PANTING                     		= { 2, 4, 0x18, 0x80, 8 },

	SOUND_MARIO_COUGHING1                   		= { 2, 4, 0x1B, 0x80, 8 },
	SOUND_MARIO_COUGHING2                   		= { 2, 4, 0x1C, 0x80, 8 },
	SOUND_MARIO_COUGHING3                   		= { 2, 4, 0x1D, 0x80, 8 },
	SOUND_MARIO_PUNCH_YAH                   		= { 2, 4, 0x1E, 0x80, 8 },
	SOUND_MARIO_PUNCH_HOO                   		= { 2, 4, 0x1F, 0x80, 8 },
	SOUND_MARIO_MAMA_MIA                    		= { 2, 4, 0x20, 0x80, 8 },
	SOUND_MARIO_OKEY_DOKEY                  		= 0x2021,
	SOUND_MARIO_GROUND_POUND_WAH            		= { 2, 4, 0x22, 0x80, 8 },
	SOUND_MARIO_DROWNING                    		= { 2, 4, 0x23, 0xF0, 8 },
	SOUND_MARIO_PUNCH_WAH                   		= { 2, 4, 0x24, 0x80, 8 },

/* Mario Sound Effects (US/EU only) */
	SOUND_PEACH_DEAR_MARIO                  		= { 2, 4, 0x28, 0xFF, 8 },

// A random number 0-4 is added to the sound ID before playing, producing one,of
// Yahoo! (60% chance), Waha! (20%), or Yippee! (20%).
	SOUND_MARIO_YAHOO_WAHA_YIPPEE           		= { 2, 4, 0x2B, 0x80, 8 },

	SOUND_MARIO_DOH                         		= { 2, 4, 0x30, 0x80, 8 },
	SOUND_MARIO_GAME_OVER                   		= { 2, 4, 0x31, 0xFF, 8 },
	SOUND_MARIO_HELLO                       		= { 2, 4, 0x32, 0xFF, 8 },
	SOUND_MARIO_PRESS_START_TO_PLAY         		= { 2, 4, 0x33, 0xFF, 0xA},
	SOUND_MARIO_TWIRL_BOUNCE                		= { 2, 4, 0x34, 0x80, 8 },
	SOUND_MARIO_SNORING3                    		= { 2, 4, 0x35, 0xFF, 8 },
	SOUND_MARIO_SO_LONGA_BOWSER             		= { 2, 4, 0x36, 0x80, 8 },
	SOUND_MARIO_IMA_TIRED                   		= { 2, 4, 0x37, 0x80, 8 },

/* Princess Peach Sound Effects (US/EU only) */
	SOUND_PEACH_MARIO                       		= { 2, 4, 0x38, 0xFF, 8 },
	SOUND_PEACH_POWER_OF_THE_STARS          		= { 2, 4, 0x39, 0xFF, 8 },
	SOUND_PEACH_THANKS_TO_YOU               		= { 2, 4, 0x3A, 0xFF, 8 },
	SOUND_PEACH_THANK_YOU_MARIO             		= { 2, 4, 0x3B, 0xFF, 8 },
	SOUND_PEACH_SOMETHING_SPECIAL           		= { 2, 4, 0x3C, 0xFF, 8 },
	SOUND_PEACH_BAKE_A_CAKE                 		= { 2, 4, 0x3D, 0xFF, 8 },
	SOUND_PEACH_FOR_MARIO                   		= { 2, 4, 0x3E, 0xFF, 8 },
	SOUND_PEACH_MARIO2                      		= { 2, 4, 0x3F, 0xFF, 8 },

/* General Sound Effects */
	SOUND_GENERAL_ACTIVATE_CAP_SWITCH               = { 3, 0, 0x00, 0x80, 8 },
	SOUND_GENERAL_FLAME_OUT          				= { 3, 0, 0x03, 0x80, 8 },
	SOUND_GENERAL_OPEN_WOOD_DOOR     				= { 3, 0, 0x04, 0xC0, 8 },
	SOUND_GENERAL_CLOSE_WOOD_DOOR    				= { 3, 0, 0x05, 0xC0, 8 },
	SOUND_GENERAL_OPEN_IRON_DOOR     				= { 3, 0, 0x06, 0xC0, 8 },
	SOUND_GENERAL_CLOSE_IRON_DOOR    				= { 3, 0, 0x07, 0xC0, 8 },
	SOUND_GENERAL_BUBBLES            				= 0x3008,
	SOUND_GENERAL_MOVING_WATER       				= { 3, 0, 0x09, 0x00, 8 },
	SOUND_GENERAL_SWISH_WATER        				= { 3, 0, 0x0A, 0x00, 8 },
	SOUND_GENERAL_QUIET_BUBBLE       				= { 3, 0, 0x0B, 0x00, 8 },
	SOUND_GENERAL_VOLCANO_EXPLOSION                 = { 3, 0, 0x0C, 0x80, 8 },
	SOUND_GENERAL_QUIET_BUBBLE2      				= { 3, 0, 0x0D, 0x00, 8 },
	SOUND_GENERAL_CASTLE_TRAP_OPEN                  = { 3, 0, 0x0E, 0x80, 8 },
	SOUND_GENERAL_WALL_EXPLOSION                    = { 3, 0, 0x0F, 0x00, 8 },
	SOUND_GENERAL_COIN               				= { 3, 8, 0x11, 0x80, 8 },
	SOUND_GENERAL_COIN_WATER         				= { 3, 8, 0x12, 0x80, 8 },
	SOUND_GENERAL_SHORT_STAR         				= { 3, 0, 0x16, 0x00, 9 },
	SOUND_GENERAL_BIG_CLOCK          				= { 3, 0, 0x17, 0x00, 8 },
	SOUND_GENERAL_LOUD_POUND         				= 0x3018,// _TERRAIN?
	SOUND_GENERAL_LOUD_POUND2        				= 0x3019,
	SOUND_GENERAL_SHORT_POUND1       				= 0x301A,
	SOUND_GENERAL_SHORT_POUND2       				= 0x301B,
	SOUND_GENERAL_SHORT_POUND3       				= 0x301C,
	SOUND_GENERAL_SHORT_POUND4       				= 0x301D,
	SOUND_GENERAL_SHORT_POUND5       				= 0x301E,
	SOUND_GENERAL_SHORT_POUND6       				= 0x301F,
	SOUND_GENERAL_OPEN_CHEST                        = { 3, 1, 0x20, 0x80, 8 },
	SOUND_GENERAL_CLAM_SHELL1        				= { 3, 1, 0x22, 0x80, 8 },
	SOUND_GENERAL_BOX_LANDING        				= { 3, 0, 0x24, 0x00, 8 },
	SOUND_GENERAL_BOX_LANDING_2      				= { 3, 2, 0x24, 0x00, 8 },
	SOUND_GENERAL_UNKNOWN1           				= { 3, 0, 0x25, 0x00, 8 },
	SOUND_GENERAL_UNKNOWN1_2         				= { 3, 2, 0x25, 0x00, 8 },
	SOUND_GENERAL_CLAM_SHELL2        				= { 3, 0, 0x26, 0x40, 8 },
	SOUND_GENERAL_CLAM_SHELL3        				= { 3, 0, 0x27, 0x40, 8 },
	SOUND_GENERAL_PAINTING_EJECT                    = { 3, 9, 0x28, 0x00, 8 },
	SOUND_GENERAL_LEVEL_SELECT_CHANGE               = { 3, 0, 0x2B, 0x00, 8 },
	SOUND_GENERAL_PLATFORM           				= { 3, 0, 0x2D, 0x80, 8 },
	SOUND_GENERAL_DONUT_PLATFORM_EXPLOSION          = { 3, 0, 0x2E, 0x20, 8 },
	SOUND_GENERAL_BOWSER_BOMB_EXPLOSION             = { 3, 1, 0x2F, 0x00, 8 },
	SOUND_GENERAL_COIN_SPURT         				= { 3, 0, 0x30, 0x00, 8 },
	SOUND_GENERAL_COIN_SPURT_2       				= { 3, 8, 0x30, 0x00, 8 },
	SOUND_GENERAL_COIN_SPURT_EU      				= { 3, 8, 0x30, 0x20, 8 },

	SOUND_GENERAL_EXPLOSION6         				= 0x3031,
	SOUND_GENERAL_UNK32              				= 0x3032,
	SOUND_GENERAL_BOAT_TILT1         				= { 3, 0, 0x34, 0x40, 8 },
	SOUND_GENERAL_BOAT_TILT2         				= { 3, 0, 0x35, 0x40, 8 },
	SOUND_GENERAL_COIN_DROP          				= { 3, 0, 0x36, 0x40, 8 },
	SOUND_GENERAL_UNKNOWN3_LOWPRIO   				= { 3, 0, 0x37, 0x00, 8 },
	SOUND_GENERAL_UNKNOWN3           				= { 3, 0, 0x37, 0x80, 8 },
	SOUND_GENERAL_UNKNOWN3_2         				= { 3, 8, 0x37, 0x80, 8 },
	SOUND_GENERAL_PENDULUM_SWING                    = { 3, 0, 0x38, 0x00, 8 },
	SOUND_GENERAL_CHAIN_CHOMP1       				= { 3, 0, 0x39, 0x00, 8 },
	SOUND_GENERAL_CHAIN_CHOMP2       				= { 3, 0, 0x3A, 0x00, 8 },
	SOUND_GENERAL_DOOR_TURN_KEY                     = { 3, 0, 0x3B, 0x00, 8 },
	SOUND_GENERAL_MOVING_IN_SAND     				= { 3, 0, 0x3C, 0x00, 8 },
	SOUND_GENERAL_UNKNOWN4_LOWPRIO   				= { 3, 0, 0x3D, 0x00, 8 },
	SOUND_GENERAL_UNKNOWN4           				= { 3, 0, 0x3D, 0x80, 8 },
	SOUND_GENERAL_MOVING_PLATFORM_SWITCH            = { 3, 0, 0x3E, 0x00, 8 },
	SOUND_GENERAL_CAGE_OPEN          				= { 3, 0, 0x3F, 0xA0, 8 },
	SOUND_GENERAL_QUIET_POUND1_LOWPRIO   			= { 3, 0, 0x40, 0x00, 8 },
	SOUND_GENERAL_QUIET_POUND1       				= { 3, 0, 0x40, 0x40, 8 },
	SOUND_GENERAL_BREAK_BOX          				= { 3, 0, 0x41, 0xC0, 8 },
	SOUND_GENERAL_DOOR_INSERT_KEY                   = { 3, 0, 0x42, 0x00, 8 },
	SOUND_GENERAL_QUIET_POUND2       				= { 3, 0, 0x43, 0x00, 8 },
	SOUND_GENERAL_BIG_POUND          				= { 3, 0, 0x44, 0x00, 8 },
	SOUND_GENERAL_UNK45              				= { 3, 0, 0x45, 0x00, 8 },
	SOUND_GENERAL_UNK46_LOWPRIO      				= { 3, 0, 0x46, 0x00, 8 },
	SOUND_GENERAL_UNK46              				= { 3, 0, 0x46, 0x80, 8 },
	SOUND_GENERAL_CANNON_UP          				= { 3, 0, 0x47, 0x80, 8 },
	SOUND_GENERAL_GRINDEL_ROLL       				= { 3, 0, 0x48, 0x00, 8 },
	SOUND_GENERAL_EXPLOSION7         				= 0x3049,
	SOUND_GENERAL_SHAKE_COFFIN       				= 0x304A,
	SOUND_GENERAL_RACE_GUN_SHOT      				= { 3, 1, 0x4D, 0x40, 8 },
	SOUND_GENERAL_STAR_DOOR_OPEN     				= { 3, 0, 0x4E, 0xC0, 8 },
	SOUND_GENERAL_STAR_DOOR_CLOSE    				= { 3, 0, 0x4F, 0xC0, 8 },
	SOUND_GENERAL_POUND_ROCK         				= { 3, 0, 0x56, 0x00, 8 },
	SOUND_GENERAL_STAR_APPEARS       				= { 3, 0, 0x57, 0xFF, 9 },
	SOUND_GENERAL_COLLECT_1UP                       = { 3, 0, 0x58, 0xFF, 8 },
	SOUND_GENERAL_BUTTON_PRESS_LOWPRIO   			= { 3, 0, 0x5A, 0x00, 8 },
	SOUND_GENERAL_BUTTON_PRESS       				= { 3, 0, 0x5A, 0x40, 8 },
	SOUND_GENERAL_BUTTON_PRESS_2_LOWPRIO 			= { 3, 1, 0x5A, 0x00, 8 },
	SOUND_GENERAL_BUTTON_PRESS_2     				= { 3, 1, 0x5A, 0x40, 8 },
	SOUND_GENERAL_ELEVATOR_MOVE      				= { 3, 0, 0x5B, 0x00, 8 },
	SOUND_GENERAL_ELEVATOR_MOVE_2    				= { 3, 1, 0x5B, 0x00, 8 },
	SOUND_GENERAL_SWISH_AIR          				= { 3, 0, 0x5C, 0x00, 8 },
	SOUND_GENERAL_SWISH_AIR_2        				= { 3, 1, 0x5C, 0x00, 8 },
	SOUND_GENERAL_HAUNTED_CHAIR      				= { 3, 0, 0x5D, 0x00, 8 },
	SOUND_GENERAL_SOFT_LANDING       				= { 3, 0, 0x5E, 0x00, 8 },
	SOUND_GENERAL_HAUNTED_CHAIR_MOVE 				= { 3, 0, 0x5F, 0x00, 8 },
	SOUND_GENERAL_BOWSER_PLATFORM    				= { 3, 0, 0x62, 0x80, 8 },
	SOUND_GENERAL_BOWSER_PLATFORM_2  				= { 3, 1, 0x62, 0x80, 8 },
	SOUND_GENERAL_HEART_SPIN         				= { 3, 0, 0x64, 0xC0, 8 },
	SOUND_GENERAL_POUND_WOOD_POST    				= { 3, 0, 0x65, 0xC0, 8 },
	SOUND_GENERAL_WATER_LEVEL_TRIG   				= { 3, 0, 0x66, 0x80, 8 },
	SOUND_GENERAL_SWITCH_DOOR_OPEN   				= { 3, 0, 0x67, 0xA0, 8 },
	SOUND_GENERAL_RED_COIN           				= { 3, 0, 0x68, 0x90, 8 },
	SOUND_GENERAL_BIRDS_FLY_AWAY     				= { 3, 0, 0x69, 0x00, 8 },
	SOUND_GENERAL_METAL_POUND        				= { 3, 0, 0x6B, 0x80, 8 },
	SOUND_GENERAL_BOING1             				= { 3, 0, 0x6C, 0x40, 8 },
	SOUND_GENERAL_BOING2_LOWPRIO     				= { 3, 0, 0x6D, 0x20, 8 },
	SOUND_GENERAL_BOING2             				= { 3, 0, 0x6D, 0x40, 8 },
	SOUND_GENERAL_YOSHI_WALK         				= { 3, 0, 0x6E, 0x20, 8 },
	SOUND_GENERAL_ENEMY_ALERT1       				= { 3, 0, 0x6F, 0x30, 8 },
	SOUND_GENERAL_YOSHI_TALK         				= { 3, 0, 0x70, 0x30, 8 },
	SOUND_GENERAL_SPLATTERING        				= { 3, 0, 0x71, 0x30, 8 },
	SOUND_GENERAL_BOING3             				= 0x3072,
	SOUND_GENERAL_GRAND_STAR         				= { 3, 0, 0x73, 0x00, 8 },
	SOUND_GENERAL_GRAND_STAR_JUMP    				= { 3, 0, 0x74, 0x00, 8 },
	SOUND_GENERAL_BOAT_ROCK          				= { 3, 0, 0x75, 0x00, 8 },
	SOUND_GENERAL_VANISH_SFX         				= { 3, 0, 0x76, 0x20, 8 },

/* Environment Sound Effects */
	SOUND_ENV_WATERFALL1             				= { 4, 0, 0x00, 0x00, 0 },
	SOUND_ENV_WATERFALL2             				= { 4, 0, 0x01, 0x00, 0 },
	SOUND_ENV_ELEVATOR1              				= { 4, 0, 0x02, 0x00, 0 },
	SOUND_ENV_DRONING1               				= { 4, 1, 0x03, 0x00, 0 },
	SOUND_ENV_DRONING2               				= { 4, 0, 0x04, 0x00, 0 },
	SOUND_ENV_WIND1                  				= { 4, 0, 0x05, 0x00, 0 },
	SOUND_ENV_MOVING_SAND_SNOW       				= 0x4006,
	SOUND_ENV_UNK07                  				= 0x4007,
	SOUND_ENV_ELEVATOR2              				= { 4, 0, 0x08, 0x00, 0 },
	SOUND_ENV_WATER                  				= { 4, 0, 0x09, 0x00, 0 },
	SOUND_ENV_UNKNOWN2               				= { 4, 0, 0x0A, 0x00, 0 },
	SOUND_ENV_BOAT_ROCKING1          				= { 4, 0, 0x0B, 0x00, 0 },
	SOUND_ENV_ELEVATOR3              				= { 4, 0, 0x0C, 0x00, 0 },
	SOUND_ENV_ELEVATOR4              				= { 4, 0, 0x0D, 0x00, 0 },
	SOUND_ENV_ELEVATOR4_2            				= { 4, 1, 0x0D, 0x00, 0 },
	SOUND_ENV_MOVINGSAND             				= { 4, 0, 0x0E, 0x00, 0 },
	SOUND_ENV_MERRY_GO_ROUND_CREAKING    			= { 4, 0, 0x0F, 0x40, 0 },
	SOUND_ENV_WIND2                  				= { 4, 0, 0x10, 0x80, 0 },
	SOUND_ENV_UNK12                  				= 0x4012,
	SOUND_ENV_SLIDING                				= { 4, 0, 0x13, 0x00, 0 },
	SOUND_ENV_STAR                   				= { 4, 0, 0x14, 0x00, 1 },
	SOUND_ENV_UNKNOWN4               				= { 4, 1, 0x15, 0x00, 0 },
	SOUND_ENV_WATER_DRAIN            				= { 4, 1, 0x16, 0x00, 0 },
	SOUND_ENV_METAL_BOX_PUSH         				= { 4, 0, 0x17, 0x80, 0 },
	SOUND_ENV_SINK_QUICKSAND         				= { 4, 0, 0x18, 0x80, 0 },

/* Object Sound Effects */
	SOUND_OBJ_SUSHI_SHARK_WATER_SOUND               = { 5, 0, 0x00, 0x80, 8 },
	SOUND_OBJ_MRI_SHOOT                             = { 5, 0, 0x01, 0x00, 8 },
	SOUND_OBJ_BABY_PENGUIN_WALK                     = { 5, 0, 0x02, 0x00, 8 },
	SOUND_OBJ_BOWSER_WALK                           = { 5, 0, 0x03, 0x00, 8 },
	SOUND_OBJ_BOWSER_TAIL_PICKUP                    = { 5, 0, 0x05, 0x00, 8 },
	SOUND_OBJ_BOWSER_DEFEATED                       = { 5, 0, 0x06, 0x00, 8 },
	SOUND_OBJ_BOWSER_SPINNING                       = { 5, 0, 0x07, 0x00, 8 },
	SOUND_OBJ_BOWSER_INHALING                       = { 5, 0, 0x08, 0x00, 8 },
	SOUND_OBJ_BIG_PENGUIN_WALK                      = { 5, 0, 0x09, 0x80, 8 },
	SOUND_OBJ_BOO_BOUNCE_TOP                        = { 5, 0, 0x0A, 0x00, 8 },
	SOUND_OBJ_BOO_LAUGH_SHORT                       = { 5, 0, 0x0B, 0x00, 8 },
	SOUND_OBJ_THWOMP                                = { 5, 0, 0x0C, 0xA0, 8 },
	SOUND_OBJ_CANNON1                				= { 5, 0, 0x0D, 0xF0, 8 },
	SOUND_OBJ_CANNON2                				= { 5, 0, 0x0E, 0xF0, 8 },
	SOUND_OBJ_CANNON3                				= { 5, 0, 0x0F, 0xF0, 8 },
	SOUND_OBJ_JUMP_WALK_WATER        				= 0x5012,
	SOUND_OBJ_UNKNOWN2               				= { 5, 0, 0x13, 0x00, 8 },
	SOUND_OBJ_MRI_DEATH                             = { 5, 0, 0x14, 0x00, 8 },
	SOUND_OBJ_POUNDING1              				= { 5, 0, 0x15, 0x50, 8 },
	SOUND_OBJ_POUNDING1_HIGHPRIO     				= { 5, 0, 0x15, 0x80, 8 },
	SOUND_OBJ_WHOMP_LOWPRIO                         = { 5, 0, 0x16, 0x60, 8 },
	SOUND_OBJ_KING_BOBOMB                           = { 5, 0, 0x16, 0x80, 8 },
	SOUND_OBJ_BULLY_METAL            				= { 5, 0, 0x17, 0x80, 8 },
	SOUND_OBJ_BULLY_EXPLODE          				= { 5, 0, 0x18, 0xA0, 8 },
	SOUND_OBJ_BULLY_EXPLODE_2        				= { 5, 1, 0x18, 0xA0, 8 },
	SOUND_OBJ_POUNDING_CANNON        				= { 5, 0, 0x1A, 0x50, 8 },
	SOUND_OBJ_BULLY_WALK             				= { 5, 0, 0x1B, 0x30, 8 },
	SOUND_OBJ_UNKNOWN3               				= { 5, 0, 0x1D, 0x80, 8 },
	SOUND_OBJ_UNKNOWN4               				= { 5, 0, 0x1E, 0xA0, 8 },
	SOUND_OBJ_BABY_PENGUIN_DIVE                     = { 5, 0, 0x1F, 0x40, 8 },
	SOUND_OBJ_GOOMBA_WALK                           = { 5, 0, 0x20, 0x00, 8 },
	SOUND_OBJ_UKIKI_CHATTER_LONG                    = { 5, 0, 0x21, 0x00, 8 },
	SOUND_OBJ_MONTY_MOLE_ATTACK                     = { 5, 0, 0x22, 0x00, 8 },
	SOUND_OBJ_EVIL_LAKITU_THROW                     = { 5, 0, 0x22, 0x20, 8 },
	SOUND_OBJ_UNK23                  				= 0x5023,
	SOUND_OBJ_DYING_ENEMY1                          = { 5, 0, 0x24, 0x40, 8 },
	SOUND_OBJ_CANNON4                				= { 5, 0, 0x25, 0x40, 8 },
	SOUND_OBJ_DYING_ENEMY2           				= 0x5026,
	SOUND_OBJ_BOBOMB_WALK                           = { 5, 0, 0x27, 0x00, 8 },
	SOUND_OBJ_SOMETHING_LANDING      				= { 5, 0, 0x28, 0x80, 8 },
	SOUND_OBJ_DIVING_IN_WATER        				= { 5, 0, 0x29, 0xA0, 8 },
	SOUND_OBJ_SNOW_SAND1             				= { 5, 0, 0x2A, 0x00, 8 },
	SOUND_OBJ_SNOW_SAND2             				= { 5, 0, 0x2B, 0x00, 8 },
	SOUND_OBJ_DEFAULT_DEATH                         = { 5, 0, 0x2C, 0x80, 8 },
	SOUND_OBJ_BIG_PENGUIN_YELL                      = { 5, 0, 0x2D, 0x00, 8 },
	SOUND_OBJ_WATER_BOMB_BOUNCING                   = { 5, 0, 0x2E, 0x80, 8 },
	SOUND_OBJ_GOOMBA_ALERT                          = { 5, 0, 0x2F, 0x00, 8 },
	SOUND_OBJ_WIGGLER_JUMP                          = { 5, 0, 0x2F, 0x60, 8 },
	SOUND_OBJ_STOMPED                				= { 5, 0, 0x30, 0x80, 8 },
	SOUND_OBJ_UNKNOWN6               				= { 5, 0, 0x31, 0x00, 8 },
	SOUND_OBJ_DIVING_INTO_WATER      				= { 5, 0, 0x32, 0x40, 8 },
	SOUND_OBJ_PIRANHA_PLANT_SHRINK                  = { 5, 0, 0x33, 0x40, 8 },
	SOUND_OBJ_KOOPA_THE_QUICK_WALK                  = { 5, 0, 0x34, 0x20, 8 },
	SOUND_OBJ_KOOPA_WALK                            = { 5, 0, 0x35, 0x00, 8 },
	SOUND_OBJ_BULLY_WALKING                         = { 5, 0, 0x36, 0x60, 8 },
	SOUND_OBJ_DORRIE                                = { 5, 0, 0x37, 0x60, 8 },
	SOUND_OBJ_BOWSER_LAUGH                          = { 5, 0, 0x38, 0x80, 8 },
	SOUND_OBJ_UKIKI_CHATTER_SHORT                   = { 5, 0, 0x39, 0x00, 8 },
	SOUND_OBJ_UKIKI_CHATTER_IDLE                    = { 5, 0, 0x3A, 0x00, 8 },
	SOUND_OBJ_UKIKI_STEP_DEFAULT                    = { 5, 0, 0x3B, 0x00, 8 },
	SOUND_OBJ_UKIKI_STEP_LEAVES                     = { 5, 0, 0x3C, 0x00, 8 },
	SOUND_OBJ_KOOPA_TALK                            = { 5, 0, 0x3D, 0xA0, 8 },
	SOUND_OBJ_KOOPA_DAMAGE                          = { 5, 0, 0x3E, 0xA0, 8 },
	SOUND_OBJ_KLEPTO1                				= { 5, 0, 0x3F, 0x40, 8 },
	SOUND_OBJ_KLEPTO2                				= { 5, 0, 0x40, 0x60, 8 },
	SOUND_OBJ_KING_BOBOMB_TALK                      = { 5, 0, 0x41, 0x00, 8 },
	SOUND_OBJ_KING_BOBOMB_JUMP                      = { 5, 0, 0x46, 0x80, 8 },
	SOUND_OBJ_KING_WHOMP_DEATH                      = { 5, 1, 0x47, 0xC0, 8 },
	SOUND_OBJ_BOO_LAUGH_LONG                        = { 5, 0, 0x48, 0x00, 8 },
	SOUND_OBJ_EEL                    				= { 5, 0, 0x4A, 0x00, 8 },
	SOUND_OBJ_EEL_2                  				= { 5, 2, 0x4A, 0x00, 8 },
	SOUND_OBJ_EYEROK_SHOW_EYE                       = { 5, 2, 0x4B, 0x00, 8 },
	SOUND_OBJ_MR_BLIZZARD_ALERT                     = { 5, 0, 0x4C, 0x00, 8 },
	SOUND_OBJ_SNUFIT_SHOOT                          = { 5, 0, 0x4D, 0x00, 8 },
	SOUND_OBJ_SKEETER_WALK                          = { 5, 0, 0x4E, 0x00, 8 },
	SOUND_OBJ_WALKING_WATER          				= { 5, 0, 0x4F, 0x00, 8 },
	SOUND_OBJ_BIRD_CHIRP3                           = { 5, 0, 0x51, 0x40, 0 },
	SOUND_OBJ_PIRANHA_PLANT_APPEAR                  = { 5, 0, 0x54, 0x20, 8 },
	SOUND_OBJ_FLAME_BLOWN                           = { 5, 0, 0x55, 0x80, 8 },
	SOUND_OBJ_MAD_PIANO_CHOMPING                    = { 5, 2, 0x56, 0x40, 8 },
	SOUND_OBJ_BOBOMB_BUDDY_TALK                     = { 5, 0, 0x58, 0x40, 8 },
	SOUND_OBJ_SPINY_UNK59            				= { 5, 0, 0x59, 0x10, 8 },
	SOUND_OBJ_WIGGLER_HIGH_PITCH                    = { 5, 0, 0x5C, 0x40, 8 },
	SOUND_OBJ_HEAVEHO_TOSSED                        = { 5, 0, 0x5D, 0x40, 8 },
	SOUND_OBJ_WIGGLER_DEATH          				= 0x505E,
	SOUND_OBJ_BOWSER_INTRO_LAUGH                    = { 5, 0, 0x5F, 0x80, 9 },
	SOUND_OBJ_ENEMY_DEATH_HIGH       				= { 5, 0, 0x60, 0xB0, 8 },
	SOUND_OBJ_ENEMY_DEATH_LOW        				= { 5, 0, 0x61, 0xB0, 8 },
	SOUND_OBJ_SWOOP_DEATH                           = { 5, 0, 0x62, 0xB0, 8 },
	SOUND_OBJ_KOOPA_FLYGUY_DEATH                    = { 5, 0, 0x63, 0xB0, 8 },
	SOUND_OBJ_POKEY_DEATH                           = { 5, 0, 0x63, 0xC0, 8 },
	SOUND_OBJ_SNOWMAN_BOUNCE         				= { 5, 0, 0x64, 0xC0, 8 },
	SOUND_OBJ_SNOWMAN_EXPLODE                       = { 5, 0, 0x65, 0xD0, 8 },
	SOUND_OBJ_POUNDING_LOUD          				= { 5, 0, 0x68, 0x40, 8 },
	SOUND_OBJ_MIPS_RABBIT            				= { 5, 0, 0x6A, 0x00, 8 },
	SOUND_OBJ_MIPS_RABBIT_WATER      				= { 5, 0, 0x6C, 0x00, 8 },
	SOUND_OBJ_EYEROK_EXPLODE                        = { 5, 0, 0x6D, 0x00, 8 },
	SOUND_OBJ_CHUCKYA_DEATH                         = { 5, 1, 0x6E, 0x00, 8 },
	SOUND_OBJ_WIGGLER_TALK                          = { 5, 0, 0x6F, 0x00, 8 },
	SOUND_OBJ_WIGGLER_ATTACKED                      = { 5, 0, 0x70, 0x60, 8 },
	SOUND_OBJ_WIGGLER_LOW_PITCH                     = { 5, 0, 0x71, 0x20, 8 },
	SOUND_OBJ_SNUFIT_SKEETER_DEATH                  = { 5, 0, 0x72, 0xC0, 8 },
	SOUND_OBJ_BUBBA_CHOMP                           = { 5, 0, 0x73, 0x40, 8 },
	SOUND_OBJ_ENEMY_DEFEAT_SHRINK                   = { 5, 0, 0x74, 0x40, 8 },

	SOUND_AIR_BOWSER_SPIT_FIRE              		= { 6, 0, 0x00, 0x00, 0 },
	SOUND_AIR_UNK01                         		= 0x6001, // ?
	SOUND_AIR_LAKITU_FLY                    		= { 6, 0, 0x02, 0x80, 0 },
	SOUND_AIR_LAKITU_FLY_HIGHPRIO           		= { 6, 0, 0x02, 0xFF, 0 },
	SOUND_AIR_AMP_BUZZ                      		= { 6, 0, 0x03, 0x40, 0 },
	SOUND_AIR_BLOW_FIRE                     		= { 6, 0, 0x04, 0x80, 0 },
	SOUND_AIR_BLOW_WIND                     		= { 6, 0, 0x04, 0x40, 0 },
	SOUND_AIR_ROUGH_SLIDE                   		= { 6, 0, 0x05, 0x00, 0 },
	SOUND_AIR_HEAVEHO_MOVE                  		= { 6, 0, 0x06, 0x40, 0 },
	SOUND_AIR_UNK07                         		= 0x6007, // ?
	SOUND_AIR_BOBOMB_LIT_FUSE               		= { 6, 0, 0x08, 0x60, 0 },
	SOUND_AIR_HOWLING_WIND                  		= { 6, 0, 0x09, 0x80, 0 },
	SOUND_AIR_CHUCKYA_MOVE                  		= { 6, 0, 0x0A, 0x40, 0 },
	SOUND_AIR_PEACH_TWINKLE                 		= { 6, 0, 0x0B, 0x40, 0 },
	SOUND_AIR_CASTLE_OUTDOORS_AMBIENT       		= { 6, 0, 0x10, 0x40, 0 },

/* Menu Sound Effects */
	SOUND_MENU_CHANGE_SELECT                        = { 7, 0, 0x00, 0xF8, 8 },
	SOUND_MENU_REVERSE_PAUSE         				= 0x7001,
	SOUND_MENU_PAUSE                                = { 7, 0, 0x02, 0xF0, 8 },
	SOUND_MENU_PAUSE_HIGHPRIO                       = { 7, 0, 0x02, 0xFF, 8 },
	SOUND_MENU_PAUSE_2                              = { 7, 0, 0x03, 0xFF, 8 },
	SOUND_MENU_MESSAGE_APPEAR                       = { 7, 0, 0x04, 0x00, 8 },
	SOUND_MENU_MESSAGE_DISAPPEAR                    = { 7, 0, 0x05, 0x00, 8 },
	SOUND_MENU_CAMERA_ZOOM_IN                       = { 7, 0, 0x06, 0x00, 8 },
	SOUND_MENU_CAMERA_ZOOM_OUT                      = { 7, 0, 0x07, 0x00, 8 },
	SOUND_MENU_PINCH_MARIO_FACE                     = { 7, 0, 0x08, 0x00, 8 },
	SOUND_MENU_LET_GO_MARIO_FACE                    = { 7, 0, 0x09, 0x00, 8 },
	SOUND_MENU_HAND_APPEAR                          = { 7, 0, 0x0A, 0x00, 8 },
	SOUND_MENU_HAND_DISAPPEAR                       = { 7, 0, 0x0B, 0x00, 8 },
	SOUND_MENU_UNK0C                				= { 7, 0, 0x0C, 0x00, 8 },
	SOUND_MENU_POWER_METER          				= { 7, 0, 0x0D, 0x00, 8 },
	SOUND_MENU_CAMERA_BUZZ                          = { 7, 0, 0x0E, 0x00, 8 },
	SOUND_MENU_CAMERA_TURN                          = { 7, 0, 0x0F, 0x00, 8 },
	SOUND_MENU_UNK10                 				= 0x7010,
	SOUND_MENU_CLICK_FILE_SELECT                    = { 7, 0, 0x11, 0x00, 8 },
	SOUND_MENU_MESSAGE_NEXT_PAGE     				= { 7, 0, 0x13, 0x00, 8 },
	SOUND_MENU_COIN_ITS_A_ME_MARIO                  = { 7, 0, 0x14, 0x00, 8 },
	SOUND_MENU_YOSHI_GAIN_LIVES                     = { 7, 0, 0x15, 0x00, 8 },
	SOUND_MENU_ENTER_PIPE                           = { 7, 0, 0x16, 0xA0, 8 },
	SOUND_MENU_EXIT_PIPE                            = { 7, 0, 0x17, 0xA0, 8 },
	SOUND_MENU_BOWSER_LAUGH                         = { 7, 0, 0x18, 0x80, 8 },
	SOUND_MENU_ENTER_HOLE                           = { 7, 1, 0x19, 0x80, 8 },
	SOUND_MENU_CLICK_CHANGE_VIEW     				= { 7, 0, 0x1A, 0x80, 8 },
	SOUND_MENU_CAMERA_UNUSED1        				= 0x701B,
	SOUND_MENU_CAMERA_UNUSED2        				= 0x701C,
	SOUND_MENU_MARIO_CASTLE_WARP     				= { 7, 0, 0x1D, 0xB0, 8 },
	SOUND_MENU_STAR_SOUND                           = { 7, 0, 0x1E, 0xFF, 8 },
	SOUND_MENU_THANK_YOU_PLAYING_MY_GAME            = { 7, 0, 0x1F, 0xFF, 8 },
	SOUND_MENU_READ_A_SIGN           				= 0x7020,
	SOUND_MENU_EXIT_A_SIGN           				= 0x7021,
	SOUND_MENU_MARIO_CASTLE_WARP2    				= { 7, 0, 0x22, 0x20, 8 },
	SOUND_MENU_STAR_SOUND_OKEY_DOKEY                = { 7, 0, 0x23, 0xFF, 8 },
	SOUND_MENU_STAR_SOUND_LETS_A_GO                 = { 7, 0, 0x24, 0xFF, 8 },

// US/EU only; an index between 0-7 or 0-4 is added to the sound ID before
// playing, producing the same sound with different pitch.
	SOUND_MENU_COLLECT_RED_COIN             		= { 7, 8, 0x28, 0x90, 8 },
	SOUND_MENU_COLLECT_SECRET               		= { 7, 0, 0x30, 0x20, 8 },

// Channel 8 loads sounds from the same place as channel 3, making it possibl,
// to play two channel 3 sounds at once (since just one sound from each chann,l
// can play at a given time).
	SOUND_GENERAL2_BOBOMB_EXPLOSION         		= { 8, 0, 0x2E, 0x20, 8 },
	SOUND_GENERAL2_PURPLE_SWITCH            		= { 8, 0, 0x3E, 0xC0, 8 },
	SOUND_GENERAL2_ROTATING_BLOCK_CLICK     		= { 8, 0, 0x40, 0x00, 8 },
	SOUND_GENERAL2_SPINDEL_ROLL             		= { 8, 0, 0x48, 0x20, 8 },
	SOUND_GENERAL2_PYRAMID_TOP_SPIN         		= { 8, 1, 0x4B, 0xE0, 8 },
	SOUND_GENERAL2_PYRAMID_TOP_EXPLOSION    		= { 8, 1, 0x4C, 0xF0, 8 },
	SOUND_GENERAL2_BIRD_CHIRP2              		= { 8, 0, 0x50, 0x40, 0 },
	SOUND_GENERAL2_SWITCH_TICK_FAST         		= { 8, 0, 0x54, 0xF0, 1 },
	SOUND_GENERAL2_SWITCH_TICK_SLOW         		= { 8, 0, 0x55, 0xF0, 1 },
	SOUND_GENERAL2_STAR_APPEARS             		= { 8, 0, 0x57, 0xFF, 9 },
	SOUND_GENERAL2_ROTATING_BLOCK_ALERT     		= { 8, 0, 0x59, 0x00, 8 },
	SOUND_GENERAL2_BOWSER_EXPLODE           		= { 8, 0, 0x60, 0x00, 8 },
	SOUND_GENERAL2_BOWSER_KEY               		= { 8, 0, 0x61, 0x00, 8 },
	SOUND_GENERAL2_1UP_APPEAR               		= { 8, 0, 0x63, 0xD0, 8 },
	SOUND_GENERAL2_RIGHT_ANSWER             		= { 8, 0, 0x6A, 0xA0, 8 },

// Channel 9 loads sounds from the same place as channel 5.
	SOUND_OBJ2_BOWSER_ROAR                  		= { 9, 0, 0x04, 0x00, 8 },
	SOUND_OBJ2_PIRANHA_PLANT_BITE           		= { 9, 0, 0x10, 0x50, 8 },
	SOUND_OBJ2_PIRANHA_PLANT_DYING          		= { 9, 0, 0x11, 0x60, 8 },
	SOUND_OBJ2_BOWSER_PUZZLE_PIECE_MOVE     		= { 9, 0, 0x19, 0x20, 8 },
	SOUND_OBJ2_BULLY_ATTACKED               		= { 9, 0, 0x1C, 0x00, 8 },
	SOUND_OBJ2_KING_BOBOMB_DAMAGE           		= { 9, 1, 0x42, 0x40, 8 },
	SOUND_OBJ2_SCUTTLEBUG_WALK              		= { 9, 0, 0x43, 0x40, 8 },
	SOUND_OBJ2_SCUTTLEBUG_ALERT             		= { 9, 0, 0x44, 0x40, 8 },
	SOUND_OBJ2_BABY_PENGUIN_YELL            		= { 9, 0, 0x45, 0x00, 8 },
	SOUND_OBJ2_SWOOP                        		= { 9, 0, 0x49, 0x00, 8 },
	SOUND_OBJ2_BIRD_CHIRP1                  		= { 9, 0, 0x52, 0x40, 0 },
	SOUND_OBJ2_LARGE_BULLY_ATTACKED         		= { 9, 0, 0x57, 0x00, 8 },
	SOUND_OBJ2_EYEROK_SOUND_SHORT           		= { 9, 3, 0x5A, 0x00, 8 },
	SOUND_OBJ2_WHOMP_SOUND_SHORT            		= { 9, 3, 0x5A, 0xC0, 8 },
	SOUND_OBJ2_EYEROK_SOUND_LONG            		= { 9, 2, 0x5B, 0x00, 8 },
	SOUND_OBJ2_BOWSER_TELEPORT              		= { 9, 0, 0x66, 0x80, 8 },
	SOUND_OBJ2_MONTY_MOLE_APPEAR            		= { 9, 0, 0x67, 0x80, 8 },
	SOUND_OBJ2_BOSS_DIALOG_GRUNT            		= { 9, 0, 0x69, 0x40, 8 },
	SOUND_OBJ2_MRI_SPINNING                 		= { 9, 0, 0x6B, 0x00, 8 }
}

g64types.SM64HUDDisplayFlag = {
	HUD_DISPLAY_FLAG_LIVES = 0x0001,
    HUD_DISPLAY_FLAG_COIN_COUNT = 0x0002,
    HUD_DISPLAY_FLAG_STAR_COUNT = 0x0004,
    HUD_DISPLAY_FLAG_CAMERA_AND_POWER = 0x0008,
    HUD_DISPLAY_FLAG_KEYS = 0x0010,
    HUD_DISPLAY_FLAG_UNKNOWN_0020 = 0x0020,
    HUD_DISPLAY_FLAG_TIMER = 0x0040,
    HUD_DISPLAY_FLAG_EMPHASIZE_POWER = 0x8000,

    HUD_DISPLAY_NONE = 0x0000,
    HUD_DISPLAY_DEFAULT = bit.bor(0x0001,0x0002,0x0004,0x0008,0x0010,0x0020)
}

g64types.SM64PowerMeterAnimation = {
	POWER_METER_HIDDEN = 0,
    POWER_METER_EMPHASIZED = 1,
    POWER_METER_DEEMPHASIZING = 2,
    POWER_METER_HIDING = 3,
    POWER_METER_VISIBLE = 4
}