The original Mario Party contains a unique island where the player completes around 40~50 minigames in sequence. Many of the minigames are faster or slower depending on randomness.
In this run, Doomsday31415 manipulates this RNG and other tricks to complete the island as quickly as possible.
Game Objectives
- Emulator used: Bizhawk 2.2.2 using Mupen64Plus
- Primary Objective: Clear Minigame Island as fast as possible
- Secondary Objective: Be as entertaining as possible in minigames that have leeway
Oh boy, this was an interesting game to get into TAS'ing with. Even with board movement taken out, the minigames themselves still vary dramatically depending on the RNG. Because of this, it's impossible to change many parts of the TAS without completely breaking the rest.
Still, I managed to find the location the RNG seed is stored: 0x0C2FF4 in RDRAM. Each time this is used, it's then multiplied by 0x41C64E6D and incremented by 12345. By making a simple program that can calculate future RNG values, I was able to determine how often certain minigames were changing it (multiple times per frame in many cases!). Using this and TASStudio's user-friendly interface for input allowed much better RNG manipulation than Senshin-san's previous run.
Of course, the other and most obvious difference is taking the World 5 path instead of doing World 3+4. Even accounting for perfect RNG in World 3+4 (an unlikely feat given World 2...), World 5 still saves at least 20 seconds. The largest time saves compared to RTA here come by manipulating the AI in Bumper Balls and Bombs Away to get knocked out extremely quickly.
Beyond the above, there are other major time saves in several levels (explained below) that simply come from improved strategies.
1-1: Coin Block Blitz
Each of the blocks in this minigame produce coins for a set number of time. Exactly one block in particular will generate coins for 10 seconds after it is first hit. It would be optimal if that block was closest to the player at the start.
Unfortunately, there's very little RNG prior to reaching this minigame. In fact, the only RNG I found was in the main menu (the butterflies?). I tried waiting many times, but wasn't able to get a more favorable pattern without wasting more frames than I was saving.
- Note: I am not convinced that such a method does not exist, but I failed to find it when making this TAS.
1-2: Coin Block Bash
Something I saw speedrunners do is hit two of the blocks at once here. As it turns out, if you're at just the right pixel, you can do this with any two blocks. This saves around one second per pair hit.
1-4: Paddle Battle, 2-1: Memory Match, and 2-2: Ground Pound
These games were the ones that prompted me to track down the RNG seed. 1-4 added multiples of 6 to the RNG depending on movement, and 2-1 added either 1 or 2 to the RNG each frame depending on some unknown factor (with some patterns it was always 1, but with others it varied or was always 2).
There was actually a superior pattern in 2-2 taking different RNG, but getting to it was impossible without wasting over a second in 2-1.
2-3: Limbo Dance and 2-4: Musical Mushroom
I actually got lucky here, getting the best RNG for 2-3 and second best for 2-4 without any real effort. 2-3 features optimized movement compared to the previous TAS.
I would have liked to have perfect RNG for 2-4, but 2-3 requires waiting many frames at once to change it.
2-5: Piranha's Pursuit
As long as you're in the air when the piranha chomps, it won't get you. I would've actually danced with the piranha even more, but doing so near the end caused additional lag (?). Also, it's faster to reach the end yourself than have the piranha crash into the goal in front of you (hilarious as that looks!)...
5-1: Cast Aways
Somebody send help this minigame is sooooooooo boring. I can't even do anything interesting while waiting (I tried flailing the hand around, but it just looks dumb).
The only good thing that came out of this minigame was the ability to manipulate 5-2 by changing when chests were grabbed and "stealing" a coin from Peach.
5-3: Bumper Balls and 5-5: Bombs Away
I'm sure that a future TAS will make these look slow, but this looks way better than anything I've seen thus far.
5-4: Treasure Divers and 5-6: Deep Sea Divers
There's a good reason for me doing that random swimming: it messes with the AI and results in them finishing faster.
5-7: Mushroom Mix-Up
While it's possible to knock out a CPU in the first round, it's faster to knock out all three at once. Also, it looks really cool!
5-8: TightRope Treachery
If you're walking in the right position, cannonball hits don't actually knock you over.
- Fair warning: Aside from the initial values, there is no usable RNG in this or the previous minigame. In other words, you can't use it to manipulate 6-1 (unless you're willing to wait an entire cycle in 5-7 for a random flag color).
6-1: Box Mountain Mayhem
"Mayhem" is right, and without a good way to manipulate the RNG, I was stuck with several coin bag boxes near the corner. Even so, I managed to do it faster than the old time. Maybe I was lucky after all?
6-2: Pedal Power
Up is optional, apparently. And slower.
6-3: Tipsy Tourney
I took a greedy approach to this level, trying to lose at little speed as possible and reach the tiles as quickly as possible.
It paid off, as this approach was much faster than the previous.
6-5: Bombsketball
Did you know that you throw further and faster from the ground? I didn't know that.
6-6: Hot Rope Jump
This minigame appears to be Lag City, and it goes slower on Bizhawk than Mupen (I made and compared a bunch on both, and the fastest Bizhawk was way slower than the slowest Mupen).
To make this autoscroller even more boring, apparently jumping too close to the fire causes it to go slower...
7-1: Slot Machine
Although I did manipulate the RNG, I wasn't expecting to get the optimal Coin-Coin-Coin (I don't wait at all when jumping in the minigame).
7-2: Crane Game
Wario, why did you have to be rotated the wrong way? I can't manipulate that without losing way more time in 7-1...
7-3: Pipe Maze
Pretty confident this is optimal, since every variant I've seen has exactly four connecting pipes on the left.
7-4: Bowl Over
No, curving the shell doesn't save or lose time. Yes, I'm doing it anyway.
7-5: Whack-a-Plant
It's significantly faster to defeat all the piranhas and eat the frames lost from extra coins than to wait for them to go away on their own.
Also, you can hit the first two piranhas in each set without bouncing off them.
7-6: Mario Bandstand
Well, at least the music is nice.
8-1: Running of the Bulb
Again, killing your allies does not save or lose time. Mario's just a jerk who likes to watch people suffer.
8-2: Grab Bag
Mario is understandably worried that the friends he just murdered are going to try to get revenge. Fortunately, they're stupid and run in circles instead.
8-3: Key-pa-Way
In most cases, jumping at the start is faster than just running.
8-4: Balloon Burst
Free time save by not trying to do a full pump on the final one.
8-5: Face Lift
Not only did I get to make all these funny faces, but I can manipulate the RNG by changing when I make them!
8-6: Bash 'n' Cash
Mario finally gets what's coming to him... or does he?
Saved time by making sure no one was swinging their hammer when time ran out.
9-1: Hammer Drop
Hammer? What hammer? I only see money bags.
Mario's movement in this affects the second result onward.
This is another one of those "I really wish I could predict the RNG without having to do everything over". My 9-3 and 9-4 are the best ones I saw out of all the RNG, but 9-5's pyramida were in pretty bad spots.
For 9-5, zipping through a pyramid saves time, but it slows you down so you can't do it consecutively. Also, it's stupidly precise to pull off.
Most Interesting Minigames
There's many minigames here that I think are entertaining to watch, but here's my personal favorites:
- 2-3: Piranha's Pursuit
- 5-7: Mushroom Mix-Up
- 8-1: Running of the Bulb
- 5-5: Bombs Away
- 6-2: Pedal Power
Tips for Improvements
- There may be a faster way to do 1-1 and 1-2.
- If there's a better way to manipulate 2-4, it'd be through 2-2.
- As this is the first serious TAS of World 5, I expect that's where the most room for improvement is.
- In order to really take this TAS to the next level, there would need to be a way to predict future levels based on their RNG without letting them play out (I'm looking at you, Shy Guy Says...).
Memory: Uploading file with corrected header.
Memory: The optimization is a great improvement over the published run, it looks fairly optimized for a luck heavy game.
The feedback was fairly borderline. There were a bunch of meh votes, of which the explanation of was that there were more boring minigames than interesting ones. However, there were also a surprising amount of Yes votes, and the majority of the posts were positive as well. While I did get a tad tired of some of the more boring minigames, I must admit it definitely has its moments. I initially was leaning towards Vault but then I thought more about it and felt that the playaround in the Piranha's Pursuit minigame is the kind of thing we look for in Moons runs overall. The published run has an entertainment rating of
5.8 which is fairly borderline as well. Since this movie is significantly more entertaining than that one, I think it solidifies this movie's placement.
Accepting to Moons.
Note to the publisher: Coin Block Blitz unfortunately has flickering issues with the regular RSP plugin.
TheCoreyBurton I'll be taking this for publication, but I'm on vacation for nine days beginning on the 26th of October. I'll begin processing it now, but publication will likely take place after I return.
The issue regarding Coin Block Blitz is a bug present in GLideN64 when running in HLE mode. Using an older version of Bizhawk and changing the RSP to cxd4LLE forces GLideN64 to use LLE instead. This fixes this issue but also introduces several others. I've opened an issue on the GLideN64 bug tracker to hopefully help with this problem in the future. If it's resolved before publication I'll include the fix, but if not I'll just end up splicing the footage at that particular point (which is what Doomsday31415 had to do for the temporary encode).