Inputs Get Lost if Multiple Keys Pressed

Godot Version

4.4.1

Question

I’m making a racing game where up/down accelerate and left/right turn, and I noticed that when up and down are pressed at the same time the player can’t turn when left or right are pressed. I set up a label for debugging that shows the input map values:

Global.debug_label = “%s%s%s%s” % [Input.is_action_pressed(“left”), Input.is_action_pressed(“up”), Input.is_action_pressed(“right”), Input.is_action_pressed(“down”)]

It behaves as you expect when 1 or 2 keys are pressed, but if left and right are pressed it will only register up or down. If up and down are pressed, it won’t register left or right.

Screenshot 2025-07-01 182414
Label while pressing and holding left, right, up, down in that order

Screenshot 2025-07-01 182506
Label while pressing and holding up, down, left, right in that order

Here’s my input map

This isn’t much of a problem because my game won’t require you to press three buttons at once but I think if I’m using the input map I should understand why it’s not working as I expect.

Might be just your keyboard or software. Look for anti-ghosting settings or rollover. E.g. my office keyboard can only detect 2 key-presses at a time (for normal keys excluding alt, shift etc)

2 Likes

I’d also check this issue outside of Godot, because it seems like your keyboard, not Godot.
I checked the same scenario and I have no problem registering multiple keys, see the video:

1 Like

I did a keyboard ghosting test and that seems to be the issue. I’d consider the problem solved.

2 Likes