defold icon indicating copy to clipboard operation
defold copied to clipboard

1.9.2 - gamepad names have changed, causing mappings to fail

Open 8bitskull opened this issue 1 year ago • 5 comments

Gamepad input mappings rely on the reported name of the gamepad. It seems that as of 1.9.2, gamepad names have changed. My gamepad on Windows used to be called "XBox 360 Controller" but is now called "Wireless Xbox Controller" and therefore fails to map. User Wolfe reports 8BitDo SN30 pro+ on Linux has changed mapping. Furthermore, I also have player reports that "Super Gamepad" and "Xbox Elite Controller 2" are not working as of an update I pushed with version 1.9.2. Notably, one user reports that "PS Dualsense" still works. I have no insight into why that is (perhaps it's a newer controller, or Steam Input interferes, or it's random chance).

This issue is perhaps related to the recent GLFW update? This update was implemented in 1.9.2: https://github.com/defold/defold/pull/9228

The problem with the gamepad names changing is that this invalidates an unknown amount of the gamepad mappings in the builtins.

8bitskull avatar Aug 28 '24 10:08 8bitskull

User Wolfe reports 8BitDo SN30 pro+ on Linux has changed mapping.

The specific mapping I was told was unsupported was: "8Bitdo SF30 Pro 8BitDo SN30 Pro+"

Wolfe2x7 avatar Aug 28 '24 10:08 Wolfe2x7

This issue is perhaps related to the recent GLFW update?

Yes, it is likely.

User Wolfe reports 8BitDo SN30 pro+ on Linux has changed mapping.

Although this is odd. We have not updated glfw for Linux yet as far as I know.

The problem with the gamepad names changing is that this invalidates an unknown amount of the gamepad mappings in the builtins.

Yes, this is not good. We need to look into this.

britzl avatar Aug 28 '24 17:08 britzl

Although this is odd. We have not updated glfw for Linux yet as far as I know.

~~Since 8bitskull opened this issue, I tried removing the modified gamepads file, and there is no error anymore. No idea. 🤷~~

Spoke too soon.

WARNING:INPUT: No gamepad map found for gamepad 0 (8Bitdo SF30 Pro 8BitDo SN30 Pro+). The raw gamepad map will be used.

Wolfe2x7 avatar Aug 28 '24 19:08 Wolfe2x7

For us gamepad input also broke in 1.9.2. Rpad down etc is not firing on_input events. Let me know if there is something I can do to help debug.

koenbollen avatar Aug 29 '24 08:08 koenbollen

I was really curious where that name for the Xbox controller came from - it seems in GLFW 3 they started calling all generic xbox compatible wireless controllers that - https://github.com/glfw/glfw/blob/master/src/win32_joystick.c#L168

aglitchman avatar Aug 29 '24 11:08 aglitchman