FractalFusion's Mega Man X in 29:58. It is 2762 frames (~46 seconds) faster than the published run. I decided this game should get an improved run, so I started working on it after my Monopoly run. Keep in mind that I was busy over the 2.5 months I worked on this run, and I had previously been working on a Mega Man X2 improvement (even before I knew about parrot14gree's MMX2 run as well as Splinter Cell for GBA.
Aims
(from highest to lowest priority)
- Uses no passwords
- Aims for fastest time
- Abuses programming errors in the game
- Takes damage to save time
- Manipulates luck
I used Snes9x improvement9 with WIP1 timing and Volume Height Envelope Reading.
Programming errors abused
- Intro skip
- Dashing and shooting an uncharged X-Buster, which does 2 damage instead of 1 to enemies (except Sigma and Final Sigma).
- Shooting while charged and remaining charged.
- Vile-Zero dialog bug in Sigma 1.
Other tricks
- Jumping off slopes while walking downward, which gives a higher jump as well as faster horizontal movement.
- Jumping up ladders without grabbing them.
- Taking damage to save time.
- Jumping off the spikes in the elevator shaft in Boomer Kuwanger's stage so that X is hit but takes no damage.
Tools used in the run
Apart from all the tools almost everyone uses, I made use of the memory viewer, from tracking X's position to looking at enemy HP. Use of the memory viewer led to the discovery of faster horizontal movement by walking or jumping while walking downward on a slope. The "enemy HP meter" is not a constant address but it is located in 7E0E?F, where the ? varies. This led to faster methods of destroying minibosses.
Route change
I did the bosses in the following order:
Chill Penguin, Boomer Kuwanger, Sting Chameleon, Storm Eagle, Spark Mandrill, Armored Armadillo, Launch Octopus, Flame Mammoth.
Chill Penguin is always first because of the dash upgrade. However, I chose Boomer Kuwanger instead of Storm Eagle or Spark Mandrill next. Doing Spark Mandrill would be going in boss weakness order, but the minibosses take too long to kill this way. Storm Eagle takes only 2 damage from a charged shot, whereas Boomer Kuwanger takes 3. Boomerang Cutter and Chameleon Sting also happen to be useful weapons.
Bosses
Again, one less hit means one second saved (usually). That's why I'm so serious about saving hits against bosses.
To get the first hit against the boss, I usually use uncharged X-Buster. Charged X-Buster is only faster when the initial distance from the boss is farther, the boss is not weak to Shotgun Ice, and there are no other anomalies. If the boss is weak to Shotgun Ice, that weapon is the fastest to hit.
When I have X-Buster upgrade, I try to think of even the craziest ways to save hits. They don't usually work, but sometimes they do. Most bosses have 32HP and their weakness does 3HP damage uncharged and 4HP charged (except charged Chameleon Sting, which does 0). Hitting the boss twice with the charged version saves a hit, since then it only requires 10 hits, instead of 11.
Luck Manipulation
Throughout the entire X series on SNES, the programmers left in a quirk that allows you to manipulate different actions for the bosses just by dragging X down a wall so that dust sprites appear. This luck-manipulation does not apply to most other actions, even dashing along a floor to make dust sprites. Without this one trick, motivation would go out the window (Bospider would be the biggest offender). Other ways to luck-manipulate include X's position relative to the boss (sometimes being close or far results in a different attack), timing (entering the gates), and destroying or not destroying enemies.
Weapon notes
- X-Buster: X's native weapon, and the most reliable one. It can autofire, it does more damage when X is dashing, it travels fast, and it is the least likely of all weapons to cause lag. When charged to yellow level, it travels even faster when shot, but there is a delay when leaving X's arm cannon.
- Storm Tornado: This weapon competes with the X-Buster in non-boss destruction, as it deals 1 HP of damage every frame. It has a larger hitzone that can hit enemies where the X-Buster can't. On the other hand, you must be close for this weapon to hit right away.
- Fire Wave: This weapon would have been mostly useless if not for its continuous fire. Because of this, it allows charging up while shooting, so I can enter boss rooms charged even if there are enemies in the way. Also, it allows two less hits on Chill Penguin. It sometimes causes lag, however, when this is done. When charged, it produces a "fire wave" that travels along the floor and can hit Chill Penguin twice.
- Shotgun Ice: A shrapnel weapon. Sometimes shrapnel is good (destroys enemies fast) and sometimes it is bad (prevents firing when shots are still on-screen; causes lag). It is the fastest-travelling weapon. When charged, it produces an ice platform. There's not much use to the ice platform other than doing more damage than otherwise.
- Electric Spark: This weapon travels slowly. But slow is sometimes good, when you can fire multiple ones around and charge up at the same time. Add to that the splitting feature: when the spark hits a wall, it splits in two, with one going up the wall and one going down. Once it splits, it ignores level structure.
- Rolling Shield: I didn't find much use for this weapon. I only use it when the boss is weak to it. Some non-boss enemies are weak to it but it rapid-fires very slowly (9 frames per shot even when up close). The charged form is only useful to pass through enemies up to a 7-frame limit, but charged Chameleon Sting is the better choice.
- Homing Torpedo: Again I didn't find much use for this weapon. It homes in on an enemy, but it does so too slowly. I manage to hit Boomer Kuwanger twice with the charged form.
- Boomerang Cutter: A very useful weapon. It can curve up or down and hit enemies in inconvenient locations. It can pick up items (but I don't pick up any heart tanks or sub tanks, of course). X can lead Boomerang Cutters and have them circle around him, delaying shots on bosses and charging up at the same time. The downside is the possible lag, as well as the slow speed of the weapon (the shots come out of X's body!).
- Chameleon Sting: A weapon that has large hitzones. A single shot can hit an enemy 6 pixels above it. Again, it can cause lag, and travels slowly. Charging up gives temporary invincibility, but does no extra damage.
Run info
Pre-game
- Some intro skip. I don't know exactly how it works.
Intro stage
- This stage is possibly the most aggravating stage to TAS, because it throws a lot of luck manipulation. From experience, the bee minibosses should be manipulated to shoot missiles. I take damage just by wall-grabbing the dead minibosses after killing it.
- There is a downslope jump that I didn't take here.
- Leading two of the shooting cars gives X a forward boost when their drivers are destroyed at the furthest point to the right. The cars also damage X while pushing him ahead. I take all this damage because X needs to have low health to advance the game at Vile.
- Vile jumps out only when you destroy 2 cars that are sent out. The two cars are destroyed by a reverse uncharged-charged combo (shooting a charged shot and immediately shooting an uncharged shot so it goes ahead of the charged shot). Vile is manipulated to dash towards X.
- I wanted X to face the wrong way when grabbed by Vile, but it cost 8 frames, so I didn't do it.
Chill Penguin's stage
- Most of the slopes give X a horizontal boost here. To take advantage of steep upward slopes, walk backwards for 2 frames and jump forwards.
- By leading off Chill Penguin battle with a charged shot, I give myself two opportunities to hit Chill Penguin uncharged twice consecutively. Otherwise, it's mostly switching between charged and uncharged. I turned him around when he made the ice penguins, since otherwise he freezes X. I got some luck here and he shot ice cubes many times in a row. Note that Chill Penguin is the only boss with 70-frame invincibility.
Boomer Kuwanger's stage
- I take damage from a laser to avoid a wall-jump. Only saves a small amount of time.
- There is a glitch after the elevator part where making the screen autoscroll right and then squeezing between the shaft spikes (not instakill) and the left side of the screen forces you into a wall, where you can escape by wall-jumping. I didn't find out about the glitch until later, but I don't think it saves time (credit parrot14gree for the glitch).
- The final shaft part with enemies causes a lot of lag, so I had to destroy some first.
- Boomer Kuwanger doesn't sit still, and I can rarely get him perfectly in a corner, so I settled for shooting the uncharged shot at about 3/4 screen distance. I can't let him warp either; otherwise he has higher invincibility time.
Sting Chameleon's stage
- X can get by one of the rock monsters without waiting. It requires almost pixel-perfect location.
- I charge against Sting Chameleon because the charged shot hits him sooner than the uncharged shot.
Storm Eagle's stage
- I tried many ways of bypassing the "lag part" near the top of the second platform loop. The shield-and-mace guys cause a lot of lag, along with the platforms.
- I wait a bit before jumping on one of the platforms, because of lag, and also because I reach the top of the platform faster by not wall-jumping off its side.
- The charging before Storm Eagle was only to demonstrate the charged animation leaking through the airship. Keeping the charge animation would result in lag during the explosions, and charged shot is slower to hit than uncharged here.
- The Storm Eagle battle arena does have a wall. It's called "side of the airship". I didn't figure that out for luck manipulation until it was too late. It might not help though, since the left side is too far away, and the right side can only be reached by going through Storm Eagle when he doesn't blow the wind.
Spark Mandrill's stage
- The miniboss has a 10-frame invincibility. Because of its inconvenient location, I have to use a bit of Storm Tornado here, but when it's on the ground, I can use anything that does 2 damage. Rolling Shield and Homing Torpedo do more, but I don't have those weapons and getting them first is pointless.
Armored Armadillo's stage
- I like the high-speed mine carts. You probably do too.
- There is a trick that can be used to destroy Mets (construction hat enemies) quickly. By turning the other way for 1 frame, the Met will pop up to chase you, allowing you to shoot it. This trick doesn't save time.
- Flying birds near the end of the level only appear if X is standing on the cart. So by hopping, I can prevent them from appearing.
- I don't charge shot against Armadillo because he only takes 1 damage.
Launch Octopus's stage
- Underwater level = lag. Count on it.
- I'm not sure who made popular the usage of Electric Spark on the sea subs. Rolling Shield and Chameleon Sting do more damage. Minibosses tend to have the habit of taking weird damage (usually 1) on first shot, not that it helps.
- The sea serpent is weak to Boomerang Cutter, but Storm Tornado does damage faster because it has no recovery. Since it begins underground, I can't hit it with Storm Tornado right away, but I can use the Boomerang Cutters curving downward and take out half its health beforehand.
- I don't charge shot against Octopus because his missiles block my shots. You can manipulate Octopus somewhat by relative distance from him, which is good because there are no dust sprites when you drag X down a wall (and hence no luck-manipulation that way).
Flame Mammoth's stage
- Conveyor belts affect X as he moves on them. I dash on the belts rolling forward and jump on the ones that roll backward.
- The junk blocks speed up X by ejecting him to the right, similar to the blocks in Magna Centipede's stage of MMX2.
- The normal route is faster than the glitched one.
- Proximity to Flame Mammoth at the start of battle means that uncharged is better than charged.
Sigma 1 stage
- Again, another situation of reducing health to advance the game at Vile. I take 4 damage near the platforms; the hit is for free since I have to wait for the platforms anyway. I don't take any more damage since otherwise I need to get hit twice to save another hit from Vile and some script in the future does not advance unless you advance glitched dialog fast enough.
- To get the Vile-Zero dialog bug, reach the door without touching the ground on its level (so that it doesn't trigger the script right away). Later, a strange thing should happen where Vile will attack X while dialog is going on. The script when Zero jumps on Vile does not occur unless the dialog is advanced far enough. In some cases, Zero and Vile's pictures will overlap, creating some Vile-Zero mutation image, then Vile's image will be stuck on screen during battle, but it is slower to do so. In other cases, it is possible to freeze the game.
- X's position after the Vile battle really is the best. Zero's dialog for the next scene doesn't show up until the camera is centered properly. The camera moves faster as X dashes forward. By putting more distance between X and Zero, then dashing, the camera gets to the right position sooner.
- I take damage in the shaft because it is too inconvenient to use charge Chameleon Sting beforehand, and I want to charge up against Boomer Kuwanger.
- Charged Homing Torpedo hits Kuwanger twice, saving a hit. This is possible because Boomer Kuwanger dashes forward after being hit.
- Against Bospider, the wall is your friend. For luck-manipulation, that is. I aimed to have Bospider cross lines only at most once every appearance except the first (if you don't know what I'm talking about, turn up the brightness on your screen). The first is hard to control, and at first, for some reason, Bospider travels slowly until it hits a crossing line. Because of the wall, I managed to get the following number of crossings for the 8 appearances: 3,1,0,1,0,1,1,1.
There are 4 1-crossing configurations and 2 0-crossing configurations which are very close to each other in luck-manipulation. Which line Bospider appears on can be manipulated independent of the crossing configurations. Bospider is damage-equivalent to Spark Mandrill, so the ice platform comes out.
Sigma 2 stage
- I spend time using Fire Wave on the ostrich near the gate. Going in charged is worth it.
- I save not only one hit (like the previous run did) but two. To save two hits requires that you hit Chill Penguin with charged Fire Wave 5 times. That's why I dash straight up to him charged, taking damage in the process. I take another hit when I knock Penguin away from the wall so I can hit him twice with one charged Fire Wave.
- Nothing does 4 damage to Storm Eagle, since his weakness, Chameleon Sting, has no damaging charged form. So I lead off with yellow-charge X-buster (other charged weapons cause major lag).
- Rangda Bangda is damage-equivalent to Storm Eagle. In other words, nothing does 4 damage. This is unfortunate since the eyes each have 10HP (the nose has 12HP). On the other hand, I can use a weapon that does 1 damage to each eye (once only, of course).
Sigma 3 stage
- I spend time using Fire Wave on the turtle near the gate. Going in charged is worth it.
- I save three hits on Armadillo, even though half a second was spent on one instance. Armadillo is the only boss that takes 6 damage from charged weakness.
- Here is the Boomerang Cutter show. On two separate instances I throw out 3 boomerangs and dance around and they all get delayed hits on Sting Chameleon. This is to charge up Boomerang Cutter to do 4 damage instead of the normal 3. I have to do this twice to save a hit.
- I can't hit Spark Mandrill twice with the ice platform because non-terminal contact destroys it and you can only have one Shotgun Ice on screen. So there's nothing to mention other than that I made Mandrill dash forward first.
- Another underwater section, along with more lag. I make use of Electric Spark's splitting feature to hit one of the fish. The fish's sucking attack speeds up X but requires X to destroy them quickly before they eat him! Being eaten is not instant death but it drains health as well as time.
- I can't hit Launch Octopus twice with charged Rolling Shield for the same reason as with Spark Mandrill.
- More lag. Using charged Chameleon Sting and destroying enemies helps.
- The uncharged Storm Tornado can hit Flame Mammoth twice, but it is still not worth hitting him with a charged shot. It might have been worth it if I could come here charged.
- D-Rex is damage-equivalent to Sting Chameleon. Before anyone says "Boomerang Cutter show", I should point out that D-Rex is composed of two huge weapon-absorbing blocks, one of which causes damage on contact, and both which can cause crushing damage. I lead off with a charged Boomerang Cutter (it does 4 damage even though the HP bar doesn't change right away). I am able to delay hits with two Boomerang Cutters but there is a little bit of time sacrifice required to charge up one more time and save a hit. I can't avoid taking damage here, so I intentionally lower my health as low as possible without dying, in the style of MMX3. Besides, I want to show off walking on the roof of the harmful half of D-Rex.
Sigma 4 stage
- Alternating sides for 20 frames per switch is probably the fastest way up. I went down to 17 frames per switch and it seemed to take longer (because of more jumps).
- When you first enter the room, after you beat Velguader, and after you beat Sigma, there is no delay from having X walk more, which is why I enter the room and allow X to walk all that way in the movie.
- I cannot lead off Velguader with a charged X-Buster shot; otherwise Velguader recoils but has 10 frames more invincibility. I use the glitch to keep charged after shooting and I use the ice platform once but otherwise, I cannot switch back to X-Buster because of Shotgun Ice mist animation.
- I cannot lead Sigma off with X-Buster as it always does 1 damage, even when dashing or charged.
- I tried delaying Electric Spark shots enough to hit Sigma with a charged shot. The charged shot saves time if I can spare less than 30 frames; it doesn't save time if I can't. Unfortunately, I can't. However, I found a nice way to use a charged shot and not waste time, so I did so.
- It's the final boss. It goes down fast. Nothing else apart from having a platform squish X into the ceiling so he goes halfway into the platform.
- Even after the final dialog, before the fadeout when X warps out, pressing start will pause the game. It's your responsibility if you do this. I'm not pushing this run above 30:00.
Possible improvements
- In the intro stage, I didn't take a slope jump. Might save 3 frames if luck works out (in fact, OgreSlayeR has saved 2 frames already).
- Optimize lag from boss explosions. Destroy Storm Eagle and Flame Mammoth so that they are almost off the screen when they explode.
- Find out how to manipulate Bospider more efficiently if possible.
- Use L+R to switch back to X-Buster right away (not sure if this helps).
- Use delayed X-Buster shots against Boomer Kuwanger from further away.
- Find more glitches.
Things that look like mistakes, but aren't mistakes
- Not leading with charged X-Buster shots against all bosses. Charged X-Buster shots aren't always faster.
- Not taking the glitched route in Flame Mammoth's stage. It is faster.
- Not going all the way to the right when beating Vile in Sigma 1. It is faster.
- Not leading with dashing X-Buster against Sigma. It only does 1 damage.
- Jumping straight up into the final boss room and letting X walk to the left. It does not waste time.
Timing compared to previous run
Level | previously published | v2.1 (now published) | frames saved | time saved |
---|---|---|---|---|
intro | 10039 | 9906 | 133 | ~2s |
chill penguin | 7289 | 7055 | 234 | ~4s |
boomer kuwanger | 5879 | 5742 | 137[1] | ~2.5s[1] |
sting chameleon | 4133 | 4095 | 38 | ~0.5s |
storm eagle | 4460 | 4045 | 415[2] | ~7s[2] |
spark mandrill | 5235 | 4971 | 264 | ~4.5s |
armored armadillo | 4937 | 4874 | 63 | ~1s |
launch octopus | 4658 | 4505 | 153 | ~2.5s |
flame mammoth | 4090 | 3963 | 127 | ~2s |
sigma 1 | 11838 | 11269 | 569 | ~9.5s |
sigma 2 | 6821 | 6619 | 202 | ~3.5s |
sigma 3 | 12195 | 11832 | 363 | ~6s |
sigma 4 | 5533 | 5473 | 60 | 1s |
Run is 2761 frames (~46s) faster than the previously published run.
[1]: 358 frames gained in level, 221 frames lost on boss because of not having Homing Torpedo.
[2]: 71 frames gained in level, 344 frames gained on boss because of having Chameleon Sting.
Closing notes
What other runs for the X series can we have? Here are some ideas:
- MMX 100% items run (OgreslayeR is working on this one).
- MMX no-dash-upgrade Sigma fortress speedwalk.
- MMX2 no-items run.
- MMX2 Zero parts run.
- MMX3 100% run.
Thanks goes to the following people who helped me:
- DeHackEd, for the published run, for tips, and for the Microstorage.
- Graveworm, for encouraging me to try and reach perfection in the first stage.
- hanzou, for the discovery of using the charged Rolling Shield to pass through enemies up to 7 frames. Although I didn't use it in my run, knowing is good.
- Everybody in the Megaman X thread who encouraged me during the making of this TAS.
DeHackEd: Is it considered ironic if I publish the run which obsoletes my own?