🕹️ Emulate mouse and keyboard input with your gamepad in a quick, easy and highly customizable manner.
LT and RT) do not work..ini file and the application will be started automatically after launching the game.[Toggle], [Turbo], [TurboToggle], [Execute], [Combo], [Sequence] and others) and more.[MACRO] and [TEXT] modifiers.GamepadToKeyboard requires an Xinput controller (native or emulated via tools like DS4Windows, DualSenseX, x360ce, etc.).A standalone version (now renamed Joynix) is also available for users who don’t use Playnite: Joynix
On|Off the program by clicking the 1st menu item. When Enabled, the program is automatically executed after launching the defined (activated) games.Gamelist.ini (with its name, id, source and/or platform). An assignment config (gameid.ini) for that game will be created.Edit game config.Gamelist.ini by clicking the 3rd menu item. Gamelist.ini contains the games for which GamepadToKeyboard will work. When a gameid is set to 1 the game is active; when set to 0 the game is not active and GamepadToKeyboard will not be launched.UseCustomIni = 1 (editing Gamelist.ini, or through the menu panel and specifying the file in FileIni).Select custom ini file (all games).QuickIniProfile.ini you can edit a list of “favourite” configs that can be switched through Quick ini profiles (all games) item menu. The sub-menu is dynamically built: its size varies with the number of elements.GamepadToKeyboard.exe. Make sure that GamepadToKeyboard is disabled in Playnite, or that the target game is deactivated.Gamelist.ini and activates all of them.[Toggle], [Turbo], [TurboToggle][Combo]: send multiple keys at once[Execute]: run programs (e.g. notepad, calc.exe, c:\yourfolder\yourprogram.exe)[ComboAsync]: send multiple keys with a delay (defined with ComboKeysDelay)[ToggleCombo], [TurboCombo], [TurboToggleCombo][Sequence]: send keys in sequence. Similar to [ComboAsync], but ComboAsync sends and holds the keys, [Sequence] sends simple presses.AnalogToMouse = 1 (enabled by default) to move the mouse with the analog stick defined in Stick (default: Stick = RS )Shift+Ctrl+5 by default) to instantly reload the current .ini, without restarting the application.GamepadToKeyboard.config.Values you can assign to the buttons:
A..Z, 0..9, F1..F12Enter, Space, Esc, Lalt, Lshift, Lctrl, LwinLBmouse, RBmouse, MBmouse, WheelUp, WheelDown
A = [Turbo]c).,. Extra spaces are ignored (e.g A = [COMBO] c,S, L,Lbmouse).[Turbo], [TURBO] and [turbo] are equivalent).[Turbo]k and [Turbo] k are both valid).[Sequence] supports up to 15. Any additional keys are ignored.Example syntax:
| Button | Assignment | Button | Assignment | | Button | Assignment | | |
|---|---|---|---|---|---|---|---|---|
A |
Enter | Back |
F1 | LSup |
Up | |||
B |
[Turbo] Space | Start |
Esc | LSdown |
Down | |||
X |
[ComboAsync] S, Space,r | LS |
[Toggle]LShift | LSleft |
Left | |||
Y |
[COMBO]A,x,F,LBmouse | RS |
[execute] calc.exe | LSright |
Right | |||
LB |
RBmouse | Dup |
Up | RSup |
||||
RB |
LBmouse | Ddown |
Down | RSdown |
||||
LT |
Wheelup | Dleft |
Left | RSleft |
||||
RT |
WheelDown | Dright |
Right | RSright |
||||
Home |
Lwin |
| Section | Option | Values / Description |
|---|---|---|
| Mouse | AnalogToMouse | 1/0 : Turn On/Off the mouse movement via analog sticks. |
| Stick | RS/LS : Analog to use. Button assignments ignored. |
|
| Deadzoneshape | 1/2/3 : Square/Rectangular,Circular,Circular (with rescale). |
|
| DeadzoneType | 1/2/4 : Both axis/ per axis/ per direction. |
|
| (Stick)AxisInverted | 1/0 : Turn On/off axis inversion. 4 options available. |
|
| Sensitivity | Value : Mouse movement speed. |
|
| Analogs | DeadzoneType | 1/2/4/8: Both sticks/ per stick/ per axis/ per direction. |
| (Stick)AxisInverted | 1/0 : Turn On/off axis inversion. 4 options available. |
|
| Other | SendKeysTypes | 1: Game mode; 2: Desktop (with windows-style keypress delay + repeat) |
[Turbo] and other Turbo-based modifiers to Wheel, since it has dedicated repetition variables.[ComboAsync] and [Sequence] timing can be customized through their dedicated delay variables (expressed in ms).[Turbo][Combo] NOT supported).CTRLDOWN, ALTDOWN, SHIFTDOWN, LWINDOWN, RWINDOWN in the assignments. These special keys are handled through LAlt, LCtrl, RAlt, RCtrl, LWin, and RWin.GamepadTokeyboard.exe (or any associated flagged file) to your AV vendor asking for a false positive review request.If you enjoy GamepadToKeyboard, you can buy me a coffee. It will be very appreciated ;)
SPACE, ENTER, ALT, BACKSPACE, BS, DELETE, DEL, UP, DOWN, LEFT, RIGHT, HOME, END, ESCAPE, ESC, INSERT, INS, PGUP, PGDN, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TAB, PRINTSCREEN, LWIN, RWIN, NUMLOCK on, CAPSLOCK off, SCROLLLOCK toggle, BREAK, PAUSE, NUMPAD0, NUMPAD1, NUMPAD2, NUMPAD3, NUMPAD4, NUMPAD5, NUMPAD6, NUMPAD7, NUMPAD8, NUMPAD9, NUMPADMULT, NUMPADADD, NUMPADSUB, NUMPADDIV, NUMPADDOT, NUMPADENTER, APPSKEY, LALT, RALT, LCTRL, RCTRL, LSHIFT, RSHIFT, SLEEP, ASC nnnn, BROWSER_BACK, BROWSER_FORWARD, BROWSER_REFRESH, BROWSER_STOP, BROWSER_SEARCH, BROWSER_FAVORITES, BROWSER_HOME, VOLUME_MUTE, VOLUME_DOWN, VOLUME_UP, MEDIA_NEXT, MEDIA_PREV, MEDIA_STOP, MEDIA_PLAY_PAUSE, LAUNCH_MAIL, LAUNCH_MEDIA, LAUNCH_APP1, LAUNCH_APP2, OEM_102
This gamepad script was written in AutoIt.
The program makes use of a remodified version of the XInput UDF by Oxin8 (xoninx@gmail.com) to read Xinput states.