Enum.KeyCode.ButtonSelect Doesn't Fire With Controller

Repro place: https://www.roblox.com/games/305183273/Generic-Mobile-Testing

This is a bit of an interesting situation. Last Christmas, I got a NVIDIA Shield K1 Tablet with a NVIDIA Wireless controller. For the most part, the controller works fine, but a critical issue it faces is the back button/select button doesn’t fire the UserInputService because it toggles the menu on the actual OS version. This prevents the gui selection unable to work when using the controller, where it works fine on desktop Roblox.

TL;DR: NVIDIA Tablets support controllers, back button that fires Enum.KeyCode.ButtonSelect doesn’t work because of default behavior of back button on tablet.

Edit: Also appears tools don’t activate when using the right trigger on a controller.

1 Like

Is there even something that can be done about this? It really sounds like a poor design choice on nvidia’s end. Why aren’t they using the system home button? Why are they expecting developers to not use the select button? Weird.

I actually think something can be done. Using the back button on mobile is over-ridden to display the leave game dialog, and I think there is something to detect if the input is from a controller since we have Enum.UserInputType.Controller_, but I am not sure.

Sorry to bump, but this is still not fixed. Admin word if this is fixable or not would be nice to hear.
Also, backpack issue stated above appears to be fixed.

Can you clarify what happens? What menu is opened?

It is possible that the input isn’t being passed to the app at all. I couldn’t find any info on whether this is the case so this could mean that someone at the HQ would actually have to order the NVIDIA shield to test this. I might be wrong and it might be relatively simple to sink the input and stop the NVIDIA controller’s menu from opening though.

I have found a few threads about this online also but no good solution as far as I can see.
Geforce forums

That’s the only one with even a few possible solutions offered.

The one that open’s is Roblox’s gui after pressing “Leave game” in the standard escape menu.

Oh, right, didn’t realize it was a ROBLOX menu that opens. It seems solvable then but there could just be a problem with the way the controller is reporting the button press. Does it work as a select button in other apps?

I don’t have another app that uses it. Suggestion? (preferably a testing app rather than a game)

Looks like someone has made an app for this specific use case:

1 Like

The app shows it as Android’s back button rather than a select button.

sorry for the insanely late reply.

This doesn’t look fixable. If the Android OS reports a button as the back button, we would have to dive into figuring out what controller it is and modifying the behavior based on that. Besides the fact that we couldn’t possibly get this right for all controllers, we would now be inconsistent across different android controllers, with players expecting the back button to open the leave game menu, but on some devices it does something different.

This mostly seems like a weird choice on Nvidia’s part, I don’t know why they omitted a select button when the Android gamepad API has one (https://developer.android.com/reference/android/view/KeyEvent.html#KEYCODE_BUTTON_SELECT).

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.