Inaccurate UserInputType from InputObject on Roblox Studio

Hello staff,

While writing a supplementary solution to the issue described in my forum post, Determing Preferred Input Method: Modernized, I discovered that, while on Roblox studio, tapping the screen with a hybrid device will be read as Enum.UserInputType.MouseButton1. The same is not true on the Roblox client, where it is read correctly as Enum.UserInputType.Touch.

I have written this short script here that will help demonstrate the issue:

local UserInputService = game:GetService("UserInputService")
local TestService = game:GetService("TestService")

UserInputService.InputBegan:Connect(function(inputObject, gameProcessedEvent)
	if inputObject.UserInputType == Enum.UserInputType.MouseButton1 then
		TestService:Message(tostring(inputObject.UserInputType))
	elseif inputObject.UserInputType == Enum.UserInputType.Touch then
		warn(inputObject.UserInputType)
	else
		print(inputObject.UserInputType)
	end
end)

Here’s the video. On the left, we see Roblox Studio, and on the right, we see the Roblox client:

This problem affects developers looking to test out hybrid compatibility on studio. It has made it so that the testing I conducted in my original forum post was only possible through the client.

Thank you for reading, have a nice day!

1 Like

well yes thats supposed to happen if you are testing in studio, without device simulation. That is because mobile devices can’t create games on the studio. Now say you switch to like iphone XR in the device simulation, guess what happens, every click would now be tap!

Hi Carter,

Firstly, thank you for your response, I’m glad you are participating in the discussion! The issue is that I am not able to send tap inputs off my hybrid device when in studio even though this is completely possible off of the Roblox client. My rationale is that if studio is meant to be as accurate a testing environment as possible, small things—like this touch behaviour—should carry over.

I have written about this topic in a few other posts, where I explore how hybrid devices can be properly included in game UI design (Yes, this is still a problem with brand new games in 2026). This post came as a result of the test work I was doing, where I could only get accurate results if I played the test place through the Roblox client.

If you have any other questions, please let me know! :blush: