Keys "O" and "I" not being recognised by UserInputService

I recently came across a problem where O and I are not being recognised in userinputservice. I am not sure if its a scripting problem or a studio bug since other keys are being detected using the same code.

    print(input.KeyCode) -- priting every input type but O and I


I have tried using GameProcessed and it still does not work.

Sorry if my english is not the best, its not my native language.

Keys O and I are used for zooming out (I is to zoom in, O is to zoom out). The script may not be working due to O and I being already set to those 2 functions

1 Like

I have tried using GameProcessed but it is still not working.

Look at this solution in this post, seems the way to get around the camera zoom default binds:

1 Like

I cant find a solution to the post you sent me.

Are you going to use “I” or “O” key?

1 Like

Wierd in my link shows me solution let me repost

1 Like

I will be using both i and o buttons

Ok i edited link in my first post.

1 Like

Thank you for the help. Unfortunately the solution to that post did not solve my problem.

1 Like

This looks like a Studio-exclusive issue.

Because I and O are bound to Studio shortcuts, you need to hold Shift to bypass them. You can also uncheck “Respect Studio shortcuts when game has focus” to disable Studio shortcuts while playing.

1 Like

This will bypass the shortcut, but won’t unbind the action, if im understanding you correctly. The OP wishes to bind new actions to those keys, and the output shows that the binding is sinking. Although I did read if you use InputEnded instead of InputBegan, it recognizes the bind. Must be some bug.

Again, Studio-exclusive. OP should be able to uncheck “Respect Studio shortcuts when game has focus” and handle InputBegan for keys usually bound to shortcuts. This is not a bug, just default Studio behavior which can be disabled by unchecking the setting mentioned above. The default in-game bindings for I and O are handled by the camera module and can be replaced by other scripts with higher priority using ContextActionService:BindActionAtPriority.


After searching a little bit i discovered that this is only a studio bug/something else, and wont affect the actual gameplay.

I have tried both ContextActionService and the respect studio shortcut option but none of them solved the problem. Fortunately i discovered that the game actually works, just not in studio. But thanks for the help anyway :slight_smile:

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