Submission #4595: Hetfield90's SNES Mega Man X "100%" in 33:13.63

Super Nintendo Entertainment System
100%
BizHawk 1.9.1
119815
60.0988138974405
56154
Unknown
Mega Man X (USA).sfc
Submitted by Hetfield90 on 2/27/2015 9:16:06 AM
Submission Comments
Hetfield90's Mega Man X 100% v2 TAS in 33:13.6. It is 2117 frames(35.2s seconds) faster than the published run. Emulator used was BizHawk 1.9.1.

Goals

  • Uses no passwords
  • 100% item collection
  • Aims for fastest time
  • Abuses programming errors in the game
  • Manipulates luck
  • Takes damage to save time
  • Dies to save time
  • Uses speed/entertainment tradeoffs

Overview

Shortly after submitting my v1 of this category, a lot of significant time saves were found(namely in different types of applications of the phantom grab glitch) which I felt merited an immediate salty run-back. Also, through the use of an LUA script made by Pasky13 and edited by FractalFusion, I was able to do a much better job this time around of manipulating RNG, reducing lag, and optimizing movement.

Tricks used

  • Phantom grab - Collecting an item with a boomerang on the same frame that a miscellaneous object (life energy, weapon energy, extra lives, hearts, e-tanks, floating platforms, boss doors) spawns will cause the object to replace the collected item inside the boomerang. This was utilized in this run a total of 11 times to change the route, skip a boss, achieve flight, and expedite the collection of the majority of items required for obtaining the hadouken.
  • Ice sled zip - Positioning X to be inside of an ice sled will zip X out of the way when the sled manifests. This can be used to bypass camera scroll triggers as well as zip through walls.
  • Charging during projectile travel time - Creating distance between X and a boss before you fire an uncharged shot allows you to gain a head start on your next charge equal to the projectile's travel time. This makes some pattern of alternating between charged and uncharged shots the fastest way to kill the majority of bosses in the SNES X games, although it was only used on 3 bosses in this run.
  • Luck manipulation - Creating a dust sprite by sliding down a wall and killing an enemy are the only two ways to consistently advance the rng sequence by two values on one frame. These are the two primary methods of luck manipulation in the SNES Mega Man X games, with delaying movement for one or more frames being used as a last resort.

Stage Info

Table of time saved per stage

v1: Framesv2: FramesFrames SavedTime Saved(approx.)
Intro79947956380.5s
Penguin79747962120s
Kuwanger68446817270.5s
Chameleon81928169230.5s
Eagle75636526103717s
Mammoth68236781420.5s
Penguin Revisit22052127781s
Mandrill640862791292s
Armadillo15317151501673s
Octopus66326610220.5s
Sigma 11003796813566s
Sigma 264286329991.5s
Sigma 390458951941.5s
Sigma 444244429-50s
Total121932119815211735s

Intro Stage(38 frames saved)

  • The time save in this stage was from lag reduction and manipulating a better Vile pattern. It was FractalFusion who was able to figure out how to manipulate Vile (which I couldn't manage to do in v1 or v2). It requires not only the right RNG value at the beginning of the fight, but specific positioning relative to Vile at different points throughout the fight as well.

Chill Penguin(12 frames saved)

  • Lag reduction was the main time save on this stage, but some minor movement nuances contributed as well. Seemingly random buster shots are generally to reduce lag.

Boomer Kuwanger(27 frames saved)

  • Simply walking for 2 frames at the start of the stage sets up X's positioning to do a dash speed wall kick through the first ladder gap without having to wall kick off the inside of it.
  • Shotgun ice was used to reduce lag in areas where buster could not.

Sting Chameleon(23 frames saved)

  • Nothing new on this stage, just some more lag reduction.
  • The fast back and fourth wall kicking after the heart is generally faster than slower wall kicks when two walls are close enough together (because you avoid a frame of halted vertical movement that occurs during a pose change a certain number of frames after performing a wall jump), but in this case I broke even.

Storm Eagle(1037 frames saved)

  • It was known since before the v1 TAS that phantom grabs could be used to grab hearts and e-tanks, but it wasn't until after that FractalFusion figured out that any object categorized as "miscellaneous" in the game's memory could be grabbed using the same glitch, which includes the floating platforms on this stage and the first 2 Sigma stages.
  • Platform flight movement is extremely difficult to optimize since you have to move X in such a way that causes the boomerang to take as direct a path as possible from point A to point B. The first line I took was from where I grabbed the platform to a point in space that just dodges a trigger which causes the clouds in the background to move (this is very important for reducing lag later on). The second path I take is from there to point in space which dodges a trigger that spawns the second set of platforms in the stage and allows me to spawn the e-tank first instead. This is very important because as you take the platform from the first section with you, the 10 platforms from that section continue to occupy 10/16 miscellaneous data slots in the game's active memory for as long as that one platform remains on screen. If you take a direct route to the e-tank, you will spawn the 2nd set of platforms beforehand and there will be no vacancy for the e-tank to occupy, thus preventing it from being able to spawn. After I fly over this trigger, I can proceed to pick up the e-tank then continue to the helmet capsule.
  • I make sure the platform platform does not touch the barrier leading to helmet capsule room in order to preserve the boomerang so I can use the platform to push me up into the capsule during Dr. Light's dialogue. You are still limited by certain factors during this trick, such as inputs not being able to register during capsule sequences (even to advance text), and the camera lock not releasing until Dr. Light's hologram has faded completely. Nevertheless, this still saves a little over 2 seconds. Also, this is the part where it is crucial that the clouds in the background are not moving (even though you can't see them), otherwise lag would negate the time save and then some. Credit goes to Parrot14green for finding out this trick was possible and ColonelFatso for telling how to dodge the cloud trigger to make it save time.
  • Thank goodness this useless extra life is there for me to phantom grab the 2nd set of platforms with, because the flying crane guys don't drop items. Unfortunately there is another trigger here that causes the clouds to move which could not be dodged (otherwise the platform would have despawned immediately after picking it up). Stationary clouds reduce a lot of lag on the ship later on.
  • The wider platforms from the 2nd set are nearly impossible to control. You can only ascend in increments of 5 or 10 pixels every 7 or 8 frames respectively or fly horizontally, and if you get on top of it it is impossible to get off unless the boomerang is already moving away from you at the time. The only way to descend is to fly into an enemy to interrupt your wall jump then wall slide along the platform.
  • It was possible to get on the ship's lift earlier than this, but doing so would have caused the two turrets on top of the ship to not despawn before the fight, creating enough lag to destroy the world's most advanced super computers.

Flame Mammoth(42 frames saved)

  • Probably having the most demanding sub-pixel positioning requirements of any trick in this game, it is just barely possible to fit between the left set of blocks and the wall on the right after the first wall jump from breaking the blocks leading to the arm capsule. Credit goes to RaijinXBlade for bringing this to my attention.
  • I think I found the optimal way to do the 2nd conveyor belt section by jumping when dust sprites from dashing cause too much lag and dashing along forward moving conveyor belts (or in this case the Utuboros head) when I could get away with it.

Penguin Revisit(78 frames saved)

  • This was the first extremely complex phantom grab of the run. I ended up doing it by manipulating the boomerang's trajectory to switch directions with X's positioning as well as juggling the item twice in order to cause it to reach me when I was in position to grab the heart.

Mandrill(129 frames saved)

  • Since Mega Man X stages tend to be very linear, I always thought it was strange that there was a ladder leading to a completely useless room at the beginning of this stage. However, by combining a phantom grab on the e-tank (just to start an earlier charge than grabbing the e-tank normally) and an ice sled zip through a wall I was able use this otherwise useless room to take a shortcut through the stage. Credit goes to FractalFusion for telling me about this.
  • Parrot14green showed me this sled zip leading out of Thunder Slimer's room. Unfortunately I was only able to save 1 frame with it (you are still limited by the camera lock while you are traveling through the wall).
  • This phantom grab was by far one of the most difficult in the run to pull off. Not only did it involve multiple juggles and trajectory manipulation like the Penguin one, but I also had to use a glitch that teleports the item from one boomerang to another by destroying the first boomerang with an enemy which it does not deliver a killing blow to.
  • I did another dash speed ladder gap jump here like at the beginning of Kuwanger's stage where I avoided wall jumping off the inside of the gap. These are extremely difficult to pull off and require very specific movement to set up.

Armadillo(167 frames saved)

  • After seeing that Dezbeast only got killed by the bird during the first visit of his run when he did not have body armor, I assumed it was impossible to weaken yourself enough to die to the bird with the armor and didn't even attempt it in v1 (since the mine cart only does 1 damage to armored X). This time around though I thought to utilize the fact that miners still deal 2 damage to armored X and was able to pull it off even with armor and 7 hearts on the revisit. I am glad this worked out, because this stage is extremely boring otherwise.
  • The way the birds at the end of the stage spawn is based on camera position while you are standing on the cart, so I was able to use this to my advantage to despawn the cart during the final jump off on the bird visits just like you do in a normal pitfall visit by spawning the bird as far right as possible(although admittedly I did this on accident on the first bird visit without even noticing). The lag reduction from the cart despawn during the death animation saved ~20 frames each time around.
  • I used a different bat to phantom grab the e-tank and manipulated the boomerang's trajectory to change directions once to save around 10 frames over the strategy from v1. Since I was weakening myself from the cart I couldn't use life energy, so I had to get weapon energy since it wasn't in the cards for me to get an extra life here on either visit (extra lives are extremely rare and there was none in close proximity to either phantom grab). Refilling one point of weapon energy costs 4 frames.

Octopus(22 frames saved)

  • Nothing really to talk about in this stage, just pain staking lag reduction and RNG which can't be manipulated without time loss. You can't create dust sprites underwater, and any enemy that you kill in this stage will cause a significant amount of lag. Luckily most things actually went my way this time around though.

Sigma 1(356 frames saved)

  • Killing two turtles at the beginning of the stage was all the manipulation I had to do in order to get an extra life on the optimal frame to phantom grab the platform at the beginning of the stage. This was extremely lucky, since I really could not afford to get ammo or health here (I needed to use more than 1 boomerang to weaken the last turtle).
  • The damage boosts on the turtles at the beginning of the stage were all the standard damage boosts, but I weakened the last one so that the boomerang holding the life would destroy it as it passed through, allowing me to immediately take flight. During the platform flight I was able to take two extra points of damage for free which allowed me to take a forward moving 1-point damage boost from a walker in the ladder section to omit one hit from vile.
  • For whatever reason, fire wave is a very useful lag reduction tool on this stage. It even made the first two sprites after Zero's death invisible which also helped reduce lag.
  • It was known for a while that you could phantom grab boss doors ever since RTAer ColonelFatso got rekt by the Sting Chameleon boss door in a run, but it wasn't until very recently that an actual useful application for it was found by Parrot14green in the form of the Kuwanger refight skip. The steps to do this trick are as follows: kill the highest turret on the right wall of the climb before Kuwanger (to allow it to respawn later), phantom grab Kuwanger's door close enough to his room so that you can the camera lock is close enough to spawn him, respawn the aforementioned turret, spawn Kuwanger (causing you to lose control of X), fall onto the turret and take damage to regain control of X, fall down and grab the ladder at the base of the climb to release the camera lock set in place by the phantom grab, do a midair jump after Kuwanger's health fills, use the midair doors to do fast back and fourth wall kicks and a platform jump, proceed through Kuwanger's room as the game checks to see he is nowhere in sight and destroys the exit door. After all is said and done this skip saves 1 second over hadoukening him and sitting through the boss explosion like normal, which means it will save 10 seconds in an any% TAS.
  • Using e-spark in the helmet head room before Bospider helped me to manipulate the optimal pattern from him, although it only netted a 6-frame time save over the next fastest alternative. I was extremely limited in how I was able to do manipulation before the phantom grab because my rng for a health energy/extra life drop around that time was horrible, which subsequently made it harder to get to the optimal Bospider pattern. The straight down Bospider pattern is extremely rare (roughly a 1/43 chance) with not really much chance for manipulation beforehand, so I was glad I was able to get it in this run while yielding a net time save.

Sigma 2(99 frames saved)

  • The platform grab at the beginning of the stage only saved half a second because of an unavoidable despawn.
  • FractalFusion demonstrated that you can actually hadouken through Penguin's ice ball to gain a 10-frame net time save (14 frames are saved on the actual hadouken, and then it takes 4 frames to fill up the lost hit point).
  • FractalFusion also explained to me during this stage that the only limiting factor of when you can destroy Rangda Bangda's nose is how early you start your charge from the 2nd eye hadouken, regardless of when the hadouken actually connects with the eye and kills it. Going to the far right wall and hadoukening as early as possible allowed me to Akuma the nose from much higher up so that I didn't have to wait for it to come back to the middle of the room.

Sigma 3(94 frames saved)

  • This was extremely difficult to manipulate, but FractalFusion showed me that it is actually faster(and possible for that matter) to force Sting Chameleon to drop down after one tail swipe pattern than it is to Akuma him. I had to create max dust sprites during the Rangda Bangda fight in Sigma 2, kill as many enemies as possible in this stage (without causing lag), and create max dust sprites in the Chameleon fight to pull it off. It ended up being 45 frames faster, which was partially due to not having to use fire wave in the room before Chameleon (which causes a lot of lag and limits your movement).
  • The sled zip after Chameleon from v1 is half a second slower. I only did it in v1 because I though it was cool, but I already had 2 earlier in this run which both saved time.

Sigma 4(5 frames lost)

  • The 5 frame loss on this stage was simply the result of the only place to manipulate the Maverick Tank explosion(explosion sprites are based on RNG which can cause more/less lag during an explosion that coincides with a white screen fade in/out), Velguarder's pattern, Sigma's first form's explosion, and Velguarder Sigma's pattern without losing time is in Flame Mammoth's refight room after his explosion. You only have enough time to create 7 dust sprites here, and manipulating 1 of these 4 things changes all of them. In v1 the stars happened to align and give me optimal patterns from all 4 in one fell swoop, but I was not so lucky in v2. I ultimately ended up having to delay some frames in between them to get favorable patterns from each.
  • I couldn't manipulate Velguarder Sigma to let me hit him with the two-pronged attack this time around, but at least I was able to hit him with two swift swagdoukens to the face (which should make up for the lack of any in v1).

Things to look out for

  • The Storm Eagle, Spark Mandrill, and Sigma 1 stages were the highlights of this run for me, so I would recommend looking out for those especially.

Possible Improvements

  • I am not completely sure that this is how this works, but I believe having very specific subpixel values as you approach the bottom of a ladder gap can allow you to wall jump off the inside of it before X even appears to be high enough to do so. This would presumably be as low of a y-axis value (numerically) as possible, and as high of an x-axis sub pixel value as possible if you are facing the right wall of the gap or as low as possible if you are facing the left wall. These are extremely difficult to pull off (I was only able to do it in a few ladders), and I can't even confirm for sure that they would guarantee a frame save since they just give you a slightly higher average vertical velocity for 4 specific frames and would probably require inhibition of prior movement to set up in most cases, but I do believe these have potential for time save in some cases.
  • Lag in this game is a pretty big mystery, both in what causes it and how you can reduce it, so this can always be improved upon with more experimentation.
  • RNG manipulation in this run is very difficult at certain points, and depending on what kind of cards you are dealt, compromises may have to be made. A separate run of would likely be able to manipulate optimal boss patterns and phantom grab drops in places where this run could not, but equally likely to fall short in places where I lucked out in this run. Places where I had to settle for sub-optimal rng or resort to delaying my movement to obtain optimal RNG were the Spark Mandril boss fight, Armadillo e-tank phantom grab, Octopus heart Utuboros explosion (he gave me a lot of lag-enducing drops which I could not avoid), 2nd Vile encounter, Bospider, Rangda Bangda, Chameleon refight, Velguarder, and Velguarder Sigma. I did not lose more than a few frames on each of these (besides the Octopus heart), so overall I thought RNG manipulation worked out really well for the most part in this run.
  • Boomerang trajectory on Eagle's stage during the platform flight is very difficult to optimize, so I think more frames could definitely be saved here if slightly more direct paths could be taken, especially since dodging the 2nd platform section trigger to allow the e-tank to spawn seems so random. Also it was very difficult to find a balance of making the boomerang take a direct path in the capsule room, but still arcing down low enough to later be manipulated to change directions twice and go far enough right to push X into the capsule, so I think this could be more optimized as well.

In Closing

While the creation of v1 was an instrumental step in my learning how to TAS, I am much more satisfied with this run, both because of its inclusion of newly discovered tricks/glitches as well as its improvement of minor details.
People who I owe thanks to for helping me complete this run:
  • FractalFusion: everything from customizing an LUA script for me to use, manipulating Vile's RNG, discovering and showing me a myriad of time savers which weren't present in my v1, watching my stream pretty much every time I was working on the TAS to give me pointers and answer any questions I could come up with, to encoding the finished run, FractalFusion was equally invested and instrumental in making this TAS be as big of an improvement as possible over the published run as I was. The vast majority of the 35 seconds saved from v1 to v2 can be attributed primarily to Fractal's assistance with v2.
  • The other guys from TASvideos who were looking for and showing me new tricks before and during the making of the run: lxx4xNx6xxl, Parrot14green, RaijinXBlade.

Screenshot Suggestion


Nahoc: Judging...
Nahoc: Accepting as an improvement of the previous movie. Great job, Hetfield!
Guga: Processing...
Last Edited by adelikat on 10/13/2023 1:44 AM
Page History Latest diff List referrers