• catloaf@lemm.ee
    link
    fedilink
    arrow-up
    5
    ·
    2 months ago

    Yes, but the game doesn’t necessarily even see those inputs. What a keyboard transmits, and how the OS handles it, is a complicated process with a bunch of legacy handling code. Often, if you’re pressing more than one key, the keyboard might send only one of them.

    I remember in one game I used to play, I would hold W to go forward, and shift to boost, but if I wanted to turn left or right, only adding D would be recognized. Pressing A would do nothing at all, no turning left.

    • NekuSoul@lemmy.nekusoul.de
      link
      fedilink
      arrow-up
      5
      ·
      edit-2
      2 months ago

      Isn’t the issue you’re describing less about the OS and more about cheap keyboards with awful or nonexistent NKRO? On my keyboard with full NKRO I can press as many keys as I want and the OS will recognize all of them being pressed without fail.

      Also, if I’m in a text editorand hold down one key, then start holding down another one, the new one is immediately picked up, which is pretty much identical to this situation.

      • catloaf@lemm.ee
        link
        fedilink
        arrow-up
        1
        ·
        2 months ago

        Yes, that was just an example. Good keyboards and proper handling don’t have that issue any more.

    • Mossy Feathers (They/Them)@pawb.social
      link
      fedilink
      arrow-up
      3
      arrow-down
      1
      ·
      edit-2
      2 months ago

      Afaik it should see both inputs simultaneously if you have n-key rollover, which is a pretty common feature now. I think the last time I was looking for a keyboard, they all advertised n-key rollover. As such, it’d be on the game, not the OS.

      You can actually test this in the Unity editor if you have some programming experience (or I assume any other engine for that matter). It’s very easy to write a character controller in which A+D results in the game using the last input instead of adding the inputs together. I actually had to learn how to make a game not do that. It wouldn’t function exactly like the keyboards currently under fire, but it would function very similarly.

      I’m pretty sure you can also do this very easily with a macro (assuming you have a keyboard with n-key rollover), no special keyboard required as well.

      Edit: your specific example is an example of a cheap keyboard losing inputs, which n-key rollover fixes. Ironically, find the right cheap keyboard and you might be able to partially reproduce the effect they’re talking about (having one key override another other).