TASVideos

Tool-assisted game movies
When human skills are just not enough

Submission #5497: Flameberger's GBA Megaman Zero "All Missions" in 33:43.26

Console: Game Boy Advance
Game name: Megaman Zero
Game version: USA
ROM filename: 0588 - Megaman Zero (U).gba
Branch: All Missions
Emulator: Bizhawk 1.12.0
Movie length: 33:43.26
FrameCount: 120844
Re-record count: 174731
Author's real name: Daniel James
Author's nickname: Flameberger
Submitter: Flameberger
Submitted at: 2017-05-08 22:03:06
Text last edited at: 2017-05-19 15:29:09
Text last edited by: Fog
Download: Download (82692 bytes)
Status: published
Click to view the actual publication
Submission instructions
Discuss this submission (also rating / voting)
List all submissions by this submitter
List pages on this site that refer to this submission
View submission text history
Back to the submission list
Author's comments and explanations:
Hello and welcome to this MMZ All Missions TAS, my name is Flameberger.


(Link to video)

I'll start with an overview of gameplay mechanics that will be relevant to the run.

Horizontal Movement

Of the two axes, the horizontal is generally the simplest to optimize. I can dash along the ground and also do dash jumps and dash walljumps. Each of these moves me at 3.5 pixels per frame and can be combined without consequence. I can walk along the ground or do non-dash jumps to move at 2.0 pixels per frame instead. Obviously that's a worse option when I'm trying to cover as much distance as I can, but there are several situations where I deliberately walk for one frame in order to avoid overshooting a point I need to hit. A common example of this is situations where I will need to return the way I came after accomplishing some objective; in such situations going further than I need to in one direction would mean having to backtrack a greater distance on the return trip.

Walking on the ground for a frame isn't the only way to accomplish this; I can also do a non-dash jump and then switch to dash speed on the next frame. This is called a delayed dash, it is a critically important technique in vertical movement, but also has some uses in the horizontal variety. In addition to the application I described earlier, delayed dash jumps have an added role in lag reduction. Starting a dash on the ground generates a sizable dust sprite at Zero's feet, but if I jump immediately as I land and delay the dash by one frame that dust will not appear. Doing so costs 1.5 pixels; I pay it gladly if it lets me dodge lag.

In addition to the regular dashing and walking speeds, there is slothlike, 0.5 pixels per frame, acceleration speed that Zero will move at for five frames when going from a full stop up to walking speed. I use this in a few spots where I want to get a precise positioning and I have to wait on something else anyways.

Dashes can be done either by pressing the dash button or by double tapping left or right (Command Dash). Alternating full length regular dashes with command dashes allows me to indefinitely move along the ground at full speed. In a few places I use this to avoid lag that would occur were I to jump.

I can also save frames with a technique I call the Ledge Dash. If I dash horizontally over an edge while holding forward and not jumping I get a free 3.5 pixels of movement. Well, sometimes it's free, other times it's laggy as frig. So if you ever see me not dashing over ledges when it seems like I ought to be; I'm probably avoiding lag. I'm not certain, but I think what happens when ledge dashing is that there is a frame where the game gets confused about whether I'm dashing along the ground or if I'm moving through the air at dash speed, and it gives me the 3.5 pixels movement from both on the same frame.

Zero's dash attack has some significance to my movement because after the attack is initiated it forces me to move in that direction for numerous frames. My average speed when dash attacking is pretty pathetic, but in certain cases when I'm about to lose control of my life I can dash attack at the last moment and cover a significant distance during a time when I would normally be immobile. This is often used as my finishing move against a boss in order to leave me in a favorable location for whatever I need to do after that fight. Note that there are a great many situations where my control is taken away but this technique is not applicable due to invisible walls or the like.

It's also worth mentioning how Zero's hitbox becomes significantly shorter and wider when dashing. I can use the shortness of the dash hitbox to go under enemies or attacks, and I can use the thinness of the jumping hitbox to get closer to things before hitting them; in many cases I'll use the fatness of the dashing hitbox to hit things from farther away than I could otherwise. A common application of this is from going through doors. When Zero hits a door it triggers a movement of some fixed distance through that door. If I am very close to the door when I touch it I’ll be rather far beyond it after going through. If I hit the door from far away by dashing into it then I will be close to the door on the far side. From that point if I dash along the ground my widening hitbox will hit the wall behind me and push me forward several pixels. There are exceptions, but that seemed to be the optimal strategy for most doors.

Vertical Movement

Vertical movement is generally much more complicated to optimize, especially for large climbs. Jumping gives Zero an initial rate of ascent of 5.00 pixels per frame with a constant acceleration of -0.25 pixels per frame^2. It seems as if the affects of gravity apply earlier when walljumping vs. jumping from the ground, so your initial rate of ascent is a slightly slower 4.75 pixels per frame. Upon releasing the jump button your ascent is stopped immediately.

Climbing with full hops would be extremely slow because of the constant deceleration from gravity; I would spend a large number of frames moving very slowly before reaching the peak of my jump. On the other hand doing extremely short jumps would also be bad because it would mean spending a lot of frames not ascending while the jump button is released. Optimal climbing needs to strike a balance between not letting the jumps get too slow and not releasing the jump button too frequently. Theoretically, the optimal number of frames to hold each walljump is 5; in reality what’s possible and optimal depends a lot on the specific wall I’m climbing.

For up to seven frames after jumping from a wall Zero will move away from that wall despite any directional input from the player. Releasing the jump early will cancel this repulsion and allow me to immediately start moving back in the direction I came. This is often used when trying to climb up and over a ledge; I only jump as high as I need to to clear the ledge and then I release the jump to start moving forward. This concept is also useful for doing double walljumps. If I start one jump very close to wall I will still be close enough to jump off of it again even after several frames of kicking away from it. Usually four frames is the limit before double walljumping becomes impossible, but in some extreme conditions I can jump five frames and still be within range of the wall. Double walljumps aren’t always faster than regular climbing, but they can be a very useful option if my jumps don’t line up well with the height I’m trying to hit.

During the seven repulsion frames at the start of each jump Zero can be moving either at walking speed 2 pixels per frame, or dash speed 3.5 pixels per frame. I mentioned in the Horizontal Speed section that it’s possible to delay dash inputs until the 5th frame of a jump; this is critically important to fast wallclimbing because it means I can spend 4 / 7 repulsion frames at walking speed and thus reduce the distance I get pushed away from that wall. I mentioned earlier that the ideal amount of frames to jump before starting a new one is 5; it turns out that even with the delayed dash tech it’s not generally possibly to climb walls at that rate because I don’t get close enough to start another jump that early. This means that I generally just want to start my next jump at the earliest possible moment as I return to the wall, usually this is around 11 frames after starting the jump. When moving up a narrow passage with walls on both sides I can alternate jumping off each side for a faster climb.

I learned late in the TAS that there is more to delayed dashes than I initially thought. I discovered that doing a full walljump towards the wall there is a period around the very peak, 17 frames into the jump, where a dash input will be accepted. I call this the super delayed dash walljump; it has no practical application that I know of because starting a dash that late would be just silly. Next I discovered that if I walljump away from a wall I can start a dash 9 frames in. So I guess that would be the semi super delayed dash walljump. I jest, I’ll just call them short, medium and long delays. The medium also has no practical application as is because if I’m trying to move away from a wall I would just start the dash immediately. However, I messed around a bit more and discovered that if I’m in an attack animation I can do a medium delay without moving away from the wall. This has an additional quirk; if I was facing towards the wall when I jumped from it and I move towards that wall on the 8th frame the dash input on the next frame will not work. If I was facing away from the wall then I can move towards the wall on that frame.

Doing medium delay dash walljumps is slightly better than the standard short delay; putting me either 1 or 3 pixels closer to the wall, depending on if I was allowed to use the first frame of movement. Most of the time I am facing the walls I climb off of, so normally only the 1 pixel advantage is available. If I have the Triple Rod equipped I can change the direction I’m facing by attacking away from the wall while kicking off from it. This would allow me to get the 3 pixel advantage every time regardless of which way I’m moving; I did not end up finding any viable application of that Triple Rod technique unfortunately.

Overall I wasn’t able to save very many frames with medium delays for a few reasons. First of all, climbing walls in general tends to be a hotspot for lag frames; doing a bunch of extra attacks while climbing will make that even worse. Furthermore, many of the climbs I do are set up so I get almost exactly the height needed to make it over a wall; using medium delays to jump more frequently would simply cause me to fall short and need an additional jump.

Weapons / Boss Strategies

This TAS will use three different weapons: Buster, Z-Saber and Triple Rod. There is a fourth weapon, the Shield Boomerang, which would almost certainly not be worth collecting in a TAS. The melee weapons, the saber and the Triple Rod, generate four frames of hitlag every time they connect with an enemy; I only strike down enemies with them when necessary.

There are also three elemental chips that are acquired as rewards for certain missions. These chips will change the elemental type of Zero's fully charged attacks, allowing him to take advantage of boss weaknesses. I only use elemental weakness against two bosses because there are usually better options.

The buster is my weapon of choice for killing non-boss enemies thanks to it's lack of hitlag. At TAS levels of mashing it's potential damage output is quite substantial, although the slowness of the projectiles and the fact that only three of them can coexist on screen can be rather limiting, especially at long range. Lemons generally deal 1 damage, though those fired while dashing along the ground deal 1.5. The buster can be semi-charged to a green shot that does 3 damage. During this run I get two levelups for the gun, the first allows me to have four shots onscreen, and the second let's me do a fully charged shot for 6 damage. With one exception, the buster is not used to damage bosses.

For boss kills, the saber reigns supreme. It features several attacks that will give a boss only 12 frames of invincibility as opposed to the standard 90 frames; I'll refer to these as combo attacks. While stationary on the ground Zero can perform a three hit sequence, the first two swings of which are combos. Optimal strategy on most bosses is to do those first two attacks and then cancel the combo before the third swing; thus avoiding ever giving the boss full invincibility. Canceling the combo can be done either by walking a step (walk canceling) or by attacking with another weapon. Shooting the gun (buster canceling) is the preferred combo cancel because it can be done several frames earlier than walk canceling, however it is important that I’m not standing too far from the boss or else their 12 frames invulnerability will run out before the lemon hits.

If I am standing close to a grounded enemy I can swing at full speed, damaging the boss again immediately when they become vulnerable. If the target is somewhat far away this won’t work because the hitbox of the second swing becomes pretty small by the time the bosses I frames are up, so in those cases I need to delay the 2nd swing until the boss has only 4 frames of invulnerability left. If the boss is hovering some distance off the ground, like Herculious as he’s dashing, I need to delay the 2nd swing even longer: until the boss has 2 I frames left.

The spinning slash that Zero performs in the air can also be used as a combo attack, although it only does 2 damage per hit so I only use that when there are no other options.

Lastly we have the Triple Rod. It can’t attack quite as fast as the saber, and it’s combos do a bit less damage, but it can hit certain bosses that could otherwise only be reached with spinslashes. The train boss, the hydra robot in the factory, and Anubis are all sped up substantially by using the Triple Rod’s reach. It can also be used to pogo off enemies, granting a few small time saves and a really significant skip in Stop the Hacking.


TAS Overview

The previously published TAS by Rolanmen was done on VBA, whereas mine was made with Bizhawk. Lag emulation is much more accurate in Bizhawk; I will be losing time from this lag constantly throughout the run. These losses will be more than offset by the numerous optimizations I've implemented.

Apart from various small and large improvements; I also feature two major route changes: First is performing the so called "EXP Glitch" on the intro stage boss to farm saber experience points. Second is collecting the optional weapon: Triple Rod, which allows for various time saving pogos and faster boss strats.

In order to make the most meaningful comparisons between my stages and those of the previous TAS, I've divided frames lost and saved into 4 categories:

Mission Optimization Lag Triple Rod EXP Glitch Net
Underground Lab -1 +98 0 +732 +829
Disposal Center -38 +11 0 -134 -161
Retrieve Data -22 +16 +1223 -1006 +211
Destroy Train -13 +47 -119 -196 -281
Occupy Factory -51 +8 -469 -108 -620
Rescue Colbor -54 +7 +1 0 -46
Giant Mechanilloid -89 +7 0 0 -82
Find Shuttle -12 +22 -58 0 -48
Protect Factory -313 +24 0 -142 -431
Find Hidden Base -162 +16 0 0 -146
Duel in the Desert -23 +64 0 0 +41
Stop the Hacking -47 +102 -470 0 -415
Resistance Base -21 +13 0 0 -8
Neo Arcadia Shrine -207 +18 0 0 -189
Neo Arcadia Tower -300 +47 +16 0 -237
Neo Arcadia Shrine -570 +76 -70 0 -564
Totals -1923 +576 +54 -854 -2147

You'll note that the Triple Rod appears to be a net loss. The details are covered later; in the section about Stop the Hacking. The short version is that I lose time with it on the comparisons against the VBA run, but with Bizhawk's more accurate lag emulation I believe it's worth picking up.

All that out of the way, let's dig in.

The TAS begins with a soft reset to get us into the main menu quickly. By performing this reset on this first possible frame instead of the second-to-first possible, I save my very first frame.

1 - Underground Lab

Other than minimizing lag, this stage is pretty trivial. I make a point of gunning down as many enemies as I can, but this is purely artistic. We can not gain any buster experience points until we get the saber at the end of the mission. In order to trigger that saber-giving cutscene we will want to be at low health by the time we get to the end. Numerous damage boosts are taken on the way, emphasizing enemies that do more damage on contact and are positioned such that we can get forward boosts off of them.

The Golem fight features the aforementioned EXP glitch. I don't know how it works or why, but under certain conditions while holding an extended jump slash in his face I will continuously gain experience points for numerous frames. After unlocking it, I can also do a spin slash near the end of the jump for a few bonus EXP. In total I aim for 453 experience points at the end of the fight. My overall goal is to unlock charged saber slashes in time for the Giant Mechanilloid (Mission #7.)

Early in the fight you will notice me fall directly through the golem's laser attack without taking damage. This is possible because the attack is actually made up of several small, disconnected, hitboxes. Mostly I wanted to do this because I think it's sick as heck, but it also seemed to be faster than waiting for the laser to move out of my way. On his second attack because of how my jump timing and the lag frames worked out I found it better to just wait.

The golem has another attack he can do instead, where he lasers the ceiling, causes blocks to fall, then charges towards you. Taking that pattern once instead of two low lasers might allow for faster EXP farming if not for the tremendous amounts of lag generated.

Mission Optimization Lag Triple Rod EXP Glitch Net
Underground Lab -1 +98 0 +732 +829

2 – Disposal Center

I've got a sword now but I can't carelessly hit enemies with it because doing so generates hitlag. Since I got my saber EXP from the Golem, I have no incentive to hit enemies along my path with the saber, so instead I mostly just swing it at empty air. Earning buster EXP is possible now, so I make a point of continuing to shoot things as often as I can, though the route actually has a lot of leeway on buster experience.

The rolling spike balls drop an important cyber elf after killing enough of them. It is the only cyber elf used in the run, any others that I collect are just in my path, or required to trigger the ends of missions.

Most of the frames I save on this mission come from not having to farm saber EXP, but there are also numerous small optimizations. I get the pantheon on top of the big yellow building to shoot at me a frame earlier by moving towards him when I can during the climb up. I also managed to get slightly closer to the pantheon without hitting him, causing me to be further forward upon regaining control after the damage boost. I shoot the crystal on top of the wind generator with a charged green shot, the extra width and height of the shot allows me to hit the target a frame earlier than is possible with lemons.

In the next section I get a couple extra ledge dashes, throughout his run it seems to be pretty random whether or not Rolanman will go for ledge dashes. It turns out that he also was at the mercy of lag frames, although not necessarily on the same ledges as me.

Near the end of the mission I get a very peculiar small (~3 px) zip forward by falling past the purple spike tower in just the right way. I was unable to reproduce this on other towers in the stage, I believe it depends on when the tower starts ascending relative to your movement, which is in turn determined by how far ahead of the camera you are.

Aztec Falcon fight features our first important use of buster cancelling. The ends of saber swings can be cancelled by firing a lemon, allowing you to act out of the attack earlier than would otherwise be possible. Performing a two hit combo, buster cancelling, then repeating is the preferred strategy for quickly damaging bosses. After the buster cancel there are 4 frames before we can swing the sword again, during this time we can dash around to reposition ourselves, if needed. Additionally it's possible to walk on the frames of and immediately after the saber input while still getting a standing slash. In total I can cover a pretty appreciable distance between each combo without slowing my attack rhythm.

At the end of the stage I equip the cyber elf I picked up earlier, for use later in the run. The published TAS equips the elf at the end of the next mission instead; there is no significance to the choice as far as I know.

At this point we start to have some options on mission selection. Our first choice will be Retrieve Data. Completing it unlocks the Triple Rod, which we want to have available for both of the other missions in the list.

Mission Optimization Lag Triple Rod EXP Glitch Net
Disposal Center -38 +11 0 -134 -161

3 - Retrieve Data

I get a small handful of frames saved from the climb at the start and some movement optimizations, but the bulk of my savings come from not needing to farm EXP. Previously this stage was the primary farming spot because the lightning bar enemies can be attacked infinitely without destroying them; skipping that saves me 1,006 frames on this stage.

The movement is pretty straightforward except for the final dboost, which requires very precise positioning. In order to get pushed to the left you need to hit the left side of the lightning without touching the circular central part of the enemy. I setup the positioning by barely bumping into the wall jumping out of the preceding pit; giving up a pixel or two was an acceptable sacrifice for the frames saved.

Maha’s fight is largely the same as it has been. Spin slashes are used in pairs to attack repeatedly without giving full I frames. He does have one attack that will allow him to break out of the combo unless he is interrupted immediately with a knockback. I used RNG manipulation to go most of the fight without it being a concern, and when it did come up I delayed some hits in order to get knockbacks when I needed them. This did not cost me any time because the limiting factor on how fast Maha can be damaged is how quickly you can land and start a new jump; moving the frames of damage a little within a jump had no impact.

The escape sequence has the potential to be very laggy, so I had to forego all of the ledge dashes as well as any flashy style points.

After the stage I spend 1223 frames to go visit Cerveau and pick up the Triple Rod. This is a pretty sizable amount of frame debt that the weapon owes to me; hopefully it can pay that off by the end of the run.

I need to get the Flame chip and charged saber attacks before doing the Find Shuttle mission, so that one’s going to put off for quite awhile.

Mission Optimization Lag Triple Rod EXP Glitch Net
Retrieve Data -22 +16 +1223 -1006 +211

4 - Destroy Train

For reasons unknown; being in the animation of firing a buster shot allows me to drop through the ladder 2 frames earlier than if I was just in a regular dash.

After the miniboss you’ll see me slide on the wall above the door for numerous frames, then drop down. Doing so causes me to be pushed up against that right wall while facing left. This is significant because due to some quirk of the game engine you can actually get closer to walls or other objects if you are facing away from them (probably for the same reason, you can walljump from further away if you are facing towards a wall than if you are facing away.) There aren’t many cases where I can take advantage of this because for some reason Zero doesn’t know how to moonwalk; in this situation I had time to set it up while waiting for the boss to explode. This is actually the 2nd use of that tech in the run; I also did it while waiting for the elevator to get out of my way on the trip to collect the Triple Rod.

I equip the Triple Rod in preparation for the boss fight. Overall my run will involve quite a few more pauses than the previous; switching between saber and triple rod as needed. In general it costs around 75 frames each time this is done.

The top of the train is extremely laggy so my options were limited. I would have preferred to clear the two purple enemies at the end with buster shots so I could move through unimpeded, but the resulting lag was so extraordinary that it turned out faster to just use the damage boost to get through.

Grounded Triple Rod attacks are combo moves that can be used repeatedly against the Pantheon Core. They can be buster cancelled like saber swings, but doing so is slightly slower than just waiting out the full duration of the attack. Except for the first attack after a damage boost it’s possibly to move for one frame while inputting the next attack. This is useful after being dboosted towards the boss: dashing one frame into him while still invulnerable pushes me far enough away that I don’t take contact damage after my invincibility runs out. Before the third damage boost you will see me spend some time moving away from the boss; this does not cost me any time because I could only fit so many hits in the cycle. This repositioning helps me dodge some lag.

I measured the Triple Rod strats as being 194 frames faster than the spin slashes of the previous run. This advantage would be quite a bit more if I was comparing against a non-Triple Rod run on Bizhawk; the fight can be rather laggy and jumping around spinning like a madman would not help.

Occupy Factory is favored as the next mission in the route because I plan to use the Triple Rod there extensively, and I already have it equipped from the train boss.

Mission Optimization Lag Triple Rod EXP Glitch Net
Destroy Train -13 +47 -119 -196 -281

5 - Occupy Factory

We are going to want the first Triple Rod levelup before getting to the boss of this stage. Much of that required EXP was earned in the train, the rest will be picked up from hitting stuff during this stage. The shield barrier enemies here have two hitboxes; one for themselves and one for their shield. By hitting both hitboxes simultaneously I get TWICE THE EXP for just one instance of hitlag. I do some fancy jumping off the corner to get over the 2nd shield guy; a later review of the strat determined that just spinning with a triple rod attack to hit him twice gets through several frames faster. I ended up losing all the saved time to lag later though so I kept things as they are.

The combination of needing Triple Rod EXP and wanting to not lag a million causes me to mostly avoid using the buster inside the ventilation shaft. I save several frames by using a green charged shot to hit the elevator button instead of a lemon. The Triple Rod kill against the spider on the way to that button is also a double hit: the spider and its web for 2 EXP.

After flying up the wall with the cyber elf I equipped awhile ago I climb to the boss. The astute viewer will note that I kill a spider here with the triple rod, but I already got the level up earlier in the stage. They will wonder: “Couldn’t he hit one less thing earlier, save 4 frames, and still get the levelup before the boss?” That was my original route for the stage, but it turns out that wall climb up to the boss can be extremely laggy, and the dialogue box telling me that I got a Triple Rod level was contributing to that lag. By getting the level earlier in the stage I save time overall.

The boss fight is pretty basic; I just stand underneath him and double-poke upwards. In some cases I’ll delay an attack until he’s low enough for both hits to connect. Before taking damage boosts I buster cancel out of my attack so I can jump into the hit earlier.

Shoutouts to Flame chip.

This upcoming mission select is probably the least clear cut. Rescue Colbor and Protect Factory are both viable options with some pros and cons. After this choice, the next mission is the Giant Mechanilloid; it’s essential that I have charge attacks at that point. The main advantage of Protect Factory first is that there is more saber EXP available in that mission than there is in Rescue Colbor, so I could spend less time farming on the golem with that route. Colbor first on the other hand lets me do a small pogo in that stage and I get to use charged saber and buster attacks later in Protect Factory. Overall I found the Colbor route to be a fair amount faster.

Mission Optimization Lag Triple Rod EXP Glitch Net
Occupy Factory -51 +8 -469 -108 -620

6 - Rescue Colbor

Not much to say here, I just go fast.

During the pause to equip saber I switch to attack mode B. In default controls it’s impossible to charge one weapon while using the other; that would be a problem at various points later in the run. I could do this menu on almost any of the preceding pauses, but doing it on this one had the nice bonus of dodging a lag frame on the ledge dash.

Harpuia is a bit of a finicky fight to optimize. It’s possible to knock him out of the air almost immediately after he starts flying up, but setting up to do so cuts into the amount of damage you can do per cycle. I went for maximum damage per cycle instead of knocking him out of the air quickly; this ended up being a substantial time save because I ended the fight in less cycles.

I exactly hit the amount of EXP required for charge slashes with my finishing blow of this battle. I could have ended the fight with a triple slash for 3 more EXP, but the frames that would save on the golem is less than the amount I save by being on top of the cyber elf from a dash-attack finisher.

7th mission is always defense against the Giant Mechanilloid, so no mission select to go through.

Mission Optimization Lag Triple Rod EXP Glitch Net
Rescue Colbor -54 +7 +1 0 -46

7 - Giant Mechanilloid

At the start of the fight I drop down a little and then walljump towards the mech. This delays my first charge slash but allows me to get a lot more damage from it. That extra damage is enough for me to end the fight in just two charge attacks; down from the three of the previous TAS. At the end of the second jump I opt to not finish the fight until I’ve landed so I can dash attack to where the cyber elf will drop.

Now that I have charge saber and Flame Chip I’m finally free to do Find Shuttle, so that’s what I do. Protect Factory is the only other option and I’d rather have fully charged buster for a few small time saves before I go there.

Mission Optimization Lag Triple Rod EXP Glitch Net
Giant Mechanilloid -89 +7 0 0 -82

8 - Find Shuttle

There are some broken platforms that fall when stood upon in the middle of this area. Which platforms have and have not been knocked down persists through the game, and will be relevant when we come back to this stage later for Duel in the Desert. I aim to create as many potential ledge dashes as I can by knocking down specific platforms.

The Anubis fight has a lot of potential for stylish strats; unfortunately it’s very laggy so I couldn’t do too much here. When I fight him again in the boss rush I’ll have more freedom to do cool stuff. On each cycle of the fight Anubis will drop into the sand after taking more than 12 damage; in order to get the most from each cycle I’ll poke him thrice with the Triple Rod then use the charged saber. On the first cycle I can only fit one poke before the charge or I would get hit by his weapon.

For the second and third cycle I take an intentional damage boost just before Anubis becomes vulnerable to attack. This allows me to get the three stabs and the charged attack before taking another hit. Very specific positioning is also required for that setup to work: At least pixel perfect, maybe subpixels are involved as well. On the third cycle after my final Triple Rod hit I pause and switch back to the buster; this immediately cancels me out of the attack animation and I get to end the fight faster.

There isn’t a whole lot to do on the autoscroller other than farm buster EXP and go even further beyond with style points, so that’s what I do.

From this point on mission selection has no real significance to the route. I just go through in order.

Mission Optimization Lag Triple Rod EXP Glitch Net
Find Shuttle -12 +22 -58 0 -48

9 - Protect Factory

The boss of this mission is at the very beginning of the stage. This leaves us with not much to do in terms of RNG manipulation; thankfully there is an invisible wall to the left of the start that we can shoot lemons at, and conveniently it only takes one shot to get a pretty good pattern on the boss. It does cost some time to do this, but it’s easily worth it; Phantom can wastes huge amounts of time if he gives bad patterns.

The one lemon manipulation makes him start the fight with a dash attack, optimally we want him to repeat that attack for the entire fight. To make that happen I fire a lot more lemons into the walls during the battle. Counting the time I lost setting up the manipulations, my Phantom fight was 177 frames faster than the previous publication.

Getting up and into the factory is pretty much the same as in Occupy Factory. I use the buster inside the ventilation shaft because it’s not quite as laggy and I no longer have any melee weapons that need leveling up. I use a fully charged shot to hit the elevator button; it’s even faster than a green shot.

I climb the ladder up into the main factory area because the platforms I’ll ride have already spawned and going up the walls is laggy. Overall this autoscroller is gonna be a bit dull; the lagginess of the area prevents me from doing anything too interesting.

I mentioned earlier that delaying this mission in the route allows me to save some time with charged attacks; here we will see the big one. I use a charged saber swing to preemptively hit the bomb that’s way up in the ceiling; this allows me to pick it up instantly when I climb up there, instead of having to slash it then wait for it to become active. This makes a really big difference because the faster I can get that bomb and get back the easier it is to make it back onto my moving platform. The previous TAS had to wait longer for the bomb so it needed to do an extra walljump to get back to that platform, and then wait for the lightning to get out of the way before climbing onto it. It’s tough to measure exactly how much time this saved, but it was probably on the order of 50 – 60 frames.

Rest of the stage is pretty self explanatory, just a handful of small optimizations going past some lightning bars and then a charge attack to hit the final bomb from farther away than would be possible otherwise.

Mission Optimization Lag Triple Rod EXP Glitch Net
Protect Factory -313 +24 0 -142 -431

10 - Find Hidden Base

I kill the spinning thing with the gun instead of the sword because that’s faster. It might look like I jump way higher than I need to afterwards, this is because the ground breaks apart in layers and the final one is actually pretty low and pretty late to break.

Now it’s time for more sick ladder tech. Previously it was believed that you had to wait for the 2nd bomb to go by when climbing the ladder up to the hidden base. It turns out that if I stay low enough to the ground while going past the turtles I can delay the spawning of that second bomb long enough that I can climb past it without having to wait; saving almost half a second.

Way back in Destroy Train I mentioned how it’s possible to drop through ladder platforms from farther away if you are in the buster animation, I will save quite a few frames throughout this stage using that technique. Additionally you will see me hit the locks on the prison cells and then dash attack away as the dialogue starts. I have one frame of control after breaking the lock and before that dialogue starts; I need to be in a state where I’m capable of starting a dash attack on that frame. If I was in the middle of a saber attack animation on that frame I would not be able to do the dash. Instead what I do is start a jump slash a couple frames before hitting the ground; landing takes me out of the jump attack animation but the hitbox persists for awhile. I dash forward into the lock with that hitbox and then dash attack away immediately after. On the second to last prison cell I deliberately don’t do this because doing so would scroll the camera to the right, and the prisoner would take more time to despawn off screen.

Neat new strats for Blizzack. Normally he can only be knocked back by attacks while doing certain moves, such as his icicle throw and snowball jump. I RNG manipulate for him to do the former as his first move. In addition, there is also one frame between any two of his actions where he can be knocked back regardless of his pattern. By attacking at the right rhythm I can infinitely combo him across the room. I delay the final two hits for one frame to avoid the knockback so I don’t need to move as far to get the Ice Chip afterwards. Overall this saved 18 frames on the fight.

Mission Optimization Lag Triple Rod EXP Glitch Net
Find Hidden Base -162 +16 0 0 -146

11 - Duel in Desert

IT’S TIME TO D-D-D-D-DUEL

There were barely any optimizations on this stage. I cash in on those ledge dashes I set up back in Find Shuttle, I climb the little wall at the end a bit faster, and I lose a million to lag.

On the Fefnir fight I delay my initial attack to avoid knocking him back before his first move; I found this to be a little bit faster than attacking right away. It’s also really nice because I can spend that spare time at the start of the fight shooting the wall for RNG manipulation.

Mission Optimization Lag Triple Rod EXP Glitch Net
Duel in the Desert -23 +64 0 0 +41

12 - Stop the Hacking

PogoChamp

By pogoing up onto the first submarine I skip having to go all the way to the end of the lake and then all the way back. I can also do a couple smaller pogos off the torpedoes at the top of the sub and on a pantheon before the computer room. In total, subtracting out the time I spend equipping the rod and going back to the saber, it’s about 445 frames saved.

This is the last major time save from using the Triple Rod and if we add up the numbers for how much the weapon saves / loses over the run it’s not going to look good. Including the final use that we haven’t quite got to, the Triple Rod is looking to be about one second loss based on these comparisons. However, it’s important to keep in mind that these are comparisons of my TAS vs. Rolanman’s TAS; they are not comparisons of my TAS vs. the best I could do without Triple Rod. The distinction is important especially on this stage because of how laggy the lake area is on Bizhawk. If I had to go all the way across the lake and back it would cost me a lot more than the ~550 frames Rolan spends making that trip, because I would be lagging the entire time. It’s impossible to say for sure without actually TASing out a no Triple Rod route, but I do believe that the Triple Rod is worth it on the more accurate emulation of Bizhawk. If not, at the very least it would end up being close enough that the speed entertainment tradeoff of using the Triple Rod would be justified.

As for the movement in this area through the sub skip, it’s mostly just lag avoidance, there’s not a whole lot else to it. In the computer room I use my charge attack to destroy the top and middle layers, instead of the bottom and middle, so that I never have to climb all the way up to the top; saving around half a second. On Leviathan I end the fight with a charged flame shot, this prevents me from doing buster canceled combos for the final few seconds of the fight, so I walk cancel them instead. Overall it’s marginally faster ingame time than the previous strat of jumping over her ice ring attack, but most notably it’s much less laggy. Even on VBA the previous strat lagged a lot; this is one of the few instances where I save a non negligible amount (17f) of lag related time.

Mission Optimization Lag Triple Rod EXP Glitch Net
Stop the Hacking -47 +102 -470 0 -415

13 - Resistance Base

The base is under attack; killing three pantheons and a monkey should take care of it.

For the big guy in the way at the bottom of the elevator shaft I hit him with a jump slash as I go over him; this causes him to respond by putting up his arm defensively. The changing of his hitbox size and position when he defends allows me to get over him without stopping (other than the 4 frames of hitlag.) You can skip the hitlag by firing the buster while jumping over him, but when I tried that I ended up getting a much laggier engine room. Interestingly I couldn’t get it to work for the guy on the upper level of the base, which is a shame because it would have actually saved time on him most likely. Instead I deliberately slow down while approaching him so the moving of his hitbox when he does his arm swing corresponds to my jump over him. This is slightly faster than forcing the block with a saber swing, though not as fast as him blocking a buster shot if I could get that to work.

Mission Optimization Lag Triple Rod EXP Glitch Net
Resistance Base -21 +13 0 0 -8

14 - Neo Arcadia Shrine

There are several doors that I need to wait for in this stage; I will slide on each of them to get as close as possible to it while they open. I skip the first of the large shrine buildings by doing a TAS only jump up to the top. For the later ones in the stage I will not skip them because the minibosses therein need to be fought in order to advance through the game properly.

Just going over this first building and then dropping down on the other side is one thing; I decided to go even further beyond than that. There is a floating platform a fair distance to the right from the top of this building; if it is hit with an attack it becomes active and moves over to the building and back. The intended use is so players can get onto the building after they have gone through it and collect some cyber elves up there. What I do is jump far enough out to shoot that platform from the ceiling, wait for it to move close enough to reach and then jump off of it to the elevator just in time to make the cycle. 116 frames saved.

Sword Dancer strats are a bit improved. Instead of jumping all the way over I just stand close to him, get dboosted forward and then gradually creep to the other side while attacking. I dash attack away after finishing the fight using the same technique that was applied to the locked doors in Find Hidden Base.

The segment after this will look a bit odd. I have to wait awhile for the block cycle and the area is very laggy, so I just go really slow and do whatever I can to get into position without any lag frames.

On Herculious I manage to sneak in one extra hit before taking the 2nd dboost. This allows me to immediately end the fight with a dash attack to the right after regaining control. The time save is deceptively large, 26 frames.

Mission Optimization Lag Triple Rod EXP Glitch Net
Neo Arcadia Shrine -207 +18 0 0 -189

15 - Neo Arcadia Tower

I mentioned a long time ago that I generally save fair amounts of time on vertical movement thanks to the delayed dash walljumps. These savings are quite substantial on this stage because it is almost all wall climbing.

The most significant single time save comes from a trick called the Spike Jump, with which it is possible under very specific conditions to walljump off of spike blocks. I use it three times in the climb, though by far the most notable is in the middle of the climb when I use it to catch shots fired by a pantheon and climb the spikes while invincible.

To perform I spike jump I need to just barely cut the corner of the spikes from underneath, release my jump and turn into the spikes for two frames, then do the walljump. If you continue to hold d-pad towards the spikes on the frame that you walljump you will die. This is kind of odd because you’re movement and positioning aren’t affected at all by directional inputs at the start of walljumps, but I guess something is different enough to cause problems for this specific trick.

I have two notable changes to the Rainbow Devil fight. First is that I mash out of his grab attack much faster than was previously thought possible. From what I can tell the previous belief was that only one input per frame would count towards mashing out. In reality, any number of the main buttons (A, B, L and R) will be counted, and up to 1 dpad input. So you can get 5 effective inputs every other frame and 1 input on the rest. This allows me to escape from his grab 10 frames faster.

The second change is the final implementation of the Triple Rod. While the Rainbow Devil is in his tall tornado form the Triple Rod can attack him much more frequently than the saber. After he shrinks down to his smaller form I can use it to cancel out of my saber combos just like buster canceling, and then cancel that animation back to the saber. Overall the time this saves on the fight would not be enough to justify the time spent equipping the Triple Rod, but I also have some use for it at the start of the boss rush coming up.

Possibly the most peculiar significant improvement of the TAS, I save 121 frames by just talking to Ciel and selecting the next mission from her menu instead of dashing over to the door out of the stage.

Mission Optimization Lag Triple Rod EXP Glitch Net
Neo Arcadia Tower -300 +47 +16 0 -237

16 - Neo Arcadia Core

I go to Anubis first in the boss rush because that’s what I equipped the Triple Rod for, and because the top left door is the most convenient to access from the entrance to the door room.

I wasn’t able to get the safe spot between the two zombies to work during this refight, I think there might be slight differences in how the zombies spawn, or I’m just dumb. I can’t cancel my last Triple Rod attack by switching back to the buster because I also want to equip the Ice Chip, and I can’t do that until after the finishing blow to Anubis.

Other than top left room first there’s not much significance to boss order, I just did whatever was more convenient for getting good patterns. Maha and Blizzack are basically identical to their fights from earlier in the run. Herculious is a bit different; I don’t care where I am in the room or where he dies because there is no elf to pickup after the battle this time. I manipulate for him to only dash into me once and just kill him as fast as I can. There are quite a few timesaving damage boosts in the boss rush and doing Triple Rod strats on Anubis adds a few extra, so I do pick up one large health container during this first set of bosses.

I take a different route in the passage between the two boss rush rooms. Instead of going through the two doors on the upper route I drop down. There is a bit of a wall climb at the end of the lower route, but it ends up being about 100 frames faster than the door transitions.

The idea on Phantom is the same as it was except here I have a lot more time to setup a good RNG manipulation ahead of time. I still have to fire some lemons during the fight but doing so does not cost me time because of how few I need and when. At Fefnir I found it faster to attack him right away this time instead of waiting for him to start his first attack. Honestly I’m not certain what made the difference on this; I believe it’s because there is a small hill behind him during Duel in the Desert. Knocking him back at the start of that fight would cause him to land on that hill, affecting various timings in the battle.

Leviathan is pretty neat. If she is far enough above you at the start of the fight she will start by dropping down until she is closer. By waiting a bit during her pre-battle dialogue and then lowering ourselves by going off the ledge on the left we can manipulate her into a good location. Because we start this fight so much closer than on Stop the Hacking we get to end the fight before being hit in the face with the ice ring. This strategy isn’t anything new but I do save a few frames from executing it more optimally. Most of the improvement came from falling off the ledge better. Because of how wide Zero’s hitbox is while dashing it can take awhile to actually fall off of something; if you stop dashing after you are partially over the edge you can start to fall a few frames faster. This is doubly important on this fight because it means I don’t need to wait as long before clearing the text.

Nothing too noteworthy on the final platforming sequence or on first form X. Was the original X this weak?

2nd form X is much too high to combo from the ground. Spin slash combo was used in the previous TAS but charge attacks with his ice weakness are much faster. I alternate charged saber and buster attacks and end up saving around 260 frames on the fight.

Donezo.

Mission Optimization Lag Triple Rod EXP Glitch Net
Neo Arcadia Shrine -570 +76 -70 0 -564

Ingame time: 00:16'14

Shoutouts

Hetfield90: Convinced me to start this project a couple years ago and inspired me with his sick Jurassic Park Part 2: The Chaos Continues autoscroller swag.

NrgZam: The hero we need in the never-ending battle against lag frames. Punched the lag away.

Tas Tudio: I forgive you for all the times you wiped my greenzone and fatally excepted yourself.

Credits

Several of the strategies I used were taken from or inspired by other sources; I’ll try to give as much credit as I can. Note that for a lot of the strats I don’t actually know for sure who invented them; I can only say where I first saw it.

Rolanmen1: I first noticed that dashing over ledges saves time while studying his TAS. I also first saw the EXP glitch showcased in one of his videos. I originally took the Aztec Falcon quick kill from him for use in RTA, but it’s also pretty good in TAS. Same with Maha spinslash technique. Firing lemons to drop through ladders faster is something that he seemed to do accidentally, and which I have since applied deliberately.

Computerbird / Hellagels: Their Any% TAS seems really well optimized to me at a glance, though I think the only strats I’ve taken directly from them are the Sword Dancer kill and the spike jump.

Hetfield90: First discovered and applied in RTA the double pogo (aka the Two Quick Ones Pogo) onto the Stop the Hacking sub. Previously in RTA and TAS we would simply walljump out to the fish and pogo from him there; it turns out that is a fair amount slower.

ALAKTORN: May he rest in peace. He mentioned once while working on a ZX TAS that it’s possible to infinitely dash by chaining regular and double-tap dashes. I use this in a few places to avoid lag.

Closing Thoughts / Possible Improvements

The most obvious suspect for possible improvements is lag reduction. I invested a lot of time minimizing lag but it’s so chaotic and unpredictible that there must be ways to make it even better. Vertical movement is often pretty tricky to optimize so long climbs are definite suspects. In particular the tower could likely be improved somehow; considering it is both a lot of lag and a lot of climbing. Otherwise I expect there are various small improvements here and there that I missed. It’s entirely possible that there are entirely new techniques still to be discovered. Things like the EXP gltich, spike jump and super delayed dash walljumps are all pretty bizarre glitches; who knows what else is possible?

This was my first TAS project but I think it's something I can be proud of. I put a great deal of effort into it and am satisfied with the amount of improvements I made both to the optimization and to the entertainment value of my favorite speedrun.


Mothrayas: Excellent run in all aspects. Optimization looks top-notch, and the very detailed submission text does a very good job at describing all the improvements, strategies, and choices made in the run. The run also does an excellent job at sheer stylishness; the variety in movement, madly dashing, slashing, shooting and hopping around makes the run an absolute treat to watch. It's clear that a lot of effort was spent in not only making the run as good as possible, but also making it as fun as possible to watch.

Happily accepting as an improvement to the published movie.

Fog: Processing.


Similar submissions (by title and categories where applicable):