DualSense gamepad share button incorrectly mapped to ButtonSelect KeyCode on desktop

When using a DualShock/DualSense gamepad on desktop, the “share” button mistakenly maps to Enum.KeyCode.ButtonSelect. This is an inconsistency, as when playing on an actual PlayStation system, the DualSense “touchpad” button is mapped to Enum.KeyCode.ButtonSelect. Additionally, UserInputService:GetImageForKeyCode(Enum.KeyCode.ButtonSelect) and UserInputService:GetStringForKeyCode(Enum.KeyCode.ButtonSelect) will return an image of the touchpad and “ButtonTouchpad” respectively, indicating that the intended button mapping for ButtonSelect is in fact the touchpad.

This can very easily cause confusion for desktop players who choose to use a DualSense/DualShock gamepad. Although games using the default APIs will correctly tell players to press the touchpad for actions bound to ButtonSelect, because ButtonSelect is mistakenly mapped to the share button, nothing will happen if the touchpad is pressed.

Expected behavior

The internal mapping of ButtonSelect should point to the DualSense touchpad while on desktop, as it does on PlayStation, rather than the share button.

5 Likes

I just encountered this today! Quite odd it happening

I’m honestly shocked it’s gone unnoticed this long. Hopefully it can quickly be fixed after the holidays.

It’s because the share button is the same button as on a Xbox controller, just on PlayStation its hard coding only for sharing

If you don’t know what you’re talking about, just say so instead of posting something that’s objectively incorrect.

I don’t know where you got this idea, but an Xbox controller’s “view” button and a DualSense’s “create” button are, in fact, not counterparts.

As these official diagrams taken directly from the Xbox and PlayStation websites clearly indicate, the DualSense counterpart for an Xbox controller’s “view” button would be, you guessed it, the touchpad!

Please do a modicum of googling prior to posting things, thanks.

1 Like

The original thing I posted was broken but still.

It’s not „OBJECTIVELY“ correct but it is correct but still is.

There’s a website called hardware tester and you can test your gamepad/controllers on there, if you use the Share Button on a PlayStation controller you will see the B8 goes up to 1 and the touchpad the B17 will go up to 1.

If you have a Xbox controller you can plug it up or use DS4 Windows, When you press the view button on your Xbox controller or press the share button on your PlayStation Controller while using DS4, you will see that B8 will light up.

So please next time you assume, don‘t. I have coded for controllers before.

Thanks for the report! We’ll take a look.

1 Like