All enemy attacks do 1 damage, except for these known exceptions:
Generally, the playable characters have regular B-button attacks which all do the same damage, and a special A-button attack which does more damage if the character is in the yellow health range.
Ground pound8
Ground pound projectile (yellow health)2
All other attacks4
Teleport with yellow health4[1]
Teleport without yellow health1[1]
All other attacks2
Lunge with yellow health8
All other attacks2
Charged laser/card with yellow health4
Uncharged laser/card with yellow health2
Charged laser/card without yellow health2
Uncharged laser/card without yellow health1
All other attacks2
Energy punch with yellow health4[2]
Energy punch without yellow health2[2]
All other attacks2
Energy ball with yellow health4
Energy ball without yellow health2
Small shots1
[1]The charge meter does not affect the damage, it only affects the distance traveled with the teleport. The teleport can hit twice if the invulnerability time of the enemy is short enough.
[2]The energy punch only hits biological enemies. The energy punch can hit twice if the invulnerability time of the enemy is short enough. The energy punch removes death explosions, including ones from some end-level bosses, which can hasten level fade-out.

Horizontal movement

All values in pixels:subpixels. A pixel consists of 256 subpixels.
Beast Max speed Acceleration Deceleration
walking 3:132 0:80 instant
jumping 2:226 instant 0:64
roll move 6:0 instant 0
Nightcrawler Max speed Acceleration Deceleration
walking 4:20 0:80 instant
jumping 2:156 0:128 0:64
somersault 6:0 1:0 instant
forward kick 8:252 instant 0
diagonal kick 7:48 0:150 N/A
orthogonal teleport 10:0 instant 0
diagonal teleport 7:0 instant 0
Wolverine Max speed Acceleration Deceleration
walking 4:0 0:80 instant
jumping 3:89 instant 0:64
somersault 2:245 0:128 instant
lunge from ground 3:150 instant 0
lunge from air 6:68 instant 0
Gambit Max speed Acceleration Deceleration
walking 3:190 0:80 instant
jumping 2:206 instant 0:64
forward kick 8:0 instant 0
Psylocke Max speed Acceleration Deceleration
walking 3:140 0:80 instant
jumping 2:66 0:128 0:64
slide 7:96 instant 0:59[3]
forward punch 7:8 instant 0
Cyclops Max speed Acceleration Deceleration
walking 3:110 0:80 instant
jumping 2:206 instant 0:64
forward kick 5:20 instant 0
Magneto Max speed Acceleration Deceleration
walking 2:194 0:80 instant
jumping 2:138 0:200 instant
Max speed is self-explanatory.
Acceleration is how quickly you reach the max speed when pressing a direction. Instant means it reaches the max speed instantly.
Deceleration is how quickly the speed decreases when not pressing a direction. Instant means the speed is set to 0 instantly. 0 means that the move continues even when releasing a direction. N/A means the move ends when a direction isn't pressed.
[3] For Psylocke's slide, the deceleration is 0:59 if you continue holding the jump button. If you let go of it, the deceleration will be higher, up to 0:114 if you only hold it for one frame.
For all characters, while jumping, the speed is set to 0 if it is lower than 1:0 and a direction isn't pressed.

Vertical movement


Character Jump initial speed Gravity Max downspeed
Beast 8:252 0:81 16:0
Nightcrawler 8:224 0:81 18:0
Psylocke 8:184 0:81 16:0
Wolverine 7:180 0:70 16:0
Gambit 7:159 0:70 16:0
Cyclops 7:156 0:70 16:0
Magneto 6:196 0:35 16:0

Special attacks

Beast Max speed Acceleration
Stomp 8:96 0:180
Nightcrawler Max speed Acceleration
Stomp 8:96 0:180
Diagonal kick 8:96 0:180
Quick drop 18:0 1:94
Wolverine Max speed Acceleration
Downwards attack 8:96 0:180
Quick drop 16:0 1:144
Magneto can hold indefinitely in the air by pressing A. His small shots slow his descent in some unknown way.
The extra upwards boost from Nightcrawler's and Wolverine's somersaults are currently poorly understood. It seems to vary by current upward speed.

Level maps

See them at VGMaps.


Keeping jumpkick speed with Nightcrawler

Nightcrawler has a maximum of one down/diagonal/forward kick per jump. After the forward kick ends, the speed gradually (0:64 per frame) decreases back to 0, quicker if you hold forward. If you press the kick button again after the jumpkick ends, the speed is locked at its current value.

Keeping lunge speed with Wolverine

Wolverine does not have any limit to the number of attacks he can perform per jump. When a lunge ends, the speed gradually (0:64 per frame) decreases back to 0, quicker if you hold forward. Upwards, downwards or forwards attack can be used to lock the speed, depending on the situation. Downwards attack also increases downspeed. Somersault can also be used, which delays landing.

Dropping quickly

With Nightcrawler: If the kick button is pressed on the same frame as the kick ends, the gravity is increased about four times.
With Wolverine: If the A-attack button is pressed on the frame after you stop holding the jump button, the gravity is increased about six times. This only works on the first 15 frames of the jump.
This can be used to drop quickly, or to adjust the length of a jump.

Attacking Apocalypse in the background with Magneto

Apocalypse normally hides during his boss fight, and can't be damaged. However, Magneto is able to damage him regardless with his A-attack, if he has yellow health. This obviously speeds up the fight massively. It also messes up the spike ball patterns so that several of them may be active simultaneously.

Ending level early

If you end up inside a wall, the game checks for collision with the end level area before ejecting the character. Known possible uses are the first level and the second sentinel factory level. (The application of this trick in the second sentinel factory level was found by the speedrunner rggibson.)

Fall through thin floors

Related to the trick above, if you fall at a high speed and an animation (e.g. a kick) 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 the kick and the falling animation. You need a high downward speed to perform this, around 16-18 pixels/frame. Possible in the jungle levels and Sentinel levels.
Known to be possible at least with Nightcrawler, Cyclops and Psylocke.

Fall through thin floors near trees

Similar to above, but you do not need a high downwards speed. Coming out of a regular jumpkick is enough to make this happen. Possible in the jungle levels.

Quick damage recovery

Normally there is a small recoil when taking damage. By being airborne, close to the ground and in an upkick on the same frame as taking damage, you regain control of Nightcrawler directly.

Temporary invulnerability

After scoring a hit on an enemy, you are invulnerable for a few frames. Besides being generally useful when kicking/slashing through enemies, this can be used to pass through the spiked pillars in the pyramid level, by attacking the barriers that drop down (which counts as enemies).


By pressing left every other frame, the character moves at walking speed to the left, locked in one frame of animation. It can be used for example to duck-slide along the ground, or for entertainment.

Hang in the air after teleport

With Nightcrawler: by doing an aerial attack, then teleporting before you land, and holding B when you appear, you can infinitely float in the air. Enemies constantly receive 2 damage if they touch you while you are floating. Nightcrawler is invincible until B is released.
(Note that neither of the teleport attacks do 2 damage - the damage is somehow from the aerial attack.)

Corner boosts

When jumping off a ledge or hitting your head against a corner, your position can be shifted several pixels.

Pogo storage

When performing an attack which would make you bounce if it connected, and taking damage before the move ends or connects with an enemy, the state "next hit causes bouce" or "pogo" is not reset properly. This can be used to bounce with attacks that normally wouldn't.
Attacks with the pogo property include Nighcrawler's diagonal kick and stomp, and Beast's stomp. The state persists until you finish one of these attacks, or until you make any attack hitting an enemy.
A known application is teleporting into the boulders on the pyramid stage, to bounce up to the next floor, and the inverted character glitch, below.
Note that holding jump (C) during a pogo increases pogo height, as if you had jumped normally. This includes stored pogos.

Inverted character glitch / Cyglitch

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 from climbing upside-down on the wall.
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 the speedrunner Cypherin, hence the name "Cyglitch".

Skipping Phalanx 1 (yellow base) boss

While being in a partial Cyglitch state, where you have detached from the wall right-side up with a stored pogo so you cannot land, it is possible to slide along the top floor, past (under?) the boss battle trigger in Phalanx 1. This level conveniently has a left-over end-level trigger to the left of the boss.

Lua script

A Lua script tracking player 1's position (read), speed (read) and acceleration (calculated) is available from Pastebin.
Enemy health is allocated dynamically and no fixed RAM address can be given because of this. It is easiest to search for decreasing values. Use the damage tables above to know the difference to look for.

GameResources/Genesis/XMen2 last edited by Truncated on 10/15/2021 8:09 PM
Page History Latest diff List referrers View Source