Thursday, June 4, 2015

Lab Zero PS3->PS4 Stick Driver Lag Test

I did a more comprehensive test, check it out here:

http://mikezsez.blogspot.com/2015/06/lab-zero-stick-driver-input-lag-test.html


I just did input lag tests in the PS4 development version of Skullgirls with my 120fps camera, because I'm home sick today and what else do you do when you're sick, right? :^)

-----------------
Button press to horn appearance for Big Band s.LP.
-----------------
Performed on a laggy television, but the same laggy television was used for both tests. The tests were recorded during the same round, heh.

Recorded at 120FPS, meaning 2 captured frames is 1/60th of a second, or "1 frame" in fighting game terms.

What matters is the difference in timing, not the timing itself.

-----------------
Mumbo Jumbo
-----------------
The game has frameskip, it skips every 7th frame, which is why the timings can vary by up to 2 captured frames (1/60th sec) - occasionally one game frame will not be displayed, visually shortening the move's startup by 1/60th of a second.

The horn doesn't appear on the first frame of his s.LP, it's just the most noticeable change so I used that as the benchmark, which is why frameskip even matters.

-----------------
Raw data at 120fps
-----------------
DualShock 4:
button press + 14f
button press + 15f
button press + 14f
button press + 15f
button press + 16f

PS3 MadCatz TE (Round 1) using the Lab Zero stick driver:
button press + 16f
button press + 18f
button press + 15f
button press + 16f
button press + 15f

-----------------
Conclusion
-----------------
TE is 1 to 2 captured frames slower, which in fighting game terms is "1 frame" slower.
Not bad, but not perfect. Right?

BUT!
Check out this page: http://www.teyah.net/sticklag/results.html
(Thanks Teyah!)

According to that, the TE itself is around 1 frame slower than the DualShock 4. Possibly more, since the DS4 in this case is interacting with a PS4 instead of a PS3, which improves the response time*, whereas the TE doesn't get any kind of hardware boost.

Meaning the Lab Zero stick driver likely introduces no lag, and at worst introduces 1 frame.
Tada!

* According to Teyah's page, the DS4 is ~9ms faster on PS4 compared to PS3.

9 comments:

  1. The lag numbers in Teyah's test are relative to the fastest board on that system, not in relation to any absolute, inter-system benchmark. The fastest PS4 controller could lag 8 frames and he'd list it as +0ms. You'd have to measure the absolute lag of the fastest performers to begin doing cross-platform analysis.

    ReplyDelete
  2. I did another test, and the TE really is slower:
    http://mikezsez.blogspot.com/2015/06/lab-zero-stick-driver-input-lag-test.html

    Regarding Teyah's page though - on the PS3 tests, the TE is slower than the DS3 AND slower than the DS4 when the DS4 is connected to the PS3. It is reasonable to assume the DS4 on PS4 reacts at least as fast as it does on the PS3, therefore the TE is still slower than the DS4 on PS4 by at least the same amount.

    ReplyDelete
  3. Yeah, just a warning to not blindly stare at the numbers because they don't have a uniform-between-systems benchmark behind them. The results of your second test are pretty much expected - PS3 TEs are slow buggers.

    ReplyDelete
  4. Since you work with the code: It seems most, or even all fighters (this seems to exist as far back as ST) have the problem where 6236 gives you a DP - what differs is the speed needed, ie. old games have shorter buffers and modern games have buffers that last two years (and SF4 interprets everything ever as a DP).

    This makes me wonder, do all these games just check what directions are in the buffer on button press? Do none actually verify that the correct direction was held at the time the button got pressed? (ie. inputs ending in 6+button should never ever result in a DP, yet they do seemingly throughout the genre's history)

    Is there some technical reason this isn't done, because the game deciding to do a wildly risky move from clean input seems like undesirable behavior to me and the check for correct end direction solution should take care of most of it?

    ReplyDelete
  5. The reason games don't require that is because it's not desirable!
    Limiting the player to exactly DF+button would exclude an even greater number of people from being able to play fighting games than the existing special move motions already do. SFEX3 rewarded you with a starred version of a DP if you did Ace's Shoryuken perfectly, which let people see how many perfect DPs they could actually perform. The number was surprisingly low, even for good players. You could complete one of his challenges (do a 60-hit combo) by doing 60 perfect DPs in a row, and I've never seen anyone accomplish that. My highest was 41, in 2 hours of trying. If games required perfect DPs, even the best player would miss a DP motion occasionally, which is bad news.
    (Fighting Street required exact move motions, and they were nearly impossible. SF2:World Warrior, as a result, did not. Of course, entering an exact motion will always get you a DP, but most people don't do that. For usability, allowing slop is surely desired. SF4's method takes slop a little too far, I see that as a terrible design choice.)
    In general, the DP is given higher priority, so 623 = DP, 236 = QCT, and 6236 = DP. This helps at all but high levels of play. However, since high level players are assumed to be in control of their inputs, there are two methods of allowing the player to CHOOSE a definite QCT even with slop, which is more than sufficient. King of Fighters has one (has had it since the beginning, I think!), and Skullgirls has the other (which Blazblue also adopted after SG came out):
    KOF method - Motions can extend one direction "past" their last input. So 236 and 2369 are valid QCTs, but 623 and 6236 are valid DPs. In this case, if you wish to force a fireball, you simply do 2369, since the 9 input invalidates the DP. However, 62365 still gives a DP.
    SG method - 623 is a DP, 236 is QCT, but inputting straight Back will invalidate a DP motion, so 64236 is a QCT (as is 641236). Ergo, if you want to guarantee a fireball you can choose one by doing a half-circle, which will override the DP motion.

    No existing games besides SNK games, SG, and Blazblue allow players to differentiate, though.

    An even better idea is not to give characters overlapping QCT+DP or QCB+RDP motions on the same button, which the Street Fighter series in particular has a fondness for doing. It was something I could have avoided entirely in SG, except that by fighting game convention several moves felt "correct" as QCT+P and DP+P / QCT+K and DP+K. Which kinda sucks. :^P

    ReplyDelete
  6. I didn't mean to be perfect. I meant that games atm seem to check "directions XYZ present in buffer in some order at the time of button press". I'd just add the condition that the stick is held in the proper ending direction at the time of the button press. No EWGF style just frame nonsense, just that the end direction is checked separately from the normal present-in-buffer test.

    As far as KOF goes, 13 at least accepts 626 as a DP input - it's why hcb~f gets you a DP on characters that don't have a command grab. Last time I checked 2002 didn't have a shortcut, might test that later today.

    GG actually does surprisingly well on not having that many overlapping inputs on the same button.

    ReplyDelete
  7. Yes...my point wasn't that you'd need to hit DF+P on the same frame, but that if you require that the person be exactly at DF when they DO eventually hit P, you eliminate everyone with execution that ends up at F or neutral. Which is a lot of people, some of whom would very much like to play fighting games.
    (Perfect inputs for SFEX3 Ace I think meant hitting P while at DF within 3 frames of arriving at DF, which doesn't sound unreasonable, not DF+P exactly simultaneously.)
    And yes...KOF accepts 626, that's fine? I mentioned that if you go to 9 you won't get a DP.

    ReplyDelete
  8. Yeah, that was more of a nitpick than anything meant as a substantial point. People just have odd perceptions of what KOF counts as an input - many of the "longcuts" and shortcuts in the game come from that 626 input being valid instead of being there as such. I just want to spread the correct information to get it out there.

    That said, your example was helpful. I guess I just have to bear it. Thank you. ^^

    ReplyDelete