Submission #934: FractalFusion's SNES Mega Man X3 in 38:14.65

Super Nintendo Entertainment System
baseline
Snes9x 1.43
137679
60
36533
Unknown
Mega Man X3 (U).smc
Submitted by FractalFusion on 1/3/2006 10:40:37 PM
Submission Comments
After going back and forth between a few different games, I decided to make a Megaman X3 TAS. Unlike X2, the weapons don't make X go any faster or slower, so it's actually easier to optimize. Making a good TAS is never easy, though, as I throw in luck manipulation and weapon combinations to improve just about every boss battle in the game. Boss battles are extremely important to optimize. One less hit means one second saved.
To get the Beam Saber, X must first defeat Vile in his own stage (only activated when you beat 2-7 Maverick bosses) and the last hit must be either Spinning Blade or (in this case) Ray Splasher. Then in Doppler 2, Zero must defeat the bug miniboss. Although a couple minutes are lost doing this, the time is made up by the speed at which the sword kills all the remaining bosses. I am not sure whether a no-items run is faster or not.
Anyway, my run is faster than nitsuja's run by 5776 frames (1:36 faster). Saved about 10 seconds or more on each of three of the bosses, and had significant gains from other bosses. Bosses weren't the only place where I saved time; I also found various tricks in levels which saved a fair amount of time. I also cut out revisiting a level; that alone saved about 15 seconds.
The emulator used is Snes9x 1.43 Improvement (patched version) and uses WIP1 timing.
And please remember to put my real name in the movie header this time.

Aims

(from highest to lowest priority)
  • Uses no passwords
  • Aims for fastest completion
  • Abuses programming errors in the game
  • Takes damage to save time
  • Manipulates luck

Programming errors abused

  • Dashing and shooting an uncharged X-Buster does more damage than otherwise to enemies (except bosses)
  • Passing through enemies using Tornado Fang
  • Keeping Zero's Saber out by jumping
  • A whole bunch of boss invincibility glitches (see run notes for details)
  • The intro skip that completely does away with the opening cutscene and skips straight to the menu

Other tricks

  • Making sprites disappear by scrolling them offscreen (most notably the moving platform leading to Vile's stage)
  • Jumping off slopes while walking downward allows a higher jump (once, in Gravity Beetle's stage)
  • Jumping up ladders without grabbing them
  • Taking damage for invincibility to spikes (and other stuff)
  • Taking damage while slashing allows faster charge-up

Weapon Notes

  • X-Buster: X's standard weapon, one that tears up all non-bosses in a split second, and one that is easy to switch out.
  • Frost Shield: Not a shield. Basically used when it does more damage than X-Buster.
  • Acid Burst: A useful weapon that can hit enemies above X's position and make delayed hits.
  • Tornado Fang: Does continuous damage (but only at 30-frame intervals) and can be used to pass through enemies which are not immune to it.
  • Triad Thunder: Hits enemies both above and below, but tends to induce lag and is hard to switch out.
  • Spinning Blade: Its curve motion allows delayed hits. Otherwise, I just use it for damage, but it's hard to switch out.
  • Ray Splasher: Has a natural 60-frame period (same as most boss invincibility times). Can make delayed hits.
  • Gravity Well: What Gravity Well? Seriously, this weapon is useless. Only harms in all one boss/miniboss (inefficiently at that), and even against non-bosses, X is long gone from the area. I use it only to decorate wireframe animations.
  • Parasitic Bomb: Can make delayed hits, and allow passing through enemies that it traps.
  • Beam Saber: Does 16 damage to every boss.

Run Info

Pre-game

- The intro skip trick that works in X2 also works here. I first discovered it by running DeHackEd's dual TAS on X3. Two and a half seconds saved, just like that.

Intro stage

- Nothing much to mention. The Mac Miniboss dies in a shot and a slash, and it is faster to shoot him first.
- To defeat giant boss, just use charged/uncharged X-Buster combo.

Blizzard Buffalo's stage

- Basically, I follow nitsuja's run, but with better precision and jumping.
- Yes, I know that Parasitic Bomb/X-Buster combo takes down Buffalo faster, but I have to start somewhere and considering the awful Blast Hornet stage, I decided it would be best to start with this. Anyway, charged/uncharged X-Buster is easy to pull off.

Toxic Seahorse's stage

- Vertical shaft jumping is difficult, but fun!
- I delay hitting the octopus miniboss so that when I lose control, X is at the door. This saves having to dash up to the door after regaining control.
- If Seahorse is hit with the Frost Shield above a certain height, after 60 frames, he loses invincibility and for a few frames has absolutely no recovery. I use this time to pump Frost Shield into him. This invincibility anomaly is the first of many.

Tunnel Rhino's stage

- I meet Bit in this level. Note that I can't deliver the last hit with Frost Shield because he will explode (which wastes time) instead of fleeing. Sandwiching the 10 Frost Shield shots with uncharged X-Buster shots seems faster than ending with a charged X-Buster shot, although it's not clear. I take a hit here to make sure Bit is on the ground when I deliver the final hit, so he doesn't waste time falling to the ground.
- I wall-jump on the double-corner overhang somewhere in this level. It looks impossible at first glance.
- I come into the miniboss room uncharged. It's just as fast, and allows me to end up further ahead after it's defeated.
- Against Tunnel Rhino, Acid Burst/X-Buster combo is fastest. I took the first couple hits here because I was trying to luck manipulate Rhino into doing a fake charge and it wouldn't come easily. The third hit I took was to get Rhino to flash charge into the closest wall; the flash charge is unavoidable and so was taking damage.

Neon Tiger's stage

- I take this stage next because Tiger's weakness is way too slow and I want to get Vile with the Ray Splasher without revisiting Volt Catfish's stage.
- The Centipede miniboss is best handled by going straight up to it on the right wall. It looks like half of X's body is going into the Centipede and yet he doesn't get hurt. :)
- How this glitch works in the Neon Tiger battle: If he is on the ground and performs his next action, he resets invincibility, regardless of how soon you hit him before. So double-shooting the X-Buster can do 2 damage. I use this to deliver 5 damage every 3 seconds.

Vile's stage (via Volt Catfish's stage)

- I have to fit in 8-damage worth of X-Buster shots because otherwise I run out of Ray Splasher. I tried to hit Vile twice with one Ray Splasher but it failed.
- A glitch I stumbled across was to defeat Vile's ride armor while it was punching. Since the arm is technically a projectile, X falls onto the arm and takes damage, allowing control when Vile charges up. Not only does this allow me to hit Vile on the earliest possible frame, but it allows me to make delayed hits with the Ray Splasher so I don't have to get so close.

Volt Catfish's stage

- One of the more enjoyable stages to run, apart from the boss.
- It was a long struggle against Volt Catfish, but I made it. I still had 12 health because of the damage in the Vile battle, and little did I know I needed all that health. I used charged/uncharged X-Buster, but I had to get hit 5 times, bringing my health down to 2 (no hits to give). The worst Catfish attack was his Triad Thunder, but it was necessary to keep him from not only flopping around, but delaying him just enough to bring him down to 2 health before he supercharges. And when he supercharges, it resets invincibility to Tornado Fang (if you were wondering how I took off the last 4 bars so fast).

Crush Crawfish's stage

- Byte appeared when I was least expecting it. Anyway, I like to use Ray Splasher because I have less control with Tornado Fang, but I use both in this battle. Both these weapons explode Byte, so I hit him last with charged X-Buster.
- The "window of opportunity" everyone was talking about in the Megaman games is present in X3. When you regain control after blowing up the engine, you can jump and not fall like you're supposed to.
- If Crawfish is hit with the Triad Thunder, after 60 frames, he loses invincibility and for over a second has absolutely no recovery. I use this time to shoot him down with X-Buster autofire. I take damage because I don't want to get hit by his shooting claw and I jump because I don't want him to charge (he would grab and stun X even when X is invincible).

Gravity Beetle's stage

- Actually, Parasitic Bomb (Blast Hornet's weapon) is best against Gravity Beetle. So why do I do this stage first? Reason later on.
- I use Ray Splasher/X-Buster combo on Gravity Beetle. There is an invincibility glitch such that if Beetle is using a flash charge, a Ray Splasher hit immediately stops the Beetle flashing and resets invincibility, and a second hit does damage. Normally, he jumps too low to pull off an X-Buster/Ray Splasher quick double hit, but when he makes a huge Gravity Well, his jumps take longer and I can make the quick double hit for 5 damage.

Blast Hornet's stage

- To make a long story short, I don't like this level, and the minute-long ship-block scene (not shown in my run) ends any hope of doing this before Gravity Beetle (the scene only doesn't occur if you beat Gravity Beetle). The C4 Wheel miniboss is the reason why I started with Buffalo and Seahorse.
- Instead of using the useless (in a speedrun) Gravity Well on Hornet, how about Spinning Blade? I saved about 15 seconds on this battle alone, more than on any other level. I tried to get Hornet as low as possible for the final hit.

Doppler stage 1

- Charged X-Buster to Acid Burst to Frost Shield was the fastest I could come up with for this miniboss. It was an awkward situation, but the delayed hit with Acid Burst was vital.
- Bit/Byte mutation? I use Ray Splasher, and a single Parasitic Bomb allows me to make delayed shots. The damage at the end was intentional.

Doppler stage 2

- It is known that switching to Zero resets vertical velocity, but I couldn't find any place to exploit this.
- I try to get Zero under the Bug miniboss when it is defeated. For some reason, the Bug's movements are totally erratic when trying to crash on Zero, and sometimes the Bug hovers on Zero's sprite for what seems like eternity until it crashes. It is best to minimize the Bug's horizontal distance it must travel to crash on Zero. Defeating the Bug at a position one or two pixels off can mean losing 40 frames.
- I go up the spiked section while taking damage, and I do it very fast. There are a couple stunts which look impossible to perform.

Doppler stage 3

- I thought initially that I couldn't save more than a second in this level. I was absolutely wrong. 7 seconds saved.
- The Beam Saber allows partial charging of special weapons; a special weapon can be fired and then a charged X-Buster shot.
- Generally, there are a couple timesavers I use here. First, the fastest way to get rid of a charged shot is to shoot it into an invincible boss. How do you make the boss invincible? Pre-hit it with a weapon like Ray Splasher or Parasitic Bomb (this only works for the first charged shot). Second, taking damage just after hitting with the slash allows faster charge-up, although I am limited by the health bar.
- Blast Hornet went fine; I found a way to take 3 damage instead of 8. No pre-hit here; it's just too awkward.
- I didn't want to take 5 damage against Blizzard Buffalo, but there was no other choice because I can't dump the second charged shot anywhere good (without taking damage). I also can't pre-hit Buffalo because he is immune to Ray Splasher, and Parasitic Bomb obviously doesn't work.
- Volt Catfish and Gravity Beetle go quick; I use pre-hits here.
- Toxic Seahorse (and Crush Crawfish) require nothing of the sort; hitting with their weakness allows a single slash to hit twice.
- I pre-hit Tunnel Rhino, but I can't take damage as I have 3 health left.
- Ironically, the glitch that defeated Neon Tiger faster in the first battle was the one that threw my entire plan out the window. I had planned to pre-hit Neon Tiger, take damage on his Ray Splasher, and slash him before he put up his block. As it turned out, the glitch renders the pre-hit useless, and I couldn't recover enough time to hit him fast enough. I settled with making him fly up to the wall, and I couldn't take damage.
- Against Doppler, I dump a charged shot to make him put up the green shield, then strike with the point of the Beam Saber when he takes it down. This is faster than starting the slash the moment he won't put up his shield. I also dumped the second charged shot into Doppler since he has a 90-frame invincibility, but I had to turn him around to avoid getting hit by the energy ball he fires.

Sigma's stage

- Against Sigma, I dumped my charged shot into his shield, but it took longer than dumping into an invincible boss. It is also necessary to keep the fire button on the last slash on Sigma to keep the X-Buster charge; I missed it the first time.
- I know X takes a whole second to walk to the left side after beating Sigma, but Sigma always sits on the right side for the first few seconds of battle.
- I take damage to kill Kaiser Sigma faster, but I only save a few frames.
- At the top of the shaft, I somehow saved about 20 frames by jumping to the ledge so that X was off the top of the screen.

Possible improvements on this run

- Jump up alternating sides in all shafts where the walls are close. I missed this in the first shaft in Blizzard Buffalo's stage and the final shaft in Gravity Beetle's stage.
- It is possible to beat the first two enemies in Toxic Seahorse's stage without losing time. I didn't because I have a tendency to avoid killing enemies.
- In Doppler 2, first area, it may be faster to jump on the right wall first instead of staying on the left.
- It may be faster to hit Bit first with Ray Splasher (if Neon Tiger is already defeated), though it's hard to get the second hit on time.
- In a few areas, I lost 2 or 3 frames to nitsuja's run, though I didn't figure out why.

Closing notes

After the X2 run, I was more experienced in making Megaman X series TAS so I handled the X3 TAS better. This TAS took a month and a half, whereas the X2 run took three months. Anyway, it's so much fun to make a TAS when you have the power to beat a game beyond what anybody else could expect.
Thanks goes to the following people who helped me:
- nitsuja, for making an awesome TAS of Megaman X3, and for some tips
- Graveworm, for challenging me to do my best, and for many tips in X3, most notably the Neon Tiger invincibility glitch
- DeHackEd, for supplying a wonderful file storage, and for the intro stage skip
- everybody in the Megaman X3 thread who encouraged me during the making of this TAS
I hope you enjoy the run!

Bisqwit: Might as well mark it as being handled, as I'm doing it.
Last Edited by adelikat on 8/29/2023 9:31 PM
Page History Latest diff List referrers