Numerical inputs 1-5 don't fire UserInputService events in plugin scripts

I use UserInputService in my plugins to create keybinds for fast workflows. However, the keys 1, 2, 3, 4, and 5 keys are automatically bound to switching the user’s Select, Move, Rotate Scale, and Transform tools, and don’t appear to fire the UserInputService events as a result.

Reproduction Steps:

  1. Create a new script.
  2. Add the following code to the script -
    game:GetService("UserInputService").InputBegan:Connect(function(input: InputObject, gameProcessedEvent: boolean) print(input.KeyCode.Name) end)
  3. Save the script as a local plugin.
  4. Press the 1, 2, 3, 4 or 5 keys. Nothing will be printed to console.

System Information:
AMD Ryzen 7 1700X Eight-Core Processor
16.0 GB Memory
AMD Radeon ™ RX 580

Beta Features:
I have the Dragger QoL Improvements beta feature enabled.

Expected behavior

The 1, 2, 3, 4, and 5 keys should act the same as any other key, firing all the relevant UserInputService events. Perhaps gameProcessedEvent would be set to true, since they’re already bound to an action in Studio.

1 Like

This is just an acknowledgment announcement!

We’ve filed a ticket into our internal database for this issue, and will come back as soon as we have updates!

Thanks for flagging!

UserInputService is a game engine feature; but in Studio, our shortcut system has functions assigned to these keys. So the inputs never make it to the UserInputService.

You cannot fix this in the plugin, but on individual installations of Studio, you can use the shortcut key editor to unset the shortcuts assigned to these keys.