Proximity Block OS Mechanics

The basics of this OS have been explained before, but I’d like to go into some of its technical details. This is not meant as a how-to, however, understanding the mechanics involved can help you to execute it properly. For those familiar with yeb’s video explanation, note that I’ll explain things a bit differently. The key mechanic that makes the OS work is the disabled “negative edge” release input when it’s preceded by a press. Also, the release needs to be timed on the transitional frames that come after a move’s recovery is over.

What are transitional frames?
I’ll use Cammy’s cr.MP as an example: it has a total of 15 frames, but in addition to that, there are 5 transitional frames at the end of it. These extra frames can be seen in the SSFIV hitbox videos, but since they’re not part of the recovery and can be interrupted, they don’t have much gameplay effect. They’re mainly there to smooth out the animation’s transition back to regular crouching. For a crouching normal like that, in order for the extra 5 frames to play, you need to hold (any) down. For a standing normal, you would need to remain in neutral. This is related to what yeb described in his video as “state changes” that trigger the OS; what’s happening is that when the other character attacks or jumps over Cammy, the post-recovery phase of her cr.MP gets interrupted and she goes into another animation. If Cammy is holding downback during the transitional frames of her cr.MP, she’ll get interrupted if the opponent threatens her guard with an attack. The change in animation – from cr.MP to guard – is what triggers the PBOS. However, a specific input is required so that it only triggers on this condition.

How does “negative edge” get disabled?
If Cammy wants to PBOS an HK Spiral Arrow after her cr.MP, she needs to time the HK release on one of the 5 transitional frames available, but it has to be preceded by an HK press that’s done while still in recovery. Pressing a button during a move* disables its release counterpart for several frames, but only for that specific move. So, as soon as the animation changes, the release input becomes valid and the special is executed. If the HK is held beforehand, the OS won’t work and the release will always result in a special coming out. In order to disable the release input, the maximum gap possible between button press and release is 6 frames. This means that if HK is pressed on frame 1 in a timeline, it needs to be released on frame 8 at the latest.

  • This doesn’t apply in all situations; the release input doesn’t get disabled during dashing, block/hitstun, wake up, stun recovery… In order for it to get disabled, the move itself needs to be something that gets triggered by a button press. That would include normals, specials, etc.

Which moves are valid for PBOS?
Because a standing normal gets interrupted by backwards movement, only crouching normals are valid for the OS if you wish to trigger it via proximity block. Special moves can also be used, but they need to end in a crouched transition, like Sagat’s Low Tiger Shot for example. It’s important to note that a move with 0 transitional frames can’t be used at all. An example of that would be Sakura’s cr.MP: since it goes straight into the crouching animation after its recovery, there isn’t any frame where you could input the OS. Other examples of such moves would be Guile’s cr.MK, Akuma’s cr.HK and Yun’s cr.MP. Note that most moves in the game have transitional frames, and many of the characters have some in all of their crouching normals. The difficulty of timing the release is affected by the number of transitional frames a move has; it’s easier with more frames, but it’s only meaningful up to 7 frames, because any additional ones beyond that would fall outside the allowable distance from the press. Performing the OS with Ryu’s cr.HP for example would be difficult, since it only has 1 transitional frame, which translates into a 1-frame window for the release.

Where can I find how many transitional frames move X has?
This type of frame data is uncommon and not really useful, which is why it isn’t readily available from anywhere. Unfortunately, I don’t have the time to gather it. I can answer specific questions regarding this frame data, but please keep them to a limit.

If you have any questions about the OS or want something clarified, go ahead.

Man your posts are always extremely helpful. Thanks a lot for all the hard work.

Out of curiosity, could you give out a few normals that have 7 transitional frames?

Maybe you could provide a little insight on how to go about finding the number of transitional frames, so that people can find out the best normals to proximity os with their characters.

Oh and finally: it’s not a tech that bothers me particularly, but do you have any thoughts on whether it could be easily removed from the game or does it look like something that’s gonna stick for ultra.

Hmm, Cammy’s cr.HP has 7+. The thing to bear in mind is that players who are at the level where they’ll attempt this OS are unlikely to need a 7-frame window to land something. Rather, they’ll be looking at a few specific normals they’d like to OS with. It’s probably a better idea to PBOS with a fast cr.MP that has 3 transitional frames instead of a slow sweep that has 7. If you for example played a character and were thinking between 3 possible normals to use, I could tell you their t. frame counts.

The only accessible way I can think of doing that would be to view the data on the PC with OnoEdit. I’ll explain this briefly. In the editor, select a move from the “Scripts” section and click on the “Header” tab. The “Interrupt at Frame:” marks the end of the move’s recovery. So if a move has 25 in “Interrupt at Frame:” and 30 in “Total Duration” (these numbers are from Cammy’s cr.MP), 26–30 make up the transitional phase. The amount of in-game frames in the end result is affected by the move’s speed data. Note that this requires some familiarity with the game’s engine and the results may not always be accurate. Moves without transitional frames have a 0 in “Interrupt at Frame:”.

From a programming perspective, it would be an easy fix. However, I hope that in fixing it, they don’t break what I assume to be an intentional feature. What I mean by that is that I think the negative edge getting disabled is in part intended as a countermeasure against accidental special cancels at the start of a normal, especially for charge characters. The disabling of the input that I described above also applies to the press that’s used to perform a normal; if LP is pressed to get a jab to come out, it can’t be used for a negative edge special for 7 frames after the press. The correct way to fix it would be to simply not consider the negative edge as disabled if it’s inputted after recovery.

Wouldn’t the easiest way to disable it simply be to remove transitional frames? They are simply fluff used to make animations appear smoother. They aren’t important from a gameplay perspective.

You’re thinking this from a modder’s perspective. For the devs, it would be far easier to add to the relevant if statement. Well, assuming that they won’t just call this a feature like they’ve done with some other glitches. :stuck_out_tongue:

And as you point out, these leftover frames affect the visual look of the moves. Removing them would be a needless compromise.

you can just remove proximity block like me and zeipher did in ssf4 remix

this also removes the crossup unblockables

Well I was also considering your point of potentially breaking intentional features and the lowered chance of unforeseen consequences. Simply removing transitional frames would likely fix the problem and have the least potential for problems like how removing the unblockable ultras in SF4 resulted in other problems in SSF4.

Except that is a MAJOR change to the game. Removing proximity blocking entirely ends up changing balance drastically. It emphasizes the strength of walk speeds even further and weakens fireballs more (especially fireballs with limited ranges.)

Also that still doesn’t fix prox OS entirely as it would still trigger from turning around.

Only to see if I got it right: Claw’s crMP has 4 transition frames?

Yes, that’s correct.

for dudley PGOS window.

2lk 1f
2mp、2mk 0f
2fp 3f
2fk 4f

Will crouching normals that have more +frames be better candidates for this application? Seems a slew of the shoto crew gain a lot, while Balrog doesn’t gain nearly as much (even if his c.MP has lots of +).

Just to be sure I get you, does the PBOS work by re-enabling negative edge by the ‘state change’?

Yes, although “state change” was yeb’s way of describing this; I think you could simply say that if the animation changes the input is enabled.

By +frames you mean frame advantage, like on block? Attempting this OS when you have a lot of frame advantage isn’t very good, because you want the opponent to attack you and they can’t if they’re in blockstun. Take Cammy’s cr.MP for example: it’s +3 on block. But what happens when you try to PBOS someone after it gets blocked? You have 5 transitional frames to work with, but you can’t use the first 3, because the opponent is in blockstun for their duration. You can’t use the 4th one either, because when the opponent performs an attack, the proximity guard threat doesn’t kick in until the 2nd frame of their attack (this applies to all attacks, including focus). You’re left with only 1 valid frame for the OS.

It’s true that charge characters benefit less from this, but that’s because they lose their charge when they go for it.

so does removing transitional frames as you suggested, they do actually in places affect hitboxes and whatnot

Transitional frames are always cancelable by any action. How do they affect gameplay whatsoever? The hitboxes ended long before hand (as it occurs after recovery). Do you have any examples of transitional frames affecting hitboxes? And would this situation at all be something that would appear in a real match where players are 95% of the time holding a direction which results in interrupting the transitional frames with a jump/walk/crouch/block command?

Legit asking cause I dunno of any.

Perhaps you are confusing the transitional frames with the “transition” script section of Ono which could affect things like hitboxes and such? We are referring to the “interrupt at frame” part of the script headers.

With the mechanic, it really appears to give non-charge characters a large advantage with the meta game. Baiting the use of this out is going to be a little more difficult, once specific characters and players learn to abuse it.

most obvious example:


adon had misplaced throw invincibility during transitional frames of several of his hitstuns animations in older versions of AE and before. adon players actually used this after getting hit by EX green hand. I believe yang had a similar bug with his wakeup animation in AE that was widely abused

all the properties of the previous animation continue to apply which therefore means hitboxes. many hitboxes in the game are directly tied to the bones of the animation as well, so that matters. it isn’t as big as changing proximity block but it is still certainly a change to the game. i was just saying an easy and obvious fix that however definitely does affect footsies and crossup situations a good bit, me and Zeipher made the change explicitly because we understood how this affected the game.

so no, i’m not confusing anything here. i was one of the developers of Ono, so i’m as aware as anyone outside of Capcom can be about how this all works.

Technically all hitboxes and hurtboxes are tied to the bones of animations just a matter of what bone. even when defaulted to FF it is still attached to a bone and thus positions differently if you run a different animation.

I bolded the most important aspect of your statement which shows what the problem is.

MISPLACED. As in, unintentional. Proximity blocking is an intentional game mechanic that is there to actually change how the game is played. Transitional frames are there exclusively for smoothing animations and serve no other INTENTIONAL purpose and barring what… 3 or 4 specific errors would have little to no impact if removed.

What I said is still correct because it doesn’t affect the game in any way that it was intended to function or have any major consequences. There aren’t any other examples of moves I can think of where it’s better to let the transitional animation play rather than simply interrupting it as you normally would. Plus, are the any examples NOW of transitional frames overlapping that haven’t been removed in USF4? AFAIK they fixed the Gen issue in USF4 which removes all of them that I know of.

Also these have nothing to do with HITBOXES as you well know. There are no HIT boxes that are active during transitional frames and the HURTBOXES aren’t designated either. All that is overlapping is the on off switch for hurtbox flags invincibility.

I’m well aware you worked to develop Ono, that doesn’t make you infallible or all knowing either. There are tons of things we still don’t know about how the game works or things that Ono can do even now (see: Will Smith’s discoveries of how to add/subtract health or Error/Razor’s experiments with SFxT animations in SF4). Plus people can make mistakes and i thought maybe you made a mistake with the transition section of scripts. A legitimate human error.