Street Fighter Alpha Hitboxes

Today we’ll discuss some selected hitboxes from the Street Fighter Alpha series. To see these in action, follow the same procedure as last time, only instead of the SF2 script, download and run the CPS-2 script.

sfa-tatsu

sfa3-tatsu

SFA1 Hurricane Kicks hit both in front and behind, as they did in SF2. In SFA2, the air Tatsus of the Shotos lost the ability to hit behind, and by SFA3 all Hurricane Kicks (Shotos, Guy and Sakura) could only hit on the front swings.


sfa2-soulsparks

Throughout the series, Rose’s Soul Spark is the only projectile to have a pushbox and causes pushback before it can even connect. The first active frame comes after the last pushing frame. The fierce version has the most severe pushback, as you can tell from the length of the scarf. This SFA2 shot shows P1’s jab Soul Spark on its first active frame opposite P2’s fierce Soul Spark on its last startup frame.


sfa3-teleport

The teleport moves of Dhalsim, Bison, and Akuma are instantly safe, except for SFA3 Akuma who can be hit in the head until he starts moving.


sfa2-yogashock

Dhalsim’s Yoga Shock (B + hold LP) is a charged up version of his jab that has more favorable boxes and hits as an overhead. In SFA2, the jab won’t even hit crouching opponents despite the animation.


Don’t ignore those green boxes. They help you judge how suitable a move is as a crossup. The farther the attack boxes extend from the bottom or back the pushbox, the better it is for crossing up your opponent. Some jumping normals have multiple attack phases that make them good as both crossup and frontal attacks.

sfa3-crossup1

The two phases of Sakura’s j.MK and Karin’s j.MK.

sfa3-crossup2

Cody’s j.MK (first attack phase) is crossupable but harder to connect because his pushbox extends farther below it. The second phase of Gen’s KKK stance j.MK is so crossuppy that it pushes the opponent away instead of towards.


sfa3-tigerjaguar

In SFA3, Sagat’s Tiger Uppercut (all versions) and Adon’s Rising Jaguar (LK only) are invincible until after the first active frame, which gives them priority over moves that don’t have invincibility. Likewise with roundhouse Flash Kicks, roundhouse Cannon Spikes, non-jab Shoto uppercuts and all Tenshou Kyaku versions.


sfa3-birdierog

Birdie’s Bull Horn and Balrog’s Turn Punch can go through fireballs.

sfa3-knucklelariat

So can Cammy’s Spin Knuckle and Zangief’s Lariat. PPP version is hittable by low attacks at all times, while KKK version is invicible to low attacks until after the first active frame.

sfa3-chun

Chun Li’s Spinning Bird Kick and Senen Shuu can also pass through projectiles. SBK (ground version only) additionally gets a few frames of complete invincibility.


sfa3-headbutt

Honda’s Headbutt can squeeze under high Tiger Shots, but only the fierce Headbutt. The others have a taller blue box.

sfa2-sakhadouken.png

Likewise, Sakura’s Hadouken won’t collide with high Tiger Shots, but only the weakest Hadouken.

sfa2-slide

Sodom has abnormally low hitboxes on his crouching roundhouse, low enough to get under low Tiger Shots. It’s shown in SFA2 here but it holds true through the whole series. None of the other slide attacks (Guy, Rose, Dhalsim, Rolento, R.Mika or Vega) can do this, not even Guy’s QCF + MK,K command slide, which appears lower to the ground. (Thanks to error1 for pointing this and the previous fact out.)


sfz2a-kouryuken

Dan’s Kouryuken doesn’t seem so bad until you figure out that it doesn’t get any invulnerability. That is, unless he flashes white at the startup. It’s long been known that from SFA2 onward, Dan’s 23rd attack of the round, and every 15th move thereafter, is a potential flashing Kouryuken. (SFA1 Kouryuken is just like the other Shoto uppercuts.)


sfa-sodom

Crouching Sodom, hidden hitbox. When SFA1 Sodom is hit while crouching, his head and midsection boxes shift way forward. This allows combos such as this. Ironically, only the reel from light attacks causes the exaggerated effect. In this shot, P1 Sodom got hit by c.MP while P2 Sodom only ate a c.LP.


sfa3-jakouha

Gen landed anti-air HK > HK in KKK stance and is about to follow up with lvl-3 Jakouha, despite the fact that Sakura is resetting and has no vulnerability box. Buttermaker explains: “It grabs the pushbox.” In contrast, Rose’s Soul Throw and the anti-air supers of Zangief and Dhalsim can only connect before the opponent reaches the peak of the arc after being hit out of the air. SFA3 Gen is special.


sfa3-reversal1.png

sfa3-reversal2.png

The vulnerability of Cody’s Bad Spray and Sodom’s Tengu Walking (b,db,d + K version) depends on when the move is input. If the input occurs while vulnerable (before the peak of reset arc, during float, or after an air block) then they are vulnerable during execution. But if you input the move after the peak of the reset arc they retain the reset invulnerability.

In fact, inputting these moves before reset causes the reset to not become invulnerable at all. This also applies to Dhalsim’s Yoga Escape but only until he reaches ground level, since the move itself is always invulnerable. (Thanks to Buttermaker for pointing this out.)


sfa2-kikou

This is the result of a glitch that Keiko showed in a video. When two SFA2 Chun-Lis trade Kikoushos, the vulnerability boxes of the projectiles, which are responsible for negating other projectiles, are mistakenly left on screen invisibly. This leaves an impassable, unbreakable barrier to Kikoukens. If someone does another super, the effect is reset.


The SFA series introduced taunts. Taunts can be canceled into like other special moves, and a few can actually hit, although they all have small hitboxes, do little damage, and have horrible frame data. The tinyness of the attack boxes isn’t really a factor in their uselessness. It’s more of an inside joke from the developers. The first of the damaging taunts was Chun’s in SFA1 and by the end of the series Birdie, Sodom, Sakura, Rolento, Akuma, and Dan had them.

sfa2-akumarolento

sfz2al-akumarolento

Between SFA2 and SFZ2A, Rolento’s grenade went from dud to (barely) live and Akuma’s stomp gained flames. A special taunt win icon (a reference to an old Capcom game) was also introduced for SFZ2A. Before that you would only get the regular “V” for KOing with a taunt, and in SFA3 you get the special move “S” icon.

sfa3-dan

Dan has always had multiple taunts which he can do infinitely, but it wasn’t until SFA3 (X-ism only) that they could hit. The hit area is limited to the single pixel on his glove. I had to change the code of the script to show one-pixel boxes. SFA2 Sakura’s taunt also has a one-pixel hit area.


sfz2al-angryscar

Sagat’s Angry Scar taunt costs meter and makes his next uppercut do more damage. It first appeared in SFZ2A, where it gives a considerable amount of invincibility. Ryu also gained the red Hadouken in SFZ2A. (Then he forgot about it, mostly, when World Warrior came around.)


sfa3-sodom1

sfa3-sodom2

X-ism Sodom wields swords instead of daggers as a throwback to his Final Fight appearance. Despite appearances, both have the same hitboxes. These shots compare jumping fierce and roundhouse Daikyou Burning.


sfa3-claw1

sfa3-claw2

sfa3-claw3

However, a declawed Vega has shorter attack range but also smaller vulnerability. These shots compare standing fierce, Flying Barcelona Attack, and Sky High Claw (jab version with claw and fierce version without). More like Sky High Face Bash?


sfa-dramatic

The script can show the hitboxes of more than two characters at once. SFA1 Ryu demonstrates his lvl-1 super Hurricane Kick, looking enviously at Ken’s ridiculous lvl-1 Shinryuken, and opposite a briefly dizzied M.Bison in SFA1 Dramatic Battle.

sfz2al-dramatic

Charlie’s lvl-3 Somersault Justice and Sakura’s lvl-3 Haru Ichiban beating up on Shin Akuma in SFZ2A Dramatic Battle.

sfa3-dramatic

A-ism Bison’s lvl-3 Psycho Crusher on its first vulnerable frame opposite CPU Bison’s Super Duper Psycho Crusher, which is invincible the whole way through. In order for this matchup to happen it had to be in Dramatic Battle mode. CPU Cammy had the misfortune of being the bait.


The first of these hitbox scripts was created for Vampire Savior by felineki, for research into a Mugen conversion. mz translated it to Lua for use with MAME-rr and created similar scripts for SFA3 and SFA2. I had enough of a clue by then to figure out how to modularize them and merged them into a single CPS-2 script.

Using a Lua feature added by mz, MAME can autosense what game was playing and load the correct module. At that point I focused on adding modules for new games. Thanks to feedback from Buttermaker, Xenozip and error1, I also made improvements such as invulnerability checks and the blank screen mode, and fixed camera scroll issues.

The first SFA game is the only non-SF2 game encountered so far that uses one byte instead of two for the box parameters. Maybe this contributed to the decision not to include Dhalsim: his long range attacks would have required a special routine as they did in SF2. As with the SF2 games, SFA1 uses pointers for both the animation frame and the hitbox tables.

SFA3 was relatively easy because it doesn’t use pointers for anything but attack box animation frames. The most confusion came from SFA2 and SFZ2A, which use pointers for the hitbox tables of the characters, but not projectiles. Maybe the developers thought there would be enough space in RAM for only the projectile data. In any case, they eventually figured out how to dispense with the pointers by the later life of the CPS-2.

Now, please enjoy some of Xenozip’s videos:

This entry was posted in Articles, Technical. Bookmark the permalink.

17 Responses to Street Fighter Alpha Hitboxes

  1. Moony says:

    I’d love it if you did third strike hitboxes. If you need some help with material… Elena, Chun Li, and Oro have unusually low crouches that dodge some moves entirely, like many standing punches, Q’s dash punches, and Urien’s EX projectile (but not his normal one!). Oro’s dash will actually go lower than his crouch, and with good timing he can dash in under Q dash punches, remy high sonicbooms (easy), and even hadoukens (difficult). Oro will also always fall out of the Ryu combo close fierce cancelled to short joudan. I’d also like it if you touched on the invincibility, or rather lack thereof, in the SF3 engine, one of the reasons it’s so rushdown-oriented.

    • Numsigmernen says:

      I just checked mame-rr’s page, and there’s a Third Strike script there. I guess he’ll eventually write another article about it too.

    • Moony says:

      Oro’s three worst matches are the people who crouch under the hitbox of his best poke, far forward. They are Chun Li (the worst match-up against the most popular character, that’s why no one plays oro in tourneys. He’d be high tier otherwise), Elena (not a problem match for most of the cast but she destroys the low tiers with her hitbox and falling speed), and Oro himself (two oros fighting is like two lefties fencing. Of course it’s fair but he counters himself incredibly well). Chun Li and Elena can do their crouching forward or strong respectively into super on reaction to a whiffed poke and the hitbox doesn’t rise, unlike oro who to my knowledge is helpless to do anything because all his crouching moves lift his crouching hitbox and he only has combo options off of close moves. Chun Li’s crouching forward ducks fireballs on hit, so it probably lowers her hitbox. Her crouching strong dodges fireballs on whiff I believe, so probably even moreso. Ibuki forward+roundhouse will also hop even the tallest fireballs but she’ll only hover over them long enough to dodge them if it connects.

      Some moves, like Oro’s chickenscratch, Urien’s headbutt, and Ibuki’s short kazekiri (short only!) leave the ground on the first frame, and thus can be used to escape things like kara demons and meaty aegis reflectors that you normally can’t jump out of if done as a reversal.

      Those are all the interesting hitboxes I can think of off the top of my head. Hope it’s enlightening even if it’s not used.

    • onreload says:

      Cool stuff. I know that Ibuki’s short Kazekiri has lower body invincibility, and Akuma’s demon flip is also airborne on the first frame.

  2. Numsigmernen says:

    Is there a central place for finding scripts? I was thinking it could be interesting to add a stun meter to the SF2 and SFA series, just to see how they compare to the newer games, and was wondering if anyone had done it already.

  3. Dammit says:

    You can find the Lua scripts in the svn repo of MAME-rr. Eventually that’ll include my older experiments. FBA-rr is better now than it was when I did the SF2 dizzymeter script and I’ll improve it some more when I do an article on dizzies.

    That 3S script was originally part of mameserver, created by LennethEX and translated to Lua by mz. At some point I’ll get around to adding the features of the other hitbox scripts to it.

    Finding interesting material is hard, so thanks for the suggestions.

  4. Poke says:

    amazing informative article. i love the Alpha series (A2 in particular)

    question: there’s similar (or maybe the same) hitboxes scripts for FBA-rr as well, why do you prefer MAME-rr?

    • Dammit says:

      The same scripts work with both emus. I recommend MAME for the hitboxes because drawing lots of semitransparent stuff on screen can slow down FBA. The reason has something to do with FBA using your computer’s CPU to do the color mixing while MAME uses the video card, which takes the load off the CPU.

  5. Poke says:

    i see.. also can you use the hitbox display script with an input macro script? if so, how do you load 2 scripts at the same time?

    • Dammit says:

      Good question. With these emus you can’t do more than one script at a time. (Not yet anyway.) It’s possible to make one script run the other, or to merge them into one but that can get complicated.

      For the difficult setups (like the double Sky High Claw) I used macrolua and set it to autopause when complete, then switched to the hitbox script and advanced to the right frame, like how Maj described in this article.

      By the way, Buttermaker found something interesting regarding Bad Spray/Tengu Walking so I added that above.

  6. Poke says:

    thanks a lot Dammit for replies.

    a small overall suggestion/request for this type of article: can you share a .zip link with the scripts for setting up these screenshots in the future?

    it might help people interested to learn the scripting language. i totally understand if you don’t want to..

  7. error1 says:

    did you know that Sakuras hadouken went under a high tiger? I didn’t

  8. heatblazer says:

    Notice some interesting hitboxes in SFA2 like M.Bison/Vega standing HK which hits in the very begining and covers a wide area aswell as Birdie`s cr.HP which as an instant hitframe and beats many jumps. Also notice M.Bison`s jump in SFA2 and SFZ2A….

Leave a Reply