Crash: Difference between revisions
Jump to navigation
Jump to search
m (Reverted edits by Thestickman391 (talk) to last revision by JoshDuMan) |
|||
Line 6: | Line 6: | ||
! Cause !! Exception Type !! Notes | ! Cause !! Exception Type !! Notes | ||
|- | |- | ||
| Exceed the [[Objects#Object Limit|object limit]] || style="background-color: # | | Exceed the [[Objects#Object Limit|object limit]] || style="background-color: #ffb65e"| Infinite Loop || Can be done via a variety of methods including cloning, hat duplication, build-up of monty-mole pellets, or money-bag duplication. Enters an intentional while(1) loop. | ||
|- | |- | ||
| Have too many [[Objects|objects]] at once on the screen|| style="background-color: #baffa8"| | | Have too many [[Objects|objects]] at once on the screen|| style="background-color: #baffa8"| || | ||
|- | |- | ||
| Send the camera into a [[Parallel Universe|PU]] | | Send the camera into a [[Parallel Universe|PU]] || style="background-color: #ff9696"| Floating-Point Exception || | ||
|- | |- | ||
| Walking at PU speed for only a portion of the 4 quarter steps on a [[frame]] || style="background-color: #baffa8"| | | Walking at PU speed for only a portion of the 4 quarter steps on a [[frame]] || style="background-color: #baffa8"| || | ||
|- | |- | ||
| Moving at PU speed with no joystick input for all 4 quarter steps on a frame || style="background-color: #baffa8"| | | Moving at PU speed with no joystick input for all 4 quarter steps on a frame || style="background-color: #baffa8"| || | ||
|- | |- | ||
| Moving at PU speed directly into a wall || style="background-color: #baffa8"| | | Moving at PU speed directly into a wall || style="background-color: #baffa8"| || | ||
|- | |||
| Walking with a speed greater than or equal to 2^31 / 170 (~12.632M) || style="background-color: #ff9696"| Floating-Point Exception || | |||
|- | |||
| Turning during a walking action such that speed times change in yaw is greater than or equal to 2^31 * 12 (~12.583M with dyaw = 2048) || style="background-color: #ff9696"| Floating-Point Exception || | |||
|- | |- | ||
| Bully Knockback dividing-by-zero || style="background-color: #ff9696"| Floating-Point Exception || | | Bully Knockback dividing-by-zero || style="background-color: #ff9696"| Floating-Point Exception || | ||
Line 24: | Line 28: | ||
| Deleting a non-existent file on the File Select Screen<ref>[https://youtu.be/-N5OQPgA6YI "How to crash Super Mario 64 in 20 seconds" by rattleman123456]</ref>|| style="background-color: #baffa8"| ||Go to "Copy" right when you get to the file select, then press "Score", press on any file without save data, go to Erase, and click on yes. | | Deleting a non-existent file on the File Select Screen<ref>[https://youtu.be/-N5OQPgA6YI "How to crash Super Mario 64 in 20 seconds" by rattleman123456]</ref>|| style="background-color: #baffa8"| ||Go to "Copy" right when you get to the file select, then press "Score", press on any file without save data, go to Erase, and click on yes. | ||
|- | |- | ||
| Moving a shadow above [[surface]] 12 while it's over OOB || style="background-color: #baffa8"| | | Moving a shadow above [[surface]] 12 while it's over OOB || style="background-color: #baffa8"| || | ||
|- | |- | ||
| Killing a Monty Mole remotely || style="background-color: #fffca8"| Address Error Exception || | | Killing a Monty Mole remotely || style="background-color: #fffca8"| [[Address Error Exception]] || | ||
|- | |- | ||
| Killing an uninitialized Monty Mole || style="background-color: #fffca8"| Address Error Exception || | | Killing an uninitialized Monty Mole || style="background-color: #fffca8"| Address Error Exception || | ||
Line 32: | Line 36: | ||
| Going out of bounds in a room with a painting || style="background-color: #fffca8"| Address Error Exception || | | Going out of bounds in a room with a painting || style="background-color: #fffca8"| Address Error Exception || | ||
|- | |- | ||
| Being pushed off of a hangable [[ceiling]] while in the idle hanging action || style="background-color: #fffca8"| Address Error Exception || | | Being pushed off of a hangable [[ceiling]] while in the idle hanging or start hanging action || style="background-color: #fffca8"| Address Error Exception || | ||
|- | |- | ||
| Sound glitch (J only) || style="background-color: #fffca8"| Address Error Exception || | | Sound glitch (J only) || style="background-color: #fffca8"| Address Error Exception || | ||
|- | |- | ||
| Moving the camera immediately when entering [[VCutM]] || style="background-color: #baffa8"| | | Moving the camera immediately when entering [[VCutM]] || style="background-color: #baffa8"| || | ||
|- | |- | ||
| Getting infinite [[speed]] || style="background-color: #ff9696"| Floating-Point Exception || | | Getting infinite [[speed]] || style="background-color: #ff9696"| Floating-Point Exception || | ||
Line 46: | Line 50: | ||
| Teleporting while passing over a loading zone || style="background-color: #fffca8"| Address Error Exception || | | Teleporting while passing over a loading zone || style="background-color: #fffca8"| Address Error Exception || | ||
|- | |- | ||
| Warping out of a level while passing over a loading zone || style="background-color: #baffa8"| || Maybe possible in DDD using the Sub Gate warp and whirlpool cloning to reach the instant loading zone. | | Warping out of a level while passing over a loading zone || style="background-color: #baffa8"| || Maybe possible in DDD using the Sub Gate warp and whirlpool cloning to reach the instant loading zone. Not yet achieved in Vanilla. | ||
|- | |||
| Passing a boo over surface 12 over NULL || style="background-color: #baffa8"| || Possibly a non-existant crash if the shadow crashes the game first. Not yet achieved in Vanilla. | |||
|- | |- | ||
| | | Loading Wiggler's Cave (DD Only) || style="background-color: #ff9696"| Floating-Point Exception (Invalid Float)|| Wiggler indexes out of range and reads a denorm as his health, which doesn't exist on console. | ||
|} | |} | ||
Revision as of 05:42, 23 November 2019
A Crash, Freeze, or Hardlock is what happens when Super Mario 64's code encounters an error, such as a division-by-zero, that causes the game to stop running and rendering frames. The audio may still play. This is in contrast to a softlock, where the game does still run but is stuck in an indefinite state or a loop where no controller input can change it.
Ways to crash the game
Cause | Exception Type | Notes |
---|---|---|
Exceed the object limit | Infinite Loop | Can be done via a variety of methods including cloning, hat duplication, build-up of monty-mole pellets, or money-bag duplication. Enters an intentional while(1) loop. |
Have too many objects at once on the screen | ||
Send the camera into a PU | Floating-Point Exception | |
Walking at PU speed for only a portion of the 4 quarter steps on a frame | ||
Moving at PU speed with no joystick input for all 4 quarter steps on a frame | ||
Moving at PU speed directly into a wall | ||
Walking with a speed greater than or equal to 2^31 / 170 (~12.632M) | Floating-Point Exception | |
Turning during a walking action such that speed times change in yaw is greater than or equal to 2^31 * 12 (~12.583M with dyaw = 2048) | Floating-Point Exception | |
Bully Knockback dividing-by-zero | Floating-Point Exception | |
Failed Bully/Bob-omb angle double-to-int conversion | Floating-Point Exception | |
Deleting a non-existent file on the File Select Screen[1] | Go to "Copy" right when you get to the file select, then press "Score", press on any file without save data, go to Erase, and click on yes. | |
Moving a shadow above surface 12 while it's over OOB | ||
Killing a Monty Mole remotely | Address Error Exception | |
Killing an uninitialized Monty Mole | Address Error Exception | |
Going out of bounds in a room with a painting | Address Error Exception | |
Being pushed off of a hangable ceiling while in the idle hanging or start hanging action | Address Error Exception | |
Sound glitch (J only) | Address Error Exception | |
Moving the camera immediately when entering VCutM | ||
Getting infinite speed | Floating-Point Exception | |
Going near a painting after getting game corruption | Not possible on console, due to the way Emulators and Virtual Console handle addresses. | |
BitS entry sound glitch | 8 known instances, not been reproduced. Not J only. | |
Teleporting while passing over a loading zone | Address Error Exception | |
Warping out of a level while passing over a loading zone | Maybe possible in DDD using the Sub Gate warp and whirlpool cloning to reach the instant loading zone. Not yet achieved in Vanilla. | |
Passing a boo over surface 12 over NULL | Possibly a non-existant crash if the shadow crashes the game first. Not yet achieved in Vanilla. | |
Loading Wiggler's Cave (DD Only) | Floating-Point Exception (Invalid Float) | Wiggler indexes out of range and reads a denorm as his health, which doesn't exist on console. |
References
|