introduction
what is ControllerIconMapping?
ControllerIconMapping is a module i originally built for r6 emote haven for its custom proximity prompt’s console support.
it helps developers add their own custom gamepad icons for their experiences, and supports all of the current buttons that controllers have.
why should i use ControllerIconMapping?
ControllerIconMapping helps reduce the time you need on making your own icon mapping system, as this system allows you to customize all the controller icons for xbox, ps4 and ps5, using some techniques to differentiate the three controller types.
or just use it if you want idk
features
- custom gamepad icons
- ability to check what console/controller type is the player on
installation
- get the model
- place the module anywhere you like (i recommend
ReplicatedStorage) - change the attributes in the 5 different configurations to your asset id’s
- require the module in your script
- use the functions from the api and you’re good to go!
video showcase of the module
api
ControllerIconMapping:GetControllerType()
returns the current console/controller type
ControllerIconMapping:GetIcon(keyCode: Enum.Keycode)
returns the asset id associated with the given Enum.Keycode
known bugs
- unable to differentiate ButtonShare and ButtonTouchpad (roblox side issue)
support
if you would like to support development of this resource, you may… do nothing! making this resource to help everyone is already great enough for me, if you would still like to support this resource you may share it with others to use if you like it.



