Content Continues Below
 

In a rather humorous bit of discovery related to Super Mario 64, one YouTuber discovered that you can get trapped in the game’s star selection menu for two and a quarter years if you wait a ridiculously long time to select a stage. How long must you wait? Two and a quarter years, in fact. That is certainly not a coincidence, though it’s entirely an unforeseen consequence.

YouTuber Kaze Emanuar recently uploaded a video about some of the timer-related bugs that are hiding in Super Mario 64 and how they can cause unaccounted-for glitches. The first one they detailed relates to the ripple effect on the entrance to Dire Dire Docks, where if the player stands there for roughly a week, the ripple will completely stop and leave the entrance with a static effect. This is pretty similar to what happens in the star menu, and the cause of it is down to integer scaling.

 

 

As the big breakdown for the menu explains, Super Mario 64 utilizes integers for a couple of its time calculations. While a majority of the game is actually pretty well optimized and will reset its timers after certain values are reached, the ripple on Dire Dire Docks’ entrance and the star selection menu don’t act that way. They utilize what are known as signed and unsigned integers. Most of this will probably not make sense to people without programming knowledge, but an unsigned integer can count to 4.29 billion while signed ones can count to half that amount, though they feature both positive and negative numbers (so the same 4.29 billion range). This is done because, despite being able to compute very large numbers, computers have limited memory and cannot count indefinitely.

What it means in practice is that after a set period of time, certain effects will break or stop because the CPU can no longer add any values. As mentioned with Dire Dire Docks, it’s very unlikely anyone would have waited a whole week to watch the ripple effect break, so Nintendo likely used an unsigned integer to create largely unique patterns all the time. The star menu is a bit odd to even have a timer, but I guess Nintendo wanted to feature a very specific sequence of rotating polygons.

Where the issue crops up is that the star selection menu uses an unsigned integer with the value beginning at 0. Players cannot make a selection on the screen until that value reaches 12, or 12 frames. This is where things get really technical, but since Super Mario 64 runs at 30 frames per second and its timer adds one to the value every frame, it takes about two and a quarter years to reach the max value. Since this menu operates on an unsigned integer, instead of resetting to 0 once it reaches max, it actually lurches all the way around to its negative value, which is something like -2.145 billion. Since the game now needs to reach 12 before a selection can be made, you’re essentially stuck in that menu for two and a quarter years after having already waited two and a quarter years.

This is obviously an unintended quirk of Super Mario 64, but it’s still funny to think about. Kaze Emanuar even brings up a scenario like a McDonald’s kiosk that may have been left on for too long, resulting in some kids believing the N64 was broken. I’m not sure anyone has ever naturally seen this phenomenon happen, but I guess if you’ve already waited over two years, another two years of waiting isn’t so bad.

 

Leave a Comment

Written by Peter Glagowski

Peter has been a freelance gaming and film critic for over seven years. His passion for Nintendo is only matched by the size of his collection.