Gamepad Vibration Persists Despite Inactive Input

When a gamepad is connected to the PC and used in, the gamepad’s vibration feature activates consistently, even if the player is actively using keyboard and mouse inputs. This results in unnecessary vibration when the gamepad is not in use, such as when it is placed on a desk, causing a distracting and disruptive experience. For example, during gameplay with a keyboard and mouse, the gamepad continues to vibrate in response to in-game events, despite no input being provided through the gamepad. This behavior appears to occur because does not differentiate between active input devices and applies vibration to the gamepad regardless of the player’s current input method.

Expected behavior

should detect the active input device (e.g., gamepad, keyboard, or mouse) and only trigger gamepad vibration when the gamepad is actively being used for input. If the player is using a keyboard and mouse, the gamepad vibration should be disabled to prevent unnecessary activation.

This is intentional from what I know, so this should be a feature request. Not that you can make a feature request, cause you can’t, I’m just saying.

That aside, how would you go about saying if a controller/gamepad is not active?

The obvious solution to me is if the player doesn’t press a button on the gamepad past a certain time frame, maybe 5 mins.

Issue is, players can pause my single player game and might want to come back after doing something. Maybe getting some laundry out of the dryer or using the bathroom, right. If players did get their controllers disconnected after a certain timeframe, I think that’d cause more issues than solve problems.

Of course, Bluetooth connection running on battery is different than wired connection. That’s a hardware situation though, not Roblox. Xbox, PlayStation, and other controller have that automatic turning off/disconnection when on battery power.

1 Like

I get where you’re coming from with the timeout idea, but I don’t think it’s the right fix for this. The issue isn’t about the gamepad being “inactive” for too long—it’s that Roblox is triggering vibration even when I’m clearly using my keyboard or mouse. There’s already an API, GetLastInputType, that can tell whether the gamepad is the active input device. Roblox should just check this before firing off vibrations. Expecting developers to manually check GetLastInputType for every vibration event feels like a band-aid when the engine could handle it automatically.

1 Like