Submission #3157: diggidoyo's Wii Mega Man 10 "Mega Man" in 33:42.37

Wii
Mega Man
Dolphin r7553 / r7295
121342
60
2016
Unknown
Mega Man 10 NTSC-U.wad
Submitted by diggidoyo on 5/24/2011 9:18:41 PM
Submission Comments
Dr. Wily's latest attempt at world domination has once again been thwarted by the blue bomber, Mega Man.

In-game All Clear Time: 00:20:04

Achievements unlocked:

AchievementRequirements
Hard RockMake it to a boss room without getting damaged
World WarriorDefeat one of every type of enemy
Whomp WilyClear the game once
Blue BomberClear the game in under an hour
No Coffee BreakClear the game without using any energy, mystery, or weapon tanks
TenaciousClear the game without continuing
InvincibleClear the game without dying
Mr. PerfectClear the game without getting damaged

Emulator Details - Dolphin r7553

  • Dual Core - Disabled
  • XFB (External Frame Buffer) - Enabled | Virtual
  • LLE Audio
  • Clear game data (Right click the game title, choose "Open Wii save folder". Delete or move everything)
Note: If you're still having trouble, try r7295. Some people have reported success playing back the recording with that revision.

Run Attributes

  • Aims for fastest time
  • Takes no damage
  • Abuses glitches
  • Manipulates luck
  • Obtains maximum lives

Comments

This is a run using Mega Man on Normal Difficulty. It uses no DLC, add ons, or saves.
I started TAS'ing this game back in early February. I used to be pretty competitive about the console online leaderboards, spending enough time to take a few world records for speed runs in the time trials. Suddenly, my interest peaked in finding out just how far off from perfect my run was. Luckily this was about the same time some of the technical difficulties with TAS'ing on the Dolphin were resolved, and from there I starting breaking down this game. It was done entirely by manual brute force (trial and error). Without lua scripts or ram watching, a lot of my tests to find the fastest route involved simply "try and see". Because of this, my descriptions of tricks/glitches aren't that technical. Mostly observations I've made about how the game works.
The rerecord count is much, MUCH higher than the actual number in the file. For about 80% of the run, I was using a revision of Dolphin that had a bug in the rerecord counter. In addition, the way I've been recording is to figure out the path I want take for a segment, using alot of save states and writing down frame numbers, and then starting from the beginning of the segment to run through with minimal rerecords. If I made a mistake, I would export the recording and try again. I knew this would result in a massively reduced rerecord count, but I found it necessary to avoid desyncs. Since this is my first TAS, I can't accurately gauge the actual rerecord count because I have no prior experience to base it off of. But if I had to pick a number... it would be somewhere around the same as the number of frames.

Game Description

Mega Man 10 takes place in the 21st century, in which a disease called "Roboenza" begins infecting and disabling robots, hampering daily life for humans. The disease eventually causes many of the robots to malfunction and attempt to take over the world. The evil scientist Dr. Wily seeks help from the hero Mega Man. Wily states that a machine he devised, capable of finding a cure for the illness, is stolen by an infected robot. This plot conveniently sets the stage for Mega Man to continue his usual routine of hunting down 8 Robot Masters, stealing their powers, and proceeding to lay siege on Wily's Fortress. Go figure.

Weapons

Info taken from the Mega Man 10 Knowledge Database

Commando Bomb

After launching the Commando Bomb, pressing up or down on the Control Pad will make it turn at a 90 degree angle. Pressing left or right will make it turn again. When it impacts a wall, ceiling, or floor, it will produce a large blast which spreads horizontally or vertically, and follows the contours of the landscape. The blast can sometimes do multiple hits. The bomb itself without the explosion is not very powerful, and striking an enemy before it impacts a surface will prevent the explosion. This weapon can be used to break through certain walls. The Commando Bomb can only be used if there are at least 3 units of weapon energy remaining.

Triple Blade

The player fires three blades that move in three different directions, being able to attack multiple enemies at one time. There are two patterns: Surface-to-air on the ground, and air-to-surface in mid-jump. It can sometimes destroy Shield Attackers from the front. This weapon is Strike Man's primary weakness - not only can this weapon destroy his Rebound Strikers, but each blade can damage him separately, making very short work of him.

Chill Spike

This weapon launches a special freezing gel which flies in a parabolic trajectory. An enemy hit by this liquid may freeze and become unable to move, similar to the effects of the Ice Slasher. The gel freezes when it strikes the ground or wall and forms razor-sharp icicles on the spot where it landed, which can be used as a trap. Aside from the Wily Capsule and Sprinklans, enemies weak to Chill Spike are only weak to the trap portion of the weapon. Chill Spike can also damage some of the enemies otherwise invulnerable to normal weapons and it destroys Nitro Man's Wheel Cutters.

Wheel Cutter

The user attaches the Wheel Cutter to his arm to dart at enemies, and by releasing the attack button it is launched at enemies, following the contours of the landscape. Up to three Wheel Cutters can be launched at a time and it's effective to attack enemies in distance. It can also be used to quickly scale walls. It can also destroy Commando Man's Commando Bombs.

Rebound Striker

Mega Man can throw a rubber super ball straight forward or diagonally up or down. As it gets faster and stronger with each successive bound, it builds up power to inflict more damage to the target. It can bounce up to five times. When this weapon is used, it is not shot out of the gun but actually thrown with Mega Man's free hand. This weapon is Sheep Man's primary weakness - when used against him, it can knock him out of his cloud, preventing him from casting Thunder Wool.

Thunder Wool

Mega Man launches a thunder cloud that slowly rises, and a lightning bolt shoots straight down from the cloud. He can fire up to two consecutive shots. The cloud itself does very minimal damage. Pairing two clouds together will increase the lightning strike area and power. Thunder Wool is Pump Man's primary weakness - a single bolt from this weapon can not only penetrate and dissipate his Water Shield, but can also strike Pump Man in the process.

Pump Shield

When equipped with this weapon, a rotating shield of water surrounds the user. Pressing the attack button once more deactivates the Water Shield and hurls high-speed drops of water that spiral outward. Despite being a shield weapon, many projectiles can slide in between the water droplets harming Mega Man.

Solar Blaze

It splits apart and launches firebombs to the left and right after a set period of time, which look like two Fire Storm blasts. It is effective against enemies that cannot be attacked from the front, like Shield Attackers, and can hit two enemies between the player. It can be used to break some blocks. The Solar Blaze is quite slow if it is allowed to move the full distance before it splits apart.

Tricks and Glitches

Some of the properties of the early Mega Man games also apply to this game. Check the Rockman page in the game resources for more information.

Boss Invincibility Bypass

Like all Mega Man games, whenever a boss takes a hit, the boss blinks and becomes invulnerable for a short period of time. In this game, the invincibility lasts for 20 frames. However, all the Robot Masters and the first two Wily forms have a glitch that allows the invincibility timer to be bypassed. The Triple Blade is involved in all but Commando and Pump Man, so I will explain that first.
The Triple Blade shoots three blades at different angles, and is programmed so that each individual blade has the potential to deal damage if it hits a target. If 2 or 3 blades hit the boss, the T. Blade will essentially do double/triple damage. In order for this to work, the game lets each blade damage the boss, even if he's invincible from taking damage. This will allow the blades to hit the boss at slightly different times (because of the angles), and still deal the intentional extra damage. The glitch, however, is that the T. Blade can bypass the boss's invincibility no matter what weapon was used. This means extra damage in between regular hits.
For example, Chill Man takes 3 damage from the Solar Blaze and 1 from Triple Blade. After taking a hit from Solar Blaze, he sustains 3 damage and becomes invincible for 20 frames. I switch to T. Blade and fire. Three blades come out, and because of the angles, 2 blades hit at the exact same frame which deal 1 damage (can't hit him twice on the same frame). The third blade hits a frame later, which does another 1 damage. I then refresh the T. Blade by switching back and forth between weapons, and fire again. This time another blade hits him, and deals another 1 damage. Chill Man now has a real 20 frame invincibility where not even the T. Blade can hurt him. Once this is up, I repeat the process with another Blaze/Blade combo.
The only drawback to this technique is the fact that the boss's 20 frame invincibility timer is actually reset every time a blade hits him. Because of this, the best use is to quickly finish off a battle (see Nitro Man and Blade Man fights). But having up to 3 extra damage in between hits is enough to save a lot of time on boss fights, since it eliminates the need for more weakness weapon hits and avoids over-killing.
For Commando and Pump Man, although the glitch still works on them, using it is actually slower. Pump Man's weakness weapon is the Thunder Wool, which requires a lengthy charge up animation before being able to damage him fully (the cloud does 1 damage, the lightning does 5). If I were to switch to T. Blade, the T. Wool would be canceled, and I would have to wait for the next shot to charge up again. Instead, I keep the first shot above him, while hitting him with clouds from below. After 2 hits from the same lightning, Pump Man is usually unaffected until a different shot is fired. But hitting him with a cloud deals 1 damage, and then 5 damage again 1 frame later because the game thinks it's a new T. Wool.
Commando Man, on the other hand, is unique in that his jumping animation causes him to lose his invincibility entirely. Firing every other frame will cause Commando Man to take damage from every shot. I take advantage of this in the first fight with him using the buster, and then again in the re-fight with the Wheel Cutter.

RNG Manipulation

Enemy drops and boss patterns in this game are based on luck. Luck is determined by the Random Number Generator (RNG), and this number changes every frame. Depending on which exact frame I kill an enemy, the RNG determines what (if any) drop it results in. In this run, I manipulate as many large refill pellets as I could without hindering my progress. I did this by killing every enemy I come across on numerous different frames to find the best drop. I also obtain more than the maximum number of lives (max is 9). This is purely for entertainment, and is displayed well near the end of Nitro Man's stage.
More important to the run, however, is that the RNG also determines the boss's pattern. This pattern is chosen by the game on the frame I touch the boss's door. Since RNG changes every frame, so does the boss pattern. Because of this, there are times where I'm required to wait for a specific number of frames before entering the boss's room to ensure he does the optimal pattern. Waiting is obviously unfavorable, so the RNG must be changed some other way. By killing enemies! As I said earlier, killing an enemy calls for the RNG, and when it does this, all subsequent RNG events (drops/patterns) happen one frame sooner. For instance, if the boss does the optimal pattern at frame 50, and I kill 15 enemies, the optimal will now appear at frame 35. The RNG is seperate and renewed for each level.

Rush Cancel

There are a few times I cancel Rush in order to save time. The Rush Coil springs Mega Man up, and this is sometimes necessary to reach the top of a ladder or high platform. However, there are a few times when the Rush Coil springs too high, but I still need more height than a regular jump can provide. Hence, the Rush Cancel. When landing on Rush, there's a 1 frame window where the game registers Mega Man as standing on a platform before the coil takes its effect. If I cancel Rush on this exact frame, I can still use his slightly elevated height as a platform to jump from. This provides a slightly higher than normal jump. I use this same trick while on Rush Jet several times, but this is to conserve Rush Jet energy.

Weapon Refills

Big pellets refill up to 8 pixels, and small pellets refill up to 2. When refilling a weapon, everything in the game is frozen. This freeze lasts 4 frames for every pixel of energy added to the weapon's energy bar. The freeze stops all motion, explosions, projectiles, and the in-game timer. The RNG based timer continues through the freeze, as well as TASvideo's timing. After the freeze, Mega Man continues his velocity before the freeze.
However, there is a special scenario that allows time to be saved when refilling weapons. Whenever the weapon refill pellet fills the top pixel, the freeze only lasts 1 frame during the time it fills that pixel. This is true whether its the first pixel filled or the 8th. For example, if I've used 2 pixels of energy, and I pick up a small weapon refill pellet, the freeze will last 4 frames for the first pixel, and then 1 frame for the last pixel, resulting in a 5 frame freeze. Picking up the same small weapon refill pellet when I've used more than 2 pixels of energy and it doesn't max out the bar, will result in the full 8 frame freeze.
This means the most efficient way to refill weapon energy is simply to max out the bar as often as possible. There are a few times I pick up a pellet when I've only consumed a single pixel of energy. The resulting freeze lasts only 1 frame, and is almost indiscernible . Obviously, anytime a weapon is refilled, I must use the entire weapon energy bar by the end of the game, or else the refill was unnecessary and wasted frames. I had to map out what energy I'd need throughout all five Wily stages in order to minimize my weapon refill time.

Velocity Properties

When Mega Man begins running, he first leans forward a bit and then takes off running in full speed. It takes him 10 frames to get into his running animation. While in the air, however, Mega Man is always at full speed. This means simply jumping eliminates the 10 frame delay anytime Mega Man starts moving from a dead stop.
For horizontal motion, Rush Jet = Jumping = Running.
Vertical acceleration is another factor. When Mega Man jumps, it takes him 20 frames to reach the height of the jump, and then he slowly builds vertical speed downwards. Whenever I jump down into a screen transition or a change of direction, I make the largest jump possible to barely clear the edge in order to maximize my vertical speed.
While on ice (Chill Man's Stage and in Wily Stage 2), Mega Man's running properties are such that he slowly loses his momentum when he changes direction. On the first frame of reverse input, Mega Man loses a fraction off his full running speed. It isn't until the second frame of reverse input that an entire frame is lost. By alternating left/right directions every frame, I can wiggle around on the ice without losing forward momentum. I do this several times in Chill Man's stage and a few times in Wily Stage 2. Because of the 30 fps playback of avi, the encode of this run unfortunately only shows the forward facing frames. In the encode I uploaded to my channel, I made sure the backwards frames are displayed, and this produces the effect of full speed moon-walking. I avoid doing this too much however, because the sub-pixels lost would eventually add up to a whole frame.

Stage Clear Celebration Cutscene

After a Robot Master is destroyed, the ending music plays and Mega Man runs to the center of the room. He then jumps into the air in a fit of joy to celebrate his newly acquired powers. Since he runs to the middle of the screen before jumping, it’s important to be in the center of the room after the boss battle. This will let him simply jump as soon as possible instead of running. However, the ending sequence will not begin until Mega Man is on the ground. As soon as last hit on the boss is registered, Mega Man has 3 frames until he is planted to the ground and no longer accepts input. If you're in the air at this time, then you can still control Mega Man until you touch the ground. This means you're allowed to jump to the center of the room, but it should be the shortest jump possible to avoid lengthening the cutscene. At best, Mega Man will jump 1110 frames after the boss is destroyed.

Stage by stage comments

Timed from the first frame the stage is displayed, to the frame the boss is destroyed. This is the same as the time trials for comparison.

Commando Man | 1:39.73

With Commando Man’s invincibility glitch, he was the prime candidate to take on first. Even without his weakness weapon, I could still drop him in a few seconds. His stage has no ladders or large gaps, and all the enemies could be easily taken out with the buster. The backwards sandstorm screen was the only problem. Using Rush Jet would allow me to fly over the top, but without it, I had to use Rush Coil to make it to top as much as possible. This stage also had an easy 60 screws that I could grab along the way. This level needed the largest amount of luck manipulation to force the boss to do the right pattern. Since I only had the buster, I needed him to do a very specific pattern (shoot, small jump, small jump) to maximize his glitch abuse. When I first arrived, I had to wait for over 40 frames before he did this pattern. By killing nearly every enemy in the stage (even enemies behind me), I brought this wait time down to zero.

Shop

- Purchased a Shock Guard for 20 screws – Protects against spikes, 1 time (consumable)
- Purchased a Beat Call for 20 screws – Protects against pits of death, 1 time (consumable)

Blade Man | 1:40.21

The Triple Blade is probably the most useful weapon in the game, so I needed to get it early. However, a buster only fight with Blade Man would take way too long, and with the two large gaps in this level, I needed some supplies before I could take him on. With the Shock Guard, Beat Call, and Commando Bomb in my repertoire, I had everything I needed to make it through the stage. Luckily, I had just enough Commando Bomb energy to fire every time I needed to. Tri-Castle wasn’t a problem with the buster, and I even used the Rush Cancel trick to finish him off quicker.

Chill Man | 1:30.10

Even though I don't have his weakness weapon yet, Chill Man can still be taken out quickly using the Buster/Blade as a one-two combo. The few weapons I have are enough to clear the ice blocks out of my way, and I even do the wiggle trick on the ice quite a few times.

Nitro Man | 1:41.95

Not much to say about this level, as it's pretty straightforward. The final stretch towards the boss is one of my favorite parts of the entire run, though. A large weapon pellet, 8 large health pellets, and a 1-up to finish it off.

Strike Man | 1:37.80

This is the first level that's faster than the current time trial records. Another two 1-ups at the start. Even though the second one maxed out the lives, I still force them to drop a few times more throughout the run. The music also syncs quite nicely with the action in this stage.

Sheep Man | 2:00.76

With all the fading blocks in this stage, its important to get maximum falling speed on each one. This will initiate the fading timer on the soonest possible frame. After long screen where I Rush Jet over the dissapearing blocks, I use the Rush Cancel trick again to get a full jump into the next screen.

Pump Man | 1:28.38

The mets in this level shoot purple blobs of goo that stick to Mega Man. Up to three of them can stick to Mega Man, but the effects are the same. With a glob attached, Mega Man has the same running properties as on ice. I use this to wiggle again in some places, but it provides no benefit. I take the top route at the fork, because the bottom route is about 2 seconds slower thanks to the backwards pushing water screens.

Solar Man | 1:34.71

A lot of neat tricks in here. Getting full use of the forward escalators and minimizing ladder time was important.

Wily Stage 1 | 2:47.15

Nearly all of the archive bosses in this level succumb to the deadly Triple Blade glitch. Some are destroyed the instant they open their eyes. The fading blocks in this level are the same as in Sheep Man's. I don't use the Rush Coil on all of them, because the subpixels gained by the extra speed wasn't always enough to save a frame.

Wily Stage 2 | 1:59.56

This was my least favorite level to TAS. The crushing pillars in this level create a frame rule. They come down on their own 400 frame intervals, and are unaffected by the RNG. You might notice I complete a large portion of this level sub-optimally, such as using the buster on the mini-bosses and being slightly late on/off ladders. This was to end up in the crushing screens on the first frame possible to run straight through. Getting to either crushing screens one frame sooner, would result in a pillar coming down to block my way or kill me. Using the buster was a way for me to not have to wait, AND not have to refill the weapon energy.

Wily Stage 3 | 2:27.85

Wily Stage 4 | 2:34.86

Wily Stage 5 | 1:06.74

Closing Comments

To-Do

Screenshots:


adelikat: Claimed for judging!
sgrunt: Replaced the submission file with ... the same submission file. This was in response to someone noting a bug in the dtm parser, and the rerecord count in the file now displays correctly.

adelikat: Gladly accepting this for publication. Note: This will be the first publication on a current console (handhelds excluded)
Last Edited by adelikat on 9/22/2023 1:51 PM
Page History Latest diff List referrers