Super Mario 64 is perhaps one of the most well-understood, picked-apart games in existence—a storied speedrun community with years of experience and inquisitions into the game’s code means that, every so often, you stumble across a piece of eldritch knowledge that has no impact on the world whatsoever, but is nonetheless true.
For example, did you know that if you wait in the star select screen of Super Mario 64 for 2.25 years, you get trapped there for another 2.25 years? Unless you turn your console off, I guess, but that sounds like quitter talk to me.
Watch On
The glitch was discovered by YouTuber Kaze Emanuar. You can find a more detailed explanation above, but the short version is that computers have a hard time counting upwards forever.
There are ways you can make a piece of code count for you, usually through a signed or unsigned integer—unsigned integers can count to 4.29 billion, while signed ones can do half that number, but can also go into the negative range, too. This, Kaze Emanuar explains, is why you can wait around 4.5 years to bake a cake in Paper Mario without Gourmet Guy getting mad at you. The game’s unsigned internal timer goes as high as it can possibly go, so it loops back around to zero, and you’ve suddenly spent no time in the kitchen at all.
This is the source of a lot of “bugs” in Mario 64, such as portal ripples freezing in time, or Sushi the shark finally getting to finish his bubbling noises and falling silent forever. In most places, the developers programmed hard resets, which is a way to get around this problem.
One such place where this didn’t happen is the star select screen, which opens before selecting a star on any level. As Kaze Emanuar explains, you need to wait about 12 seconds before being able to choose a star. Those 12 seconds are on a timer. You can see where this is going.
The person who coded this innocuous thing, in Kaze Emanuar’s words, “did not anticipate that anyone would be annoying as I am being right now”. Being an uncapped signed integer timer, the star select screen will hit capacity at around 2.25 billion and loop around to a negative number—which takes 2.25 years.
“The moment it tries to reach 2,147,000,000 (and then a couple numbers),” they explain, “The timer doesn’t reset to zero. Instead it violently loops around to the largest negative value.”
And because computers do exactly what you tell them to do, and you can’t select a star until the computer can count to 12 again? You’re stuck there for another two years as punishment. “This is a fair punishment for spending over 2 years thinking about which star to select,” Kaze Emanuar admits.
While they didn’t actually wait that long (which is fair enough, given a powercut or a hardware malfunction could knock out an N64 and force him to start all over again), Kaze Emanuar did hack the timer to see if this’d happen, and it did—not to mention, the math all checks out.
It’s sort of poetic, really. If you linger in indecision (for 2.25 years), you’ll be trapped in the consequences of that indecision for just as long (2.25 years). A measly two years flat, though, is a perfectly acceptable amount of time to take selecting a Mario 64 level.
Read the full article here