Difference between revisions of "Crash"

From Ukikipedia
Jump to navigation Jump to search
m (Reverted edits by JoshDuMan (talk) to last revision by Ds273)
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: #fffca8"| [[Address Error Exception]] || Can be done via a variety of methods including cloning, hat duplication, build-up of monty-mole pellets, or money-bag duplication.
+
| 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]] on N64 || style="background-color: #ff9696"| Floating-Point Exception ||
+
| 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.
 
|-
 
|-
| 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 achieved in Vanilla (yet).
+
| 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