A new trick has changed the game for speedrunners of the NES classic Mike Tyson's Punch-Out!!, leading to a new world record and new possibilities. By manipulating frame data and refraining from using certain moves, they can trick the game into throwing out the best combination for speeding through the King Hippo fight—a trick affectionately referred to as the "Hippo-Manippo."
As best we can tell, the strategy surfaced a couple weeks ago, as Mike Tyson's Punch-Out runner Lucandor158 and his brother Zoxsox were diving into the game's random number generation. Randomness is a huge factor for speedrunners; any unexpected obstacles or alterations to the progression of a game can be a stumbling block, crashing an otherwise solid run. So any value determined by RNG is a chance for a run to face difficulty, if not kill the record attempt outright.
Mike Tyson's Punch-Out has several instances of RNG, and one is King Hippo. Under the best conditions, the fight takes 37 to 38 seconds. He does a certain combination that leaves him literally jaw-agape, and you send him on his way in three short volleys. But whether he does his mouth-open move that leaves him so perfectly vulnerable is seemingly random. That was the moving target Lucandor158 and Zoxsox were trying to hit.
Detailed in a Google Doc containing their findings, the two runners found they could manipulate a certain aggregate variable in the game using two factors: time and player input. This variable is what Mike Tyson's Punch-Out looks at for "randomness." Whenever King Hippo is going to throw a punch, he looks at this variable, and if it's set to a certain value (a three-in-eight chance, the runners estimate), he'll throw his mouth-open punch.
By taking very precise steps, they could set it so that King Hippo would always open the fight with his mouth-open move. Here's what needs to happen:
- Step 1 is never pressing Right or Down before the fight, which only affects the Kaiser fight, where a runner might duck.
- Step 2 is starting the fight at the right time, so the ticking time value lands on the right value to affect the "randomness" variable.
- Basically, you need to start the fight within a certain eight-frame window, which cycles around about every four seconds. Nail both, and you've manipulated the Hippo fight to an optimal start.
This strategy guarantees a good King Hippo fight, if not a perfect one, and has already led to results. Mike Tyson's Punch-Out runner and content creator Summoningsalt set a new world record of 15:10.11, and there's reason to think this is only the beginning.
"I know Mike Tyson's Punch-Out isn't the most popular speedgame out there, but this is really huge for us," wrote Summoningsalt in a Reddit post about the Hippo-Manippo. "Only 1 record has been set in this game in the last 3 years, with not a ton of competition at the WR level. This should change that quite a bit."
As Lucandor158 notes in their dissertation on the strategy, they think it's just starting to scratch the surface of what's possible with this newfound manipulation. If you can manipulate the game simply using time values and player inputs, then what other values could be found to ensure perfect fights? King Hippo is down, but there are plenty of other fighters with their own RNG to cope with, including Mike Tyson. Speedrunning is all about finding the best path and best time. The Hippo-Manippo lets you build the road.