In New Super Mario Bros, Mario once again goes from world to world trying to rescue Peach. Now watch as Luigi proves to his brother that anything Mario can do, Luigi can do better and faster.
This run is an improvement of the current published run, completing it faster by about one and a half minutes.
- Emulator used: DeSmuME version 0.9.4
- Aims for fastest time
- Takes damage to save time
- Manipulates luck
At first, I thought there was a gameplay difference between Mario and Luigi. But now, I know that there really is no difference between Mario and Luigi in this game.
In an any% speedrun, you take a cannon from world 1 to world 5, another cannon from world 5 to world 8, and complete world 8. This run does that as quickly as possible.
In order to achieve fastest time, I relied a lot on watching the addresses of Luigi's speed. That way, I can be assured that I gained speed for the most possible number of frames and lost speed for the least possible number of frames. This is especially used in levels where you generally go from left to right.
Note: As long as the jump to the flag gives 1000 points or less, there is no time loss. So I used the flag to aid in luck manipulation
The most frustrating part of making this run was the manipulation of the movement of the Item Boxes and Hammer Bros. I actually stopped the run for a few months because I couldn't figure it out. That is, until I learned how to use RAM watch. Using RAM watch, I was able to narrow the addresses down to a few. I used them to see what address values to avoid. If certain combinations of values led to undesirable map movement, I would try to avoid that combination of values as I play the level. Whether these results are just coincidence or not, I cannot be certain. One thing I do know is that it helped me.
I used the following tricks/techniques in this run:
- Corner Boost: By pressing the jump for a certain number of frames at certain times, you would miss the block but get a small boost. Usually this leads to .5-1.5 frame saved
- Super Corner Boost: By ducking, you can jump at a block. If done right, Mario/Luigi would straighten up just as he hits the block, doubling or tripling his speed for 1 to 2 frames. This can lead to 1-3 frames saved per boost
- Shell Jump: Similar to a trick involving Diddy Kong in Donkey Kong Country. When you are in the shell and going off a cliff, you can let go of the dash button and jump. Even though you are not technically touching any solid ground, you can still jump. This was done once in my run.
- Rope Jump/Rope Boost: As Luigi grabs a rope, he gets a small boost in speed to anywhere between low 50 to high 80 depending on where on the rope. However, when the rope is grabbed, Luigi loses most of his speed. So, if you jump just as you are about to grab the rope, you would get the boost and jump off the rope without losing speed.
- Delayed Cliff Hanging: Throwing an item delays Luigi's cliff hanging.
- Second Wall Jump: This is usually possible after a normal wall jump as mini-Mario/Luigi. After this, if you jump at a certain frame to do a second wall jump, you jump upwards. This is useful in gaining vertical ground (especially if you cannot reach it normally with a wall jump). One can tell that a second wall-jump is possible if Mario/Luigi's speed for one frame suddenly becomes a value in the 20s (this is the frame to jump at)
- Ducking Direction Change: When running in one direction, duck, then turn the other way. You can change directions very quickly without sliding
1-1
Small number of frames saved from corner boosting.
1-2
Focused on trying to minimize speed loss in this level.
1-Tower
Tried to keep speed at 48 while trying to break the blocks as Shell Luigi.
1-Cannon
Nothing new here.
5-1
I noticed later on that the Luigi's actions kinda went with the level's music, to my amusement. Touched the flag at the exact frame that the timer hit 365.
5-2
Tried to stay in the shell for as little time as possible. Also managed to avoid fireworks.
5-3
Rather than killing the Snailicorn, I tried to avoid them so that I can avoid the slower "inside the shell" dash.
5-Ghost
Stored a Fire Flower. Got the mini-Mushroom. Apparently the Hammer Bro's item depends on the frame it is killed. Mini-Luigi also manages to squeeze past Broozers, saving a bunch of frames.
5-Cannon
Because of mini-Luigi's floatiness, I had to get to the cannon in one jump, which involved slowing down for a couple of frames while in midair.
8-1
Crowber bouncing. Nothing else to say here.
8-2
Mini-Luigi's ability to walk on water and do the second wall jump allowed me to save a bunch of frames.
8-Tower
More use of Mini-Luigi's floatiness and the second wall jump to scale the tower faster. Had to rely on coin collection to manipulate Hammer Bros movement to 8-3 since killing enemies would waste more time. Used the stored Fire Flower at the end to kill Bowser Jr faster.
8-3
Water-only levels have been a bane to my gaming for a while. Got a Blue Shell for swimming because 27 speed per frame is much better than 18 speed per frame.
8-4
Tossed away the Blue Shell before I arrived at the left-right platforms. Tried to get the highest average speed during that segment.
8-Castle
First use of the Super Corner Boost and Rope Jump/Boost. Movement along the platforms made to try to maximize speed and not spend too much time on a single platform.
8-5
More Super Corner Boosts. I tip over the unstable rock things(?) to get tiny speed boosts.
8-6
A different and faster route from the currently published run.
8-7
Used the delayed cliff hang to gain some frames. When I get the star, I try to be in the air for as little time as possible.
8-8
More Super Corner Boosts. When I got the star, I tried to get to the ground as quickly as possible to get the Star Dash boost for as long as possible.
8-Tower2
More of a freerun because there isn't much to do to save time overall. I did get a Fire Flower so that the Bowser Jr fight would go by quickly.
8-Castle2
Different approach to the flame-throwing things and generally trying from one door to another with as little delay/slowdown as possible. Also, Bowser fails at grabbing ledges (either that or the floor is slippery).
Special Thanks
- All those who helped me understand how RAM watch and RAM search works
- GreenaLink for help in power-up planning
- adelikat for the .wch file that contains some very important addresses
- LightBlueYoshi for some of the cool tricks mentioned in the description of his unfinished any% run.
If I missed anyone, I apologize.
Note: So I've heard that version 0.9.5 is out. I see that it takes away much of the map lag. So if it is possible, I'd appreciate it if someone made a video encode using this new version. Thanks.
adelikat: Accepting as an improvement to the published movie.