Intro
"X-Men 2: Clone Wars" is an action platformer with lots of movement tricks and awful music.
Goals:
- As fast as possible
- Takes damage to save time
- Uses various amounts of players (1 and 2)
- Emulator Used: BizHawk 2.2-2.4
We also presented this movie on Twitch and gave some commentary on the tricks used and changes compared to the previous version. Check it out here:
Note: There are some differences between the premiere on Twitch and the TAS that's being presented here, with certain glitches/routes being different.
Comparison table:
Level Name | Improvement | Comment |
---|
Snow / Siberia | 33 |
Sentinel 1 / Sentinel Fortress 1 | 74 |
Sentinel 2 / Sentinel Fortress 2 | 217 | Door despawn trick
|
Sentinel Boss / Sentinel Core | 0 |
Sentinel Escape / Sentinel Fortress 3 | 1582 | Shortcut through floor
|
Space 1 / Avalon 1 | 7 |
Space 2 / Avalon 2 | 47 |
Falling level / Avalon 3 | 38 |
Exodus | 0 |
Magneto | 0 |
Pyramid 1 / Fortress 1 | 1137 | Skip floors
|
Pyramid 2 / Fortress 2 | 2267 | Inverted character glitch
|
Apocalypse | 0 |
Jungle 1 / Savage 1 | 58 |
Jungle 2 / Savage 2 | 17 |
Purple base 1 / Savage 3 | 245 | New shortcut
|
Purple base 2 / Savage 4 | 103 | Slightly changed route
|
Transformer Boss / Master Brain | 0 |
Yellow Base / Phalanx 1 | 116 | Slightly changed route
|
Elevator / Phalanx 2 | 0 |
Blue Base / Phalanx 3 | 44 |
Green Base / Phalanx 4 | 4098 | Inverted character glitch
|
(movie finish) | 70 |
Boss Rush / Clone Factory | -3 |
Total: | 10150 |
New tricks
New floor skip in Sentinel escape
If you fall at a high speed and an animation ends at the same frame as you hit the floor, you can go through it. This is because of the different shapes of the hitboxes of various animation states. You need a high downward speed to perform this, around 16-18 pixels/frame. This was known when making the previous movie.
A new application of this trick was found in Sentinel escape (after beating the boss) which skips a large part of the level. It was found by Orkan.
Skipping levels when going up the pyramid
The first method to do this was again discovered by Orkan, but it wasn’t known how or why it worked. After some analysis, Truncated concluded that it relies on taking damage while doing an attack which would cause you to bounce off an enemy if it connected. This state, that the next attack causes bounce, or “pogo”, is then not properly reset. After that you can teleport into a falling rock, and be bounced upwards enough to reach the next floor.
This method was obsoleted in the TAS due to a better method, which “only” requires stomping a falling rock, and immediately side-kicking and then double-jumping and then up-kicking, to shift your hitbox above the next floor. It was discovered by A-Frame.
The older “pogo” method turned out to be significant in the TAS anyway, because of the next new trick.
”Cyglitch” - inverted character, going out of bounds
Using the stored “pogo” state above, and then clinging to a wall facing downwards, and landing a punch on an enemy, detaches you from the wall due to the bounce, but retains some very unusual properties.
Your hitbox is projected downwards from the character’s base point, instead of upwards as is usual. Your sprite is flipped upside down, and you cannot land on the ground any more. This state persists until the level ends or until you cling to another wall.
From there, you need to immediately cling to the ceiling. This fixes the landing problem, but keeps the inverted sprite and hitbox. This makes it very easy to sink through the floor, since your hitbox now extends downwards, and is mostly on the side of the storey below you.
If you take damage, your hitbox is immediately flipped upwards again, effectively shifting you upwards a full character height.
This glitch was found by accident by Cypherin, hence the name “Cyglitch”. Applications were then found in different levels by A-Frame and BaconOmelette.
Due to several levels being unchanged from the previous TAS, some level comments have been copied from the previous submission.
Start Level / Siberia
On console, the game gives you a random character immediately on console power-on. This is based on the electron beam position on the TV. In an emulator the electron beam position is deterministic, but it’s possible to manipulate the character selection by pressing opposite directions on the controller. The game spends extra clock cycles cleaning up this input, which is enough to move the electron beam into giving the most favorable character (Nightcrawler).
This trick was in the previous movie as well, but the button combination needed after converting the movie to BizHawk had to be changed due to emulator differences, which was done by EZGames69.
When the level ends, the regular SEGA logo and game intro is shown. After this you get to select characters between most levels.
Sentinel Factory 1
In this level, you need to destroy the consoles throughout the level, so that electrical shocks are sent into the security doors. Some consoles can be reached through the ceiling with Nightcrawler’s upkick.
Sentinel Factory 2
When you destroy a console, the spark of electricity that opens the door only comes out if you have it's spawn point on screen. The spark also comes out on a set cycle, meaning if you missed your chance you will have to wait for a few seconds before another spark comes to open the door. We don’t have to worry about that too much though.
By scrolling the door off screen while it's being opened, the door will permanently be left open. This allows us to go through without worrying about spark cycles all together. We end up doing this for one door later on in the level. This glitch was originally discovered by A-Frame.
The level ends early by touching the end level trigger through the floor. The jumpkick sprite is wide and low. The standing sprite is high and narrow. When switching from the first to the second close to the floor, it’s possible to touch the goal area, below the floor.
Sentinel Boss
Not that much to say about this boss. You destroy the plates circling the core, the boss shoots stuff at you. The time between hits is long, we can afford to goof around.
Sentinel Factory 3
This is just Factory 2 backwards, without enemies. You do not get to choose a new character before this stage starts.
Right at the start, there is a new skip found by Orkan. Going through the floor skips most of the stage.
Space Base 1 / Avalon 1
We do a regular jumpkick at the beginning of the level instead of a divekick as it allowed us to have more horizontal speed, letting us traverse more distance upon landing to do the next jumpick. The rest of the stage was left relatively unchanged aside from some optimal corner cutting at the end. Otherwise, Very few changes were made from the previous TAS.
Space Base 2 / Avalon 2
If you do a double jump after the end of a jumpkick, you’ll be able to reduce your hitbox while also retaining all of your horizontal speed. This was used to help with optimizing movement when climbing up ledges in this stage.
The guys with sticks damage you if you touch them, and are invulnerable while holding their stick. Since they don’t throw it until they have been in view for a good while, they need to be avoided.
There is a nice shortcut when going up, by jumping off the wall and teleporting diagonally it is possible to reach the side of a hole you are supposed to jump over later.
The boss is Cortez. We use mostly yellow-health teleports (4 damage) to kill him quickly.
Falling Level / Avalon 3
You fall painfully slowly in this level, to give the player a chance to steer away from the electric fields. To hell with that, full stomp speed towards the bottom!
The inverted character glitch would be very good here, if it could be triggered. But none of the walls are climbable, so it can’t.
Exodus
This boss is (again) unimproved over the previous movie.
Wolverine is the optimal character in place of Beast here, because 1) he can do 8 damage in the air, and 2) the invulnerability period of the boss is very long.
Magneto
This boss is unimproved over the previous movie.
The first part is just a run to the right and break some blocks. Then there are some sturdier blocks which you have to get Magneto to break (funny, since his regular attack only does 1 damage). At the end, you have to hit Magneto from the left side so he ends up in the swirling energy field.
After this level, you can play as Magneto. Unfortunately he suffers from playable boss syndrome, and therefore blows. He is slow and his attacks are weak. He can cheese a lot of the bosses though, by flying and shooting.
Pyramid Climb / Fortress 1
The first floor is unchanged from the previous TAS, but then things start happening. Using the boulder stomp trick by A-Frame, we quickly skip the next two floors, cutting out a third of the level.
Inside Pyramid / Fortress 2
This is a pretty laggy level, with lots of enemies.
The spinning spiked columns do 3 damage, unlike basically everything else in the game, which does 1. By hitting buttons strewn about, you can make the columns reverse their direction. That, or you can just teleport through them.
Here, the inverted character glitch is used for the first time. This makes us fall through the next two floors, and gets us straight to the exit.
Apocalypse
This boss fight is unchanged from the previous version.
The boss works like this:
Apocalypse drops a pattern of spikeballs, which go three laps. When all balls are destroyed, the next pattern starts. Some of the patterns contain explosive balls. After destroying three of these, Apocalypse appears and fights you for a while.
The main way to speed up the fight is to take damage from the spikeballs, so that the pattern ends sooner. You need to have Wolverine in yellow health when Apocalypse appears, or you will just do 2 damage per hit instead of 8. It’s important to take damage from the right spikeballs, to cut down on the longest patterns.
Apocalypse has 60 HP and is invincible until he stops in the middle to fight you. He groans when hit otherwise, but does not actually take any damage. This took a while to figure out.
It is possible to finish this level about 750 frames faster by using two characters, and using the one who isn’t Wolverine as a meatshield to detonate all the balls quickly. Unfortunately, even if the second player is killed off before the stage ends, the game is then stuck in two-player mode and the frames are quickly lost in the following stages.
Jungle 1 / Savage 1
This and the next level has lots of thin floors which are supposed to be impassable, but can be broken through with enough speed and changing your hitbox as you touch them.
In order to clip through floors, you must have a subpixel value greater than 200 and a vertical speed of around 18 pixels per frame. With this knowledge, we managed to clip through another floor and thus cut down on unnecessary movement.
Jungle 2 / Savage 2
There is a falling glitch that happens mid level. This is just because of our hitbox changing very close to the ground. So the game forces us to the bottom.
We manage to save some time from optimizing movement at the beginning of the stage, but unfortunately the spike plant near the middle of the stage operates on a cycle which negated most of these improvements. So we still had to wait before we could jumpkick and skip a floor. Luckily, we were still able to save time with better timing of the jumpkicks towards the later part of the level.
Purple Base 1 / Savage 3
This and the following stage have green slime which slowly fills the level from the bottom. You wouldn’t know it from watching this TAS. You need to navigate the platforms and move upwards to a door while crazy aliens fire at you.
The door at the end has blocks that need to be destroyed before the level ends. The fastest way to attack when there is no invulnerability time is rapid diagonal kicks.
We teleport to a higher platform near the middle of the stage to a higher platform in order to cut down on backtracking from the left side of the stage to the right. Otherwise, most of the time was saved from tighter movement.
Purple Base 2 / Savage 4
This level has a new trick at the beginning. Previously we had to use a slow teleport at the beginning to skip a floor, but Sonikkustar managed to find a way to do it with a double jump instead.
There is also a slight route change at the end, going a shorter path right instead of left. Doing a jump kick through a small gap makes it possible to take this path. Finally something Truncated found!
This boss fight is unchanged from the previous TAS.
Beast to the rescue! The boss has short invulnerability between hits and is on the ground, which fits Beast and his ground-pound move very well.
We take damage here for two reasons: if you have less than yellow health, the high-damage ground-pound move is slightly faster, and if you pick up the leftover health after the fight, there is less lag when the boss explodes.
The boss’ final form is tricky to manipulate and doesn’t always go where we think it should. It also has a death animation which doesn’t start until the current action is complete, so killing it sooner does not necessarily mean an improvement.
The explosions cause lots of lag and it’s best to keep away from the boss during this time for that reason.
Yellow Base / Phalanx 1
Aside from tighter optimization with better climbing and jumpkicking, we managed to skip a switch normally needed to lower a platform that allows us to progress through the level. Your hitbox is still active when you teleport. So by teleporting at the right position, we’re able to teleport up to the higher platform by having our hitbox pushed by the corner while teleporting.
The boss has 50 HP, and a very short invulnerability time (20 frames). For this reason, the teleport hits twice if done right. The boss continues its current action until it isn’t hit on the first frame possible, so it’s possible to make it walk across the room without transforming. It’s also possible to keep hitting it after it has reached 0 HP, which the previous version did. It only dies after you stop hitting it on the first frame possible.
We use a strategy of upkick (2 HP) and doublehit teleport (2x 4HP) for 10 damage every cycle. The boss needs to be kept in hitstun. If there is too much delay between hits, the boss goes invulnerable and teleports to the right side of the screen.
After killing the boss, the level fades out directly if you go outside of the screen to the left, without waiting for the boss to finish exploding. Pretty weird. We figure it is a leftover from an earlier version of the level. Saves about two seconds.
Elevator / Phalanx 2
This level is unimproved over the previous version, but not for a lack of trying. A big thanks to feos who helped analyze how the boss works. Long story short, it is not possible to affect the timer which activates the boss, and it’s not possible to attack the boss before it activates to end the level early, in spite of the boss spawning directly when the stage starts. The boss does not take damage before it activates, even if you manage to land an attack inside its hitbox.
Another lead came from BaconOmelette. The same level end routine is used when you die and when you exit the stage normally. The only check it does to figure out if it should send you to the next level or keep you on the current level, is if health is > 0. So in theory, it should be possible to pick up health after the death animation starts, and get sent to the next level. There are enemies in this stage which spawn health with a small delay after being hit, enough to kill one, and then take lethal damage by another enemy in the location the health will spawn.
In practice, this doesn’t work, because the game disables health pickup when health is 0. Perhaps they were aware of this possible glitch.
In conclusion, this is still easily the most boring level in the game, with the most awful “music”, if you could call it that. Feel free to fast-forward through it.
Blue Base / Phalanx 3
This is one of the laggiest levels in the game.
No notable improvements aside from general optimization. It is possible to trigger the out of bounds glitch, but we could not find any use for it which saved time.
Green Base / Phalanx 4
This level has the second use of the inverted character glitch. Falling through the floor means you can reach and touch the end trigger of the level much sooner. This skips the rest of the level, including several more slow falling sections. This is the most improved level, saving more than a full minute.
Bug Boss + Clones / Clone Factory
Time for some two-player madness!
The big bug can be killed in one round (three hits) with Wolverine - it has 24 HP and every A-slash does 8 damage. Since the rounds are very long, this saves lots of time. A similar strategy with one player can kill the boss in one round. The strategy is performable in real time, but usually means you take damage after the first A-slash.
The bug boss behaves slightly different when there are two players. The wall is slightly further to the left, which means Wolverine can duck under the last attack. Also, the player’s temporary invulnerability after scoring a hit is longer, which means that we don’t take damage despite ending up inside it. This means we can attack sooner, and the boss fight is about 100 frames faster as a result.
The game runs at half framerate with two players. This is compensated by the players moving twice as long every other frame, so the action continues at the same pace. This actually means the game is MORE lag-tolerant when there are two players, since it already updates every other frame. However, the input precision is halved. For some reason, the running scene is twice as long if you are two players. Because of this, we kill off Beast.
The clones have 32 HP each and retaliate with regular attacks when they get hit. Psylocke and Gambit have especially long range, and can hit you even if you are behind them. After about half their health is gone, they start to turn into formations of yellow balls for special attacks, and are then invincible. For this reason the two last hits need to come in quick succession.
The clones also have a rather long death/explosion animation, and normally the screen scrolling isn’t unlocked until it is complete. If you scroll the dying boss far enough outside the screen however, the dying boss object is removed and the screen scrolling is unlocked directly. Only Beast and Psylocke have boss rooms wide enough for this.
Sonikkustar: Truth be told, I don’t really harbour many feelings for the previous version of this TAS. I don’t have nostalgia for X-Men 2 since I never played it as a kid, The TAS itself while fast wasn’t really something that was noteworthy or unique from other TASes at the time, and personally speaking I was getting rather sick of this game when we were finishing the previous TAS because of all the invisible lag that we had to deal with. So the thought of revisiting this TAS didn’t really fill me with much enthusiasm.
With that being said, X-Men 2 has gotten a significant amount of attention with the discovery of multiple different glitches that have cut down on a majority of these stages. Sentinel Factory 3, Fortress 1, Fortress 2 (the Pyramid level), and Phalanx 4 were especially shortened. These are levels that are usually rather lengthy, so to be able to save lots of time on them is certainly a nice treat. This along with the sea of new runners coming in is what finally motivated me to get working on a new TAS. One message to Truncated later, and the dream team was back together for one more romp!
I think I’m actually really happy with how this turned out. TAStudio was definitely a neat little piece of software that drastically cut down on the time needed for optimization. Aside from that, the movie has been optimized to a level that I never thought was even possible. The new skips have drastically helped with the overall pacing of the run with the Elevator really being the only “long” level in the run (It’s an autoscroller, so I guess it makes sense.).
This run is not only a testament to how much TAS tools have progressed over the years but also the fact that a community of runners now surround the game, some of who have helped advance this run to exciting new heights. We are both very happy with the end product and hope you enjoy our work!
One more thing! Be sure to be on the lookout for SGDQ as A-Frame will be showing off X-Men 2 on Thursday, July 8 at around 10:50 AM EST. It’s gonna be awesome!
Truncated: Wow, was it really 9 years ago we made the previous version?
For all the effort I put into finding new tricks, I only found one thing: the new route in Purple Base 2. :( All other input from me is stuff that remains from the previous movie.
We would like to thank:
- feos for helping out with scripting and figuring out the elevator boss timer
- Orkan, A-Frame, BaconOmelette and Cypherin for their contributions to tricks and knowledge on this game
- EZGames69 for attempting to resync the old movie on BizHawk and finding a button combination to get Nightcrawler at the start
Memory: Oh heck yeah, claiming for judgment.
Memory: Optimization is great.
X-Men 2 was a TAS I already really liked and this one improves on it further. In addition to the fast movement speed, there are now a bunch of cool glitches. The audience really liked it as well.