Jump to content

Player State IDs

From HedgeDocs
Revision as of 06:02, 3 December 2025 by IsaacMarovitz (talk | contribs)

Player State IDs in Sonic the Hedgehog (2006) define a character's current state. Each is mapped to a specific implementation which may itself transition to other states in the state machine. Many states are shared between player implementations, and all states, regardless of if they only used by a specific player are given a unique ID.

The maps used by each player context is outlined in Player State Maps.

Player State IDs

Common States

All states listed here have their exact implementation used by multiple characters. Some states not listed here are implemented in a similar way, with the same ID, but the actual implementation (function pointer used) is different.

Name ID Function Address Description
Fall 0x03 0x821AAEC0 Only used by Amy and Blaze.
Water Jump 0x05 0x821A00B0
Brake 0x06 0x821A0128
Quick Turn 0x07 0x821A01A0
Dead 0x08 0x821A02C8
Damage Light 0x09 0x821A0340
Push 0x0A 0x821A03B8 Push states are unfinished.
Damage 0x0B 0x821A0340
Grind 0x0C 0x821A0570
Edge Grab 0x0D 0x821A05E8 Hanging. Edge states are unfinished.
Edge Falling 0X0E 0x821A0660 Falling from edge hang.
Edge Jumping 0x0F 0x821A06D8 Jumping from edge hang.
Ottotto 0x10 0x821A0750
Spring 0x11 0x821A07C8
Spring Type B 0x13 0x821A0930 Unknown.
Dash Panel 0x14 0x821A08B8
Jump Panel 0x15 0x821A09A8
Goal 0x16 0x821A3AE0
Invincible 0x17 0x821A0C38
Wind 0x18 0x821A0CD8
Landing 0x19 0x821A0D50
Don't Move 0x1A 0x821A0DC8 Unused.
Up-Down Reel 0x1B 0x821A0E40
Tarzan 0x1C 0x821A4CB0 Used for swinging ropes in Tropical Jungle.
Pole 0x1E 0x821A0EB8
Chain Jump Land 0x1F 0x821A0F30
Rainbow Ring 0x20 0x821A0FA8
Wall Wait 0x21 0x821A1020
Rope Land 0x22 0x821A1098
Talk 0x25 0x821A11A0
Psi-Grabbed 0x26 0x821A12D0
Stun 0x28 0x821A14B0 Called "piyori" in animations.
Rodeo 0x29 0x821A15D0 Used for whale in Wave Ocean.
Balancer 0x2A 0x821A16E8
Amigo Swap 0x30 0x821A1A00
Amigo Chase 0x31 0x821A1BA0

Sonic States

Name ID Function Address Description
Wait 0x00 0x8219FE58
Walk 0x01 0x8219FED0
Run 0x02 0x8219FF48
Fall 0x03 0x8219FFC0
Jump 0x04 0x821A0038
Wide Spring 0x12 0x821A0840
Goal 0x16 0x821A0A20
Blast Jump 0x24 0x821A1FE8
Silver Spring 0x27 0x821A1438 Unused spring type for Boss Silver's Homing Catch.
Water Slider 0x2B 0x821A1880
Gem Throw 0x2E 0x821A2228
Gem Snipe 0x2F 0x821A2370
Homing Smash 0x41 0x821A26E0
Homing Attack 0x42 0x821A2758
Homing After 0x43 0x821A27D0
Sliding 0x44 0x821A2848
Spin Attack 0x45 0x821A28C0
Spin Dash 0x46 0x821A2AC8
Bounce 0x47 0x821A2B40
Light Dash 0x48 0x821A2BB8
Blue Gem 0x49 0x821A2D68
Green Gem 0x4A 0x821A2F98
Green Gem Air 0x4B 0x821A3118
Rainbow Gem 0x4D 0x821A32A8

Princess States

Princess, being a variant of Sonic shares some of his implementations previously listed, as well as a couple new implementations. This table only lists the states wholly unique to Princess.

Name ID Function Address
Fall 0x03 0x821A4788
Jump 0x04 0x821A4940
Spring 0x11 0x821A4AF8
Bungee 0x1D 0x821A4D28
Water Walk 0x35 0x821A5118
Homing Attack 0x42 0x821A4DA8
Homing After 0x43 0x821A4F60

Shadow States

Name ID Function Address
Wait 0x00 0x821A5388
Walk 0x01 0x821A5690
Run 0x02 0x821A5958
Fall 0x03 0x821A5C20
Jump 0x04 0x821A5E20
Wide Spring 0x12 0x821A6130
Homing Release 0x42 0x821A64D0
Homing After 0x43 0x821A6548
Light Dash 0x48 0x821A6360
Overdrive 0x51 0x821A68F0
Chaos Spear 0x52 0x821A6B40
Chaos Spear After 0x53 0x821A6DA0
Chaos Blast 0x54 0x821A6E50
Chaos Charge 0x55 0x821A7028
Chaos Smash 0x56 0x821A71E8
Chaos Attack 0x57 0x821A7260
Chaos Snap 0x58 0x821A7480
Spin Kick 0x59 0x821A7728
Edge Attack 0x5A 0x821A7960
Vehicle Enter 0x6D 0x821A7A10
Autotake 0x6E 0x821A7C60
Bike Ride 0x6F 0x821A7F48
Jeep Ride 0x70 0x821A82E0
Hover Ride 0x71 0x821A7D70
Glider Ride 0x72 0x821A8148
Vehicle Exit 0x73 0x821A84A8

Silver States

Name ID Function Address
Wait 0x00 0x821A3348
Walk 0x01 0x821A3460
Run 0x02 0x821A3570
Fall 0x03 0x821A3680
Jump 0x04 0x821A3790
Spring 0x11 0x821A38B0
Wide Spring 0x12 0x821A39C0
Teleport Dash 0x33 0x821A3F50
Float 0x34 0x821A4078
Lift 0x38 0x821A40F8
Esp Mark 0x39 0x821A4168
Ground Throw 0x3A 0x821A45F8
Air Throw 0x3B 0x821A4688
Grab All 0x3C 0x821A41E8
Psychoshock 0x3D 0x821A4278
Stun Slap Ground 0x3E 0x821A4478
Stun Slap Air 0x3F 0x821A4568
Reflect 0x40 0x821A4718

Omega States

Name ID Function Address
Wait 0x00 0x821A9470
Walk 0x01 0x821A9680
Run 0x02 0x821A9890
Fall 0x03 0x821A9AA0
Jump 0x04 0x821A9D10
Wide Spring 0x12 0x821A9FB0
Hover 0x4E 0x821AA250
Omega Launcher 0x4F 0x821AA5E0
Lock on Laser 0x50 0x821AA830

Amy States

Name ID Function Address
Wait 0x00 0x821AA9C8
Walk 0x01 0x821AAB70
Run 0x02 0x821AAD18
Jump 0x04 0x821AAF38
Wide Spring 0x12 0x821AB0D8
Stealth Start 0x5C 0x821AB278
Stealth End 0x5D 0x821AB3C8
Double Jump Pre 0x5E 0x821AB470
Double Jump 0x5F 0x821AB760
Hammer Attack 0x60 0x821AB620

Blaze States

Name ID Function Address
Wait 0x00 0x821AB818
Walk 0x01 0x821ABA68
Run 0x02 0x821ABC78
Jump 0x04 0x821ABE88
Wide Spring 0x12 0x821AC0C0
Homing After 0x43 0x821AC8C8
Accel Tornado 0x61 0x821AC250
Spinning Claw 0x62 0x821AC3D0
Fire Claw 0x63 0x821AC660

Knuckles States

Name ID Function Address
Wait 0x00 0x821AC9F8
Walk 0x01 0x821ACBB0
Run 0x02 0x821ACD18
Fall 0x03 0x821ACE80
Jump 0x04 0x821AD080
Wide Spring 0x12 0x821AD2F0
Climb 0x23 0x821AD4B8
Glide 0x2C 0x821AD6A0
Glide End 0x2D 0x821ADA08
Heat Knuckle 0x64 0x821ADC60
Screwdriver 0x65 0x821ADF00
Screwdriver After 0x66 0x821AE1C8
Screw Dive 0x67 0x821AE300

Rouge States

Name ID Function Address
Wait 0x00 0x821AE558
Walk 0x01 0x821AE7F8
Run 0x02 0x821AEA98
Fall 0x03 0x821AED38
Jump 0x04 0x821AF020
Wide Spring 0x12 0x821AF2A8
Climb 0x23 0x821AF4E8
Blast Jump 0x24 0x821AF2A8 (Same as Wide Spring)
Glide 0x2C 0x821AF5E0
Glide End 0x2D 0x821AF748
Bomb Throw 0x2E 0x821AF8E8
Bomb Snipe 0x2F 0x821AFAC8
Bomb Air 0x68 0x821AFC90
Multi Air Bomb 0x69 0x821AFE38
Heart Mine 0x6A 0x821AFFF0

Tails States

Name ID Function Address Description
Wait 0x00 0x821B0158
Walk 0x01 0x821B01D8
Run 0x02 0x821B0258
Fall 0x03 0x821B02D8
Jump 0x04 0x821B0480
Wide Spring 0x12 0x821B0658
Spring Type B 0x13 0x821B0800 Unknown.
Glide 0x2C 0x821B09A8
Bomb Throw 0x2E 0x821B0CD0
Bomb Snipe 0x2F 0x821B0DE0

Super States

Name ID Function Address
Wait 0x00 0x821B0F58
Dead 0x08 0x821B1668
Damage Light 0x09 0x821B1488
Amigo Swap 0x30 0x821B1388
Super Amigo Change 0x32 0x821B1290
Sonic Attack 0x6B 0x821B1720
Shadow Attack 0x821B1978
Silver Attack 0x6C 0x821B1B10

Boss State IDs

Reactive player-based bosses (v.s. Sonic, Shadow, and Silver) also use a similar state system.

Boss Sonic

Name ID Function Address Description
Player Search 0x01 0x821B47C0
Approach 0x02 0x821B49C0
Damage 0x03 0x821B4B10
Dead 0x04 0x821B4E90
Winner 0x05 0x821B5030
Stun 0x06 0x821B50A0
Psi-Grabbed 0x07 0x821B5298
Homing 0x0E 0x821B5310
Chain Jump 0x10 0x821B56A8 Unused.

Boss Shadow

Name ID Function Address
Player Search 0x01 0x821B1CE8
Approach 0x02 0x821B1FB8
Damage 0x03 0x821B2140
Dead 0x04 0x821B21D0
Winner 0x05 0x821B22A8
Stun 0x06 0x821B23D0
Psi-Grabbed 0x07 0x821B2530
Homing 0x0E 0x821B2788
Spin Kick 0x12 0x821B2AB8
Chaos Spear 0x13 0x821B2C48
Chaos Boost 0x14 0x821B3110

Boss Silver

Name ID Function Address
Player Search 0x01 0x821B32D8
Approach 0x02 0x821B3668
Damage 0x03 0x821B3868
Dead 0x04 0x821B3B68
Winner 0x05 0x821B3C50
Teleport 0x08 0x821B3CE8
Object Throw 0x09 0x821B4018
Upheave 0x0A 0x821B3EC0
Homing Catch 0x0B 0x821B41F8
Jump on Psi 0x0C 0x821B4430
Ride Smash 0x0D 0x821B4640

Special State IDs

Snowboard States

Name ID Function Address
Run 0x0 0x821A8668
Brake 0x1 0x821A86E0
Prepare Jump 0x2 0x821A8758
Fall 0x3 0x821A87D0
Jump 0x4 0x821A8848
Spring 0x5 0x821A88C0
Damage 0x6 0x821A8938
Dead 0x7 0x821A89B0
Grind 0x8 0x821A8A28
Grind Brake 0x9 0x821A8AA0
Grind Prepare Jump 0xA 0x821A8B18
Run Against 0xB 0x821A8B90
Landing 0xC 0x821A8C08

Mach Speed States

State ID 0x7 is skipped.

Name ID Function Address
Start 0x0 0x821A8C80
Run 0x1 0x821A8DF0
Fall 0x2 0x821A8E68
Jump 0x3 0x821A8EE0
Damage 0x4 0x821A8F58
Dead 0x5 0x821A8FC8
Dramatic Jump 0x6 0x821A9040
Dash Panel 0x8 0x821A90B8
Spring Type B 0x9 0x821A9130
Jump Panel 0xA 0x821A91A8
Light Dash 0xB 0x821A9220
Chain Jump 0xC 0x821A9298
Chain Fall 0xD 0x821A9310
Goal 0xE 0x821A9388

Common Context State IDs

Common State

Name ID Function Address
Debug Wait 0x0 0x821A8540

Easy State

Name ID Function Address
Easy Damaged & Wind 0x0 0x821A9400

Title States

Name ID Function Address
Title Wait 0x0 0x821B59B8
Title Selected 0x1 0x821B5A90
Cookies help us deliver our services. By using our services, you agree to our use of cookies.