Skip to content

Instantly share code, notes, and snippets.

@magcius
Created September 28, 2020 06:12
Show Gist options
  • Save magcius/92864505c2bf734dbfb8a250af9555b7 to your computer and use it in GitHub Desktop.
Save magcius/92864505c2bf734dbfb8a250af9555b7 to your computer and use it in GitHub Desktop.
Super Mario Galaxy Hitbox Visualizer
NOTE:
Hitboxes in Super Mario Galaxy are a slight bit more complicated than I explain
in the video. They come in two primary forms: Binder and HitSensor. Binder is
used for actor/map collision, and each actor has at most one Binder sphere. This
is what's used to test for walls, floors and ceilings. HitSensor is used for
actor/actor collision, and is used for a wider variety of collisions, enemies
use it for attacks/damage, NPCs use it to push Mario away, and other objects
just use it to know when actors are inside of them. This is actually very
similar to Super Mario Sunshine's collision system, except the cylinder tests
are swapped out for spheres.
Unlike the video, I have included a bit more color coding in the cheat code
here. Gravity vectors are shown for every video, HitSensor spheres are colored
blue, and Binder spheres are colored white. When the Binder is disabled (happens
sometimes if the game does not want to run the collision for floors/walls, like
during ledge grabs), the Binder sphere will switch from white to red.
Since I'm showing the collision for every actor, no matter how far away it is,
it will run quite slow. This cheat code is also designed for the USA build of
Super Mario Galaxy. Please contact me if you would like a specialized cheat
code, and I can try to build it for you.
Special thanks to riidefi for toolchain help and related assistance.
Hitbox Visualizer [Jasper / riidefi]
07700000 000004E8
9421FFE0 80C40010
80A60000 80060004
90A10008 9001000C
80060008 90010010
80A40020 2C050000
40820018 C021000C
C004001C EC01002A
D001000C 480000E8
880401EC 5400EFFF
41820010 8004000C
2C000000 4082003C
80840020 C0210008
C0040000 EC01002A
D0010008 C021000C
C0040004 EC01002A
D001000C C0210010
C0040008 EC01002A
D0010010 48000098
8084000C C0040008
C0A50008 EC400172
C0040000 C0850000
EC200132 C0040004
C0650004 EC0000F2
EC01002A EC22002A
C0010008 EC00082A
D0010008 C0040018
EC400172 C0040010
EC200132 C0040014
EC0000F2 EC01002A
EC22002A C001000C
EC00082A D001000C
C0040028 EC400172
C0040020 EC200132
C0040024 EC0000F2
EC01002A EC22002A
C0010010 EC00082A
D0010010 80810008
8001000C 90830000
90030004 80010010
90030008 38210020
4E800020 9421FFE0
7C0802A6 90010024
93E1001C 7C7F1B78
7C832378 7FE4FB78
38A10008 4AD40D95
7FE3FB78 38810008
3CA000FF 38A500FF
4AD00E3D 83E1001C
80010024 7C0803A6
38210020 4E800020
9421FFD0 7C0802A6
90010034 93E1002C
93C10028 7C7E1B78
83E30058 2C1F0000
41820050 38610008
7FE4FB78 4BFFFE45
80610008 8001000C
90610014 90010018
80010010 9001001C
38610014 C03F0018
881E006D 2C000000
3880FF40 4182000C
3C80FF00 38840040
38A00010 4AD01989
83E1002C 83C10028
80010034 7C0803A6
38210030 4E800020
88030021 2C000000
4D820020 88030020
2C000000 40820008
4E800020 80030000
2C00007F 4D820020
C0230010 3C800061
3884A040 38A00010
38630004 4AD01930
4E800020 9421FFE0
7C0802A6 90010024
93E1001C 93C10018
93A10014 83C30054
2C1E0000 41820034
3BA00000 3BE00000
4800001C 807E0008
7C63F82E 80630008
4BFFFF81 3BFF0004
3BBD0001 801E0000
7C1D0000 4180FFE0
83E1001C 83C10018
83A10014 80010024
7C0803A6 38210020
4E800020 9421FFB0
7C0802A6 90010054
93E1004C 7C7F1B78
80830004 3C047FA5
2800DF75 40820050
38810038 4ABB8D51
38610014 809F0058
4BFFFD01 80610014
80010018 9061002C
90010030 8001001C
90010034 3861002C
38810038 80BF0058
C0250018 3CA000FF
38A500FF 4BFFFE11
4800008C 80830058
2C040000 41820044
38610008 4BFFFCB5
80610008 8001000C
90610020 90010024
80010010 90010028
38610020 389F003C
80BF0058 C0250018
3CA000FF 38A500FF
4BFFFDC5 48000040
80630054 2C030000
41820034 80030000
2C000000 40810028
80630008 80630000
80A30008 38650004
389F003C C0250010
3CA000FF 38A500FF
4BFFFD85 83E1004C
80010054 7C0803A6
38210050 4E800020
9421FFF0 7C0802A6
90010014 93E1000C
7C7F1B78 88030068
2C000000 40820018
4BFFFD99 7FE3FB78
4BFFFE5D 7FE3FB78
4BFFFEC5 83E1000C
80010014 7C0803A6
38210010 4E800020
9421FFE0 7C0802A6
90010024 93E1001C
93C10018 93A10014
4AC44671 38800058
4AC44615 7C7F1B78
3BA00000 3BC00000
4800003C 801F000C
7C60F214 88030007
7C000774 2C00FFFF
4182001C 88030009
7C000774 2C00FFFF
4182000C 80630000
4BFFFF59 3BDE000C
3BBD0001 801F0014
7C1D0000 4180FFC0
83E1001C 83C10018
83A10014 80010024
7C0803A6 38210020
4E800020 9421FFF0
7C0802A6 90010014
38600000 38800001
38A00000 4AD004BD
4BFFFF51 80010014
7C0803A6 38210010
4E800020 00000000
042C3384 4943D130
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment