Issue Type: Other
Impact: Moderate
Frequency: Constantly
Date First Experienced:
Date Last Experienced:
Reproduction Steps:
This bug only affects users using the Windows 10 App, with a gamepad controller.
Scripts using UserInputService.LastInputTypeChanged will fire Enum.UserInputType.Keyboard and Enum.UserInputType.Gamepad1 simultaneously when any button on the controller is pressed, or any thumbstick is moved.
Here’s a repro file:
userinputservicebug.rbxl (21.6 KB)
Expected Behavior:
What is supposed to happen is only Enum.UserInputType.Gamepad1 should be firing when I press buttons and move the thumbsticks around. For as long as I use the same input device, Enum.UserInputType.Gamepad1 should only be fired a total of once.
Actual Behavior:
Instead, this event is spammed with Enum.UserInputType.Keyboard then Enum.UserInputType.Gamepad1.
Workaround:
UserInputService.InputChanged is not affected, but that creates some additional work for me.
EDIT: Another workaround I found is by checking if #UserInputService:GetKeysPressed() == 0 when I’m given Enum.UserInputType.Keyboard.