Big thread of gamepad testing

I found this in the xpad driver source code, and I was wondering if we should add all those controller names (at least the ones with XTYPE_XBOX360 and XTYPE_XBOXONE) to the default .gamepads file. They probably have the same button maps (They were consistent between Xbox One, Xbox 360 and Chillstream from what I noticed).

For example, there are at least 3 versions of the Xbox One controller, with different names.

Here’s the .gamepads file with all the gamepads (what was already there in default.gamepads, Xbox 360, Xbox One, DS4, Joycons, plus all the xpad gamepads on Linux).

all_gamepads.gamepads.txt (450.7 KB)

To sum up:

  • On macOS, the DS4 controller doesn’t work at all via Bluetooth
  • On macOS, the Xbox One controller via Bluetooth is missing triggers and the share and guide buttons
  • On Windows, the Xbox 360 binding in default.gamepads had wrong trigger ranges. I replaced it with a working one
  • On Linux, it would be cool to be able to differentiate between Xbox One Bluetooth via xpadneo vs default HID driver.
  • On Linux, gdc crashes on startup for me (and it crashes for @Klear on Windows)
  • On Windows, gdc freezes, then exits silently when a DS4 is connected
5 Likes

I added new task for that: Issue-4217 ( #4217)

5 Likes

Hi, I found duplicates in you list for linux:
device: “Mad Catz Xbox 360 Controller”
device: “Afterglow AX.1 Gamepad for Xbox 360”
device: “PDP Xbox One Controller”
device: “Rock Candy Gamepad for Xbox 360”
device: “Logic3 Controller”
device: “PDP Afterglow AX.1”
device: “SteelSeries Stratus Duo”
device: “PDP AFTERGLOW AX.1”
device: “Razer Sabertooth”
device: “Razer Atrox Arcade Stick”
device: “Xbox Airflo wired controller”
device: “ThrustMaster Ferrari 458 Racing Wheel”

I think I can remove it? (or maybe duplicates should have another platform?)

1 Like

Sure, if you found duplicates, you can remove them

Solved in Defold 1.2.160 has been released

3 Likes

Update for Catalina:

DS4 through Bluetooth shows up as “DUALSHOCK 4 Wireless Controller” instead of just “Wireless Controller”, but gdc crashes with a segfault immediately after that.

Yeah. gdc crashes on Catalina no matter the controller

gdc tool does not detect joycons on Windows 11, seems to crash / close on its own.

Thanks, we’ll look into it!

1 Like

Created GitHub issue: https://github.com/defold/defold/issues/6658

3 Likes

I’m getting reports that DualShock 5 isn’t working. I checked the list in the original post and indeed it only goes as far as 4. I tried to download the utility but I get a 404.

Each of the gdc links worked for me here (version 1.3.4):
http://d.defold.com/stable/

Thanks! Managed to get the utility from there.

I don’t own a DualShock 5 but my friend does. He reports that the utility is not detecting any controllers. He is confident that the controller works (i.e. it is currently being detected by other games). As expected, Fates of Ort is not detecting the gamepad. I imagine this is the case for all Defold games.

What might we do next? :thinking:

Do you get any raw input from the DualShock 5?

No. Well, I haven’t previously checked for “raw” specifically but when I print the action_id nothing is returned at all, and we’d expect “raw” there.

Do you have “raw” in your input bindings?

Of course I didn’t! Added it now. I get “raw” for my old Xbox controller but can confirm the DualShock 5 does not return “raw”.

Ok, that is strange. And the controller works in other games?

Yes, I’m told he’s been using the controller since 2020 without issue. We had another person test as well (just regular gamepad input, not checking for raw input) - same result, a DualShock 5 controller functioning with other games does not detect input in Defold.

This is anecdotal but I am told most AAA games support Dual Shock 5 without issue, but that some (not all) indie games don’t. In those situations, some Dual Shock users use a utility (https://ds4-windows.com/) to convert the input. I don’t know how widespread the uptake is of this utility.

It’s confirmed that Dual Shock 5 fed through the ds4 utility does generate input detectable by Defold. Not a solution (wouldn’t want to expect players to have to download utilities), but perhaps relevant to see that the controllers do work.