Maybe it’s similar to neutral blocking an attack string? Like when someone gets linked combos, and you block the first hit, can let go of the stick and it blocks the rest.
But auto-block only activates when you block the first hit. I can’t comprehend how that would activate when you DON’T block, and just stay in neutral on the first frame.
It’s because mr.dhalsim said about the game going from block state to non-blocking state in a matter of frames. When you get hit, you’re in block state, and if you let go while they’re still attacking, you’re stuck in block state until you change direction, like forward breaking your block. Perhaps during the cross up you’re in block state, and when you go to neutral you’re still stuck in that block state during the hit since you didn’t change direction to break block state, but if you try to “block” in the wrong direction, it breaks that neutral block state you get during a hit string. So maybe what’s supposed to work is hold back if they’re trying to cross up from the front, and right before it hits, go to neutral, rather than swapping block sides. Closest thing I can think of that might make sense, and that’s only if this neutral blocking during a cross up works. Holding up to jump and then going neutral makes no sense, I have a hard time accepting that as a “glitch” of some sorts.
Anyway, if it’s close to what I hypothesize based on the info we have about neutral blocking, then it would still take a level of skill to execute and knowledge of cross up setups. Also, I still don’t think this would work for ambiguous cross ups like O.Ryu’s air tatsu or Claw’s wall dive, especially not wall dive because of how the Claw player can move back and forth during a wall dive, effectively changing the side needed to block.
Until someone sets it up in TRUST and provides a script, this theory stands in doubt. Wolmar’s test and setup was good (down direction held until neutral), however it’s better to set that up in TRUST to confirm AND if there’s a video, to PAUSE the script right before it happens, and slowly frame-advance through the sequence of frames. Pausing and frame-advancing with integrated input display is important because it allows the viewer to see BOTH the game’s action frames AND the inputs for each frame. And if the viewer has the script, we can experiment further and play around with the possibilities more. Use a save state where both characters start from their positions at the start of a round (so we don’t need to send around savestates and can just post the script here).
I think Moonchilde has the right idea and described what I basically meant- during the cross-up, you INPUT a direction to enter a block state-- and by the time the game actually recognizes this and displays your character in block-stun (ie your character looks like he is blocking), during THAT particular frame of displaying the first block-stun animation frame, you don’t need to be holding a direction anymore because you’ve already blocked it a few frames ago. However, Wolmar’s test has him inputting DOWN (plus a side direction for a diagonal- not sure if this is necessary or not) so that is a good test because if this “neutral blocking” thing doesn’t work, he should be getting hit (or missed/whiffed by deejay’s jumping kick), and shouldn’t be able to block it because he’s crouching.
Or me, mrdhalsim’s explanation makes this mystery feel 80% solved if even true to begin with. At this point im just interested in the technical aspects behind it like what bob sagat said.
Also i bet it has 1 frame timing and frameskipping would guarantee you miss many opportunities… Its a bit off topic but i do have a question about trust now.
I recall you suggesting someone try making their own savestate for the scripts, but if its for something really timing specific (1 frame link) its sometimes impossible to land if the frame skip happens to land on your input window i dont think of trust can get around that, so for something like this i think asking for a script may not be enough. you’d need the savestate too…
Edit. Im a retard. I just read over your post again and see you already addressed the last part
Edit 2: no, i was right the first time unless you have a default savestate with the characters at the start of the round… Also, I realized something else. If you have made such a default savestate, you should also pinpoint the frameskips so people can test certain things isolating these frameskips as variables…
The frameskip issue doesn’t seem to affect much in terms of sharing TRUST scripts. I think. In any case you can let the script loop a few times and look for changes to see if that’s the case (it loops by default). Schafly posted a script to help us train for reversal throw timing (Chun vs. Ryu). Researching the window of opportunity, without sharing the same savestate, I found that it allowed only two frames of opportunity to get the throw (i.e., in the setup of the script, Ryu only has two frames to reversal throw on, and if he presses the button outside that two-frame window, he’ll get hit instead of throw). I reproduced his script and if I remember correctly, he noted the same frames (frames 152 and 153, specifically). It doesn’t prove it outright but from what I understand, the frameskipping is ERRATIC and has a random element. Finding which frames get skipped would seem like a VERY difficult task, at best (many frames of character animations overlap each other, etc). Also, when we all watched MAO get like 4 or 5 reversal throws in a row that one round during Evo/ToL this summer (I think against a boxer? maybe Afro Legends, can’t recall right now), I’m not sure that ST’s skipped frames affected it. I.e. it looked like he got it very consistently. I could be wrong but I remember coming to that conclusion in the past few months.
A good way to test it out would be to mess around with the default TRUST custom slot script of Guile vs. Zangief where you have one frame to reversal flash kick his tick into spd. Try it a few times with pausing, noting inputs during frame advance, and look for inconsistencies over loops of the same script etc.
As for sharing savestates, where possible, I now officially encourage users of TRUST to just share a script and work from the start of a round where both characters have not moved and let the script move them into exact starting positions. So if a particular setup distance is required, just have the script move each character into position. That way you can just write a comment at the top of the script like # Make a savestate with P1 as Chun Li and Ryu as P2, from starting positions, etc.
Im having a late lunch right now so i cant really pull it up for you. (ill do it later if you want) but somewhere on the wiki/nki’s website has frameskip patterns for the different turbo speeds… So, no, it isn’t completely random and if you have a default savestate you can theoretically find the first 3 frameskips by comparing frame data and extrapolate the rest following the repeating pattern.
Im assuming when you loop the script you load the savestate? So it will behave exactly the same way if yoj load the state because youbstart from the exact same point in the frameskip pattern… There are a couole of combos in ST which have 1 frame timing, and sometimes its IMPOSSIBLE to do because of the frameskip. You should program one of those combos. Keep looping the scriot to make sure it keeps working… Then load the script a few times while creating new savestates… If i understand how the ST system and how trust works correctly, you should see that sometimes when you use completely different saveststes the combo will drop
For reversal throwing, yes you have 2 frames, if a frame is skipped you end up having only 1 frame. So its still possible to do. Samr thing with regular reversals which i can get consistently too
With a combo that has a 1 frame link then it becomes impossible to do and that should be your measure i think… Both of yoj happened ti have your savestate so the frameskip didnt line up with the reversal throw. If you find that pattern, you can increment your script 1 frame at a time until youve reached the maximum time between frameskips according to those patterns and you should see that one of those times (or more) youll only have 1 frame to reversal
Edit: aill look up those frameskip patterns for you now…
Sorry for miscrediting earlier… I just googled the pqge above… I still feel i first saw this information somewhere else though (and just now i scanned through it to make sure it is what i think it is but i wasnt that careful with it so maybe its not relavent)
Edit: heres another one, formatted more similar to how i remember it but i still dont think this is the site i originally saw
http://combovid.com/?p=5002
Hope this helps, oh and use chuns LL too see which frames are skipped
Those are good links, however we only have to find one instance of whether or not this is possible (ie on a frame that doesn’t get skipped, if that affects this).
“Any controls held or not held before the skip remain that way during the skip.” (Maj’s report, 3rd paragraph)
Again, there is a default Custom slot in TRUST where you can practice dammit’s one-frame reversal flash kick vs. Zangief where you can play around with this, even in a relatively practical setting. In any case, the key point I’d like to make is that, we should do Wolmar’s test, except in TRUST or something that has
- integrated input display, and 2) pause and frame-advance (so we can see both the inputs AND the displayed game frames for each frame, because at full speed you don’t really have time to look and notice (much less study) both. I’ll believe this neutral-block-xup thing when I see it clearly performed just once with integrated input display.
You’re right about only needing to find one instance where it works. But it would be a useful tool if you want to isolate and demonstrate the game’s eccentricies with frame skips (in which there are quite a few). And it would make trials more consistent again if you had a default savestate.
Yes, inputs pushed before a frame stays held down, but the input opportunity from that missing frame is still gone (1 frame links are impossible if they land on a frameskip) thats something. And with something this new and strange, if the script fails, you want to identify when the script fails due to a frameskip rather than failing due to another of the game’s eccentricies. Because at this point, i think most of us are more interested whats going on under the hood.
And you have 2 frames for a reversal, not 1. Again, its only 1 frame if it lands on a frameskip. If that gief-guile tick lands on a frameskip you have to be a tiny bit tighter with your timing but its not impossible like a one frame link.
Edit: I remember asking the question about reversals because i knew one frame links were impossible during a frameskip. http://forums.shoryuken.com/t/things-you-just-dont-understand-about-st/116104page-4
It is one frame. People often test it and forget about negative edge.
Random off topic question: So the reversal window is 1 frame in a 45-fps game. Alright, so that’s pretty difficult to land. How does frame skipping affect this window? Will it ever shift the reversal window, or eat your input ON the reversal window so it misses half the time?
That was the question i asked in the link i gave. Cuz i know for one frame links it eats your window and i when i asked the question i also “knew” reversals were 1 frame, so my thought process was “maybe i can abuse this and go for meatys more often since sometimes its impossible to reversal” so i asked and ganelonreplied quite quickly saying there are acutally 2 frames which is why it is never impossible to reversal.
Interesting. So at faster speeds, the likelihood that the reversal window becomes 1 frame increases, despite there being 2 reversal frame windows, due to frame skipping.
The F1 key is the frameskip key in FBA. Just pause with the pause key, and press F1 with the desired input held. There is a single frame of input delay in ggpo’s fba, so it will take an extra framestep to see the expected action.
Anyway, I’ve been testing the neutral blocking with frame stepping and savestates. I haven’t found anything yet. I’ve got Deejay doing crossup MK to a knocked down Ken. I’m timing Ken’s directional inputs (i.e. up, down, whatever) so that he is back at neutral exactly as he is standing to take the hit. Nothing I’ve tried so far as worked. Edit: Oh and btw, I’m using Anniversary Edition with the turbo off.
Woolmar, if you post the replay file, I can dissect that to find out what happened. It’s in the recordings folder of the ggpo directory.
Bunk. If you hold left and right simultaneously in ST, the character stands still and won’t block.
Eh… no. Moving around in 4 frames delay is like swimming through molasses. It’s not subtle. GGPO FBA does have a single frame of input delay, and can have more online depending on your “smoothing” (input delay) setting, but the real deal shouldn’t have any program related delay.
Turbo frame skip basically just moves your input to the next frame, it doesn’t eat them. Whatever else could have happened during the skipped frame still happens, it’s just that it won’t take new inputs (including negative edge inputs). This would affect a reversal attempt against a meaty attack, but interestingly wouldn’t affect a reversal against an actual throw since your opponent is also affected by the frame skip, since they also have to do an input.
No, there is only one frame for a reversal (the frame that would have been your first vulnerable, not-knocked-down frame). You can do extra inputs to increase the chance you hit that window, but there is only a one frame window regardless.
I extrapolated my opinion primarily from this:
I may have read it wrong, but I interpreted it to mean that the game actually has 2 reversal frames, but 1 of them is usually lost due to frame skipping, especially at higher speeds of ST. So essentially, your best bet is to just count on the fact that the game will always have 1 CONSISTENT reversal window, and that you are able to hit it reliably if you’re theoretically able to hit the inputs on that frame. So pianoing, double tapping, negative edging, all of that stuff, is still very reliable to use.
Your last statement brings up that loophole which i was thinking about which theres a possibility of a reversal being impossible due to a frameskip.
Let me try and make this clear as day:
Someone does a meaty attack (or one of gief’s spds which has a startup) theyve already pressed a button. Their animation is coming out. You’re getting up. They’re in their active frames FRAMESKIP during that 1 frame window where you can reversal. YOU RE SCREWED OUT OF A REVERSAL no matter how perfect you are or now you piano because one frame earlier you’re still waking up. And the frame now youre either in blockstun or taking a hit because the reversal you attempted was impossible.
Now, the question i asked inthe thread i linked to is: is this scenario possible? Because if so, ima gonna go attempt meaty attacks more often on those people who have their timing down.
And the answer i got (and with the knowledge of the game i acquired since i asked that question… Which was a while ago … I agree withthe answer) is a no from ganelon because there are 2 reversal frames unless the game skips 2 in a row.
Edit: i was replying to rb baron. Not eltrouble… Damn ninjas…
…lots of fine points being brought up here… as rp-baron said, ST runs at 60-fps. As for 1 vs 2 frames for a reversal, it’s important to keep in mind there are certain, specific situations where there is a special case of one-frame-reversal (ie you have an opportunity to do a reversal flash kick on one frame between opponent Zangief’s tick of low L kick into SPD) but generally, reversals that aren’t as strict. For example, as Ryu is getting up from a knockdown, I am pretty sure there are multiple frames- both in the sense of game frames as well as animation frames like him doing the handstand- that you can get a reversal DP from before he gets hittable again. And if you do it on the earliest possible opportunity, he just skips over the remaining animation frames of getting up and goes directly to the first animation frame of the DP. So if you want a practical lesson from all this and want to try more aggressive pressure as opponents get up, it’s not just that 1 frame they have in every situation to get out a reversal, but only specific situations (and I don’t think there are all that many in ST, offhand).
Also, just to point out, that with save states, even if you go through the (laborious? hardly worth it?) task of determining which frames are getting skipped or not according to the pattern, the same save state is just going to skip the same frames each time. So I don’t think it is worth it to go through the labor of finding which frames are getting skipped or not if you just want to find one instance of it. btw IF you believe this neutral-blocks-xup works and are concerned about it being a skipped frame or not, just try it in Super (not ST) because that game does not skip any frames at all, and something so basic and core to the game engine likely works the same way.
rp-baron, the “input-delay” seems like a different thing than what you’re talking about. I think we are referring to how the game works where, when you press an input on any given frame, it takes a certain number of frames before the game displays it on the screen. For example, in this case blocking a cross-up attempt on strict timing by going to neutral on ONE specific frame (that might get skipped as unessential points out) requires you to go to neutral (from up/down/left/right) on several frames BEFORE that frame actually occurs and is displayed on the screen. (IF it’s valid, that is, but that’s the theory.) Actually I’m pretty sure this several frames is the way ST works in general as I noticed it directly during testing the wall dive stuff. EDIT i.e. if you try to block a wall dive by REACTING it will be too late; you have to GUESS-- you MUST GUESS left or right (and that it’s a wall dive and not the air grab one)-- because if you don’t block BY THE SAME FRAME that claw presses the punch button to spread his arms, you will get hit. In fact you can block ON the exact same frame he presses the punch button, LET GO of the stick and it will show you in block stun even though for several frames your character is in neutral/not inputting anything. btw I think in A2 this phenomenon also occurred and allowed for Valle’s exploit because it takes so many frames to block from a standing position (like 12 frames or so? a fifth of a second); so in A2 if you’re just outside sweep range or within sweep range of your opponent, you just waited for them to stand up, activate your CC, and they won’t be able to block your sweep as a first attack of it.
In case anybody was looking for clarification from me, I stand by my findings: the reversal frame is always available, and there are 2 reversal frames at slower speeds and other situations. I’m not sure the 2 properties are related though. The latter is trivial to test on an emulator.
For the former, I performed save state frame-by-frame tests for the exact same knockdown situation on JP T3 with each test identical in every way except starting one frame later than the last. I haven’t calculated the frame skipping algorithm myself but I’ve never heard anyone say T3 skipped less than once every 10 frames. I went further and tested the knockdown at roughly 20 different starting frames in sequence. In those 20 iterations, I got 20 successful reversals. That’s how I originally determined that reversals are guaranteed regardless of any frame skipping.
Let me know if there’s any confusion.
Being curious, I decided to back this up with evidence.
Using the 0 frameskip code found at http://www.mamecheat.co.uk/forums/viewtopic.php?f=4&t=4102, mame-rr with macrolua, and a savestate, I scripted Bison to knock down Cammy, then perform meaty cr.mk and have her DP at different frames. I can supply the savestate or make videos if people REALLY think it’s necessary.
Here are the scripts:
#&7 W10 -_D6.W90.5.W2+L.D.DL.W2.4.! #too early. no dp
#&7 W10 -_D6.W90.5.W2+L.D.DL.W3.4.! #rev dp
#&7 W10 -_D6.W90.5.W2+L.D.DL.W4.4.! #rev dp
#&7 W10 -_D6.W90.5.W2+L.D.DL.W5.4.! #too late, dp stuffed
[S]So these data agree with there being 2 possible frames for reversals in the absence of frame skipping. Therefore you should always have at least 1 frame of reversal window available from a knockdown. I’m unsure of these other situations that supposedly have different reversal windows (any evidence of this, or at least some more situations to test?)[/S]
edit: the above is testing without holding down the button, thus the button up is including an extra frame of reversal window. With the button held down, only the third script results in a reversal dp.
I may put some effort into testing the central theory of this thread using 0 frameskipping to see if there’s anything there. I suppose people won’t be happy with a simple crossup hk or something though? Does it need to be vega walldive specifically?