Q. What is it?
A. It’s a ModuleScript! I’ve taken the entire UserInputService library and made it into a ModuleScript.
Q. Why?
A. Now that it’s a developer level module, you can alter/customize it any way you please. My original motivation for making the module was because I felt like the UserInputService was missing some very key functions. I’ve taken the liberty of adding those functions at the bottom of the module. This module includes three new unique functions: GetImageForKeyCode(), GetThumbstickPosition(), and GetTriggerPosition(). I’ve also improved the GetMouseDelta() and GetMouseLocation() functions.
Pros:
Complete freedom to make custom functions, modifications, and properties for the UserInputService.
Cons:
Because it’s a module, it acts as a middle-man between your code and the service. This means it’ll run slightly slower than just calling the service functions directly.
It’s entirely manually written, so if a new feature comes to the UserInputService in the future, this module will need to be updated to include it.
Making this module was very tedious so if you want to see other services module-ified you’ll need to do it yourself or just bug me about it non-stop.
Here it is: