godotengine / godotengine/godot
Xbox controller inputs not detected in editor in 4.3 due to Steam Input injection
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
### Tested versions
Bug occurs in 4.3, doesn't appear 4.2
### System information
Godot v4.3.stable (77dcf97d8) - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3070 (NVIDIA; 32.0.15.6070) - AMD Ryzen 7 7800X3D 8-Core Processor (16 Threads)
### Issue description
So I made a basic game following a tutorial, before the update controller worked fine both when launched from project manager and from the editor, but in 4.3 it runs fine from the project manager, but inputs aren't detected from the editor.
keyboard works fine regardless in 4.3
I am using an xbox series controller for this
*Edit, tried this with a ps5 controller and this issue doesn't occur with it
The input mapper does detect the controller, but it doesn't seem to effect it in-game
*edit* I think I've narrowed it down a bit:
in 4.3, when launching from the editor, the xbox controller does not work.
in 4.3, when launching from the project manager, the xbox controller does work.
in 4.2, the xbox controller works when launching from either.
in 4.3 and 4.2, the ps5 controller works when launching from either.
However, I have found that the issue seems to be steam input messing with it (I am using the steam version), when I
disable steam input the xbox controller works fine regardless if its launched from the project manager or the editor
(thanks to @thorncreature for helping me with this on discord!)
### Steps to reproduce
Run the game with a controller and try to use it from the editor (in this case with d-pad or the left joystick)
### Minimal reproduction project (MRP)
[2d-project-start.zip](https://github.com/user-attachments/files/16646500/2d-project-start.zip)
Contributor guide
Research direction
Start with the attached 2d-project-start.zip and reproduce the Xbox controller failure in Godot 4.3 when launching from the editor, then compare it with project-manager launches, Godot 4.2, and Steam Input disabled. Done means Xbox controller d-pad and left-stick input works when running from the editor without breaking the reported working cases.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, godot
- Domain
- desktop-dev, game-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100