-
Notifications
You must be signed in to change notification settings - Fork 0
Control mappings
Genshin Impact uses Rewired as underlying input system. Rewired is using so-called "Controller maps", which are just fancy XMLs with buttons/axis definitions.
It's pretty convenient that all mappings are shown in Genshin's settings after they are added - so you can bind attack to keyboard button, for example, and then rebind it from Genshin Impact in-game settings.
There are a few steps in the chain between player's thought and a game action.
- Player presses a button on the controller
- Controller's button is translated to element identifier ID
- Action element map is being used to match that ID to the action ID
- Game receives action ID and does it.
Part of the config
"_overrideControllerMapKeyList": [
"OverrideControllerMap__d74a350e-fe8b-4e9e-bbcd-efff16d34115__2000000",
"OverrideControllerMap__d74a350e-fe8b-4e9e-bbcd-efff16d34115__2001000",
"OverrideControllerMap__00000000-0000-0000-0000-000000000000__0"
],
"_overrideControllerMapValueList": [
<?xml version="1.0" encoding="utf-16"?>
<JoystickMap dataVersion="2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://guavaman.com/rewired http://guavaman.com/schemas/rewired/1.1/KeyboardMap.xsd"
xmlns="http://guavaman.com/rewired"> <sourceMapId>9</sourceMapId>
<categoryId>0</categoryId>
<layoutId>0</layoutId>
<name></name>
<hardwareGuid>d74a350e-fe8b-4e9e-bbcd-efff16d34115</hardwareGuid>
<enabled>true</enabled>
<buttonMaps>
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>5</actionId>
<elementType>1</elementType>
<elementIdentifierId>13</elementIdentifierId>
<axisRange>0</axisRange>
...
The _overrideControllerMapKeyList
has a list of controller overrides. They look like OverrideControllerMap__{Controller ID}__{Yet unknown number}
. For every value, there must be a matching controller in _overrideControllerMapValueList
that contain the keybindings definitions.
Controller is defined like this:
<?xml version="1.0" encoding="utf-16"?>
<JoystickMap dataVersion="2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://guavaman.com/rewired http://guavaman.com/schemas/rewired/1.1/KeyboardMap.xsd" xmlns="http://guavaman.com/rewired">
<sourceMapId>9</sourceMapId>
<categoryId>0</categoryId>
<layoutId>0</layoutId>
<name></name>
<hardwareGuid>d74a350e-fe8b-4e9e-bbcd-efff16d34115</hardwareGuid>
<enabled>true</enabled>
<buttonMaps>
<!--List of ActionElementMap for buttons-->
</buttonMaps>
<axisMaps>
<!--List of ActionElementMap for buttons-->
</axisMaps>
</JoystickMap>
JoystickMap
is used for gamepads, KeyboardMap
- for keyboard, and MouseMap
for mouse. KeyboardMap
has no axis maps.
Elements breakdown:
Name | Value | Description |
---|---|---|
sourceMapId | ? | ? |
categoryId | 0-1? | ? |
layoutId | 0? | ? |
name | Empty | ? |
hardwareGuid | UUID | UUID of the device, 0's for keyboard |
enabled | true | Status? |
buttonMaps | List of ActionElementMap | Button mappings |
axisMaps | List of ActionElementMap | Axis mappings, absent on keyboard |
Every controller has it's own ID for the game to discriminate it from the others.
Name | UUID | Controller Number | Map Name |
---|---|---|---|
XInput Gamepad | d74a350e-fe8b-4e9e-bbcd-efff16d34115 | 2000xxx | JoystickMap |
Keyboard | 00000000-0000-0000-0000-000000000000 | 0 | KeyboardMap |
Mouse | 00000000-0000-0000-0000-000000000000 | 1000xxx | MouseMap |
Yes, mouse can be remapped too! However, base actions probably can't be changed, so there always would be Attack
and Sprint
. But you can change buttons for them and map mouse custom buttons to actions.
If you want to use mouse, first enable dev mode. Then, use Controls - Add mouse controller to add the mouse, and restart the configurator.
"Add mouse" button
After that, you can configure mouse bindings from the GUI.
Example mouse config
<?xml version="1.0" encoding="utf-16"?>
<MouseMap dataVersion="2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://guavaman.com/rewired http://guavaman.com/schemas/rewired/1.1/MouseMap.xsd"
xmlns="http://guavaman.com/rewired"> <sourceMapId>0</sourceMapId>
<categoryId>0</categoryId>
<layoutId>0</layoutId>
<name></name>
<hardwareGuid>00000000-0000-0000-0000-000000000000</hardwareGuid>
<enabled>true</enabled>
<buttonMaps>
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>16</actionId>
<elementType>1</elementType>
<elementIdentifierId>3</elementIdentifierId>
<axisRange>0</axisRange>
<invert>false</invert>
<axisContribution>0</axisContribution>
<keyboardKeyCode>0</keyboardKeyCode>
<modifierKey1>0</modifierKey1>
<modifierKey2>0</modifierKey2>
<modifierKey3>0</modifierKey3>
<enabled>true</enabled>
</ActionElementMap>
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>57</actionId>
<elementType>1</elementType>
<elementIdentifierId>5</elementIdentifierId>
<axisRange>1</axisRange>
<invert>false</invert>
<axisContribution>0</axisContribution>
<keyboardKeyCode>0</keyboardKeyCode>
<modifierKey1>0</modifierKey1>
<modifierKey2>0</modifierKey2>
<modifierKey3>0</modifierKey3>
<enabled>true</enabled>
</ActionElementMap>
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>138</actionId>
<elementType>1</elementType>
<elementIdentifierId>4</elementIdentifierId>
<axisRange>0</axisRange>
<invert>false</invert>
<axisContribution>0</axisContribution>
<keyboardKeyCode>0</keyboardKeyCode>
<modifierKey1>0</modifierKey1>
<modifierKey2>0</modifierKey2>
<modifierKey3>0</modifierKey3>
<enabled>true</enabled>
</ActionElementMap>
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>139</actionId>
<elementType>1</elementType>
<elementIdentifierId>3</elementIdentifierId>
<axisRange>0</axisRange>
<invert>false</invert>
<axisContribution>0</axisContribution>
<keyboardKeyCode>0</keyboardKeyCode>
<modifierKey1>0</modifierKey1>
<modifierKey2>0</modifierKey2>
<modifierKey3>0</modifierKey3>
<enabled>true</enabled>
</ActionElementMap>
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>21</actionId>
<elementType>1</elementType>
<elementIdentifierId>4</elementIdentifierId>
<axisRange>0</axisRange>
<invert>false</invert>
<axisContribution>0</axisContribution>
<keyboardKeyCode>0</keyboardKeyCode>
<modifierKey1>0</modifierKey1>
<modifierKey2>0</modifierKey2>
<modifierKey3>0</modifierKey3>
<enabled>true</enabled>
</ActionElementMap>
</buttonMaps>
<axisMaps>
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>30</actionId>
<elementType>0</elementType>
<elementIdentifierId>0</elementIdentifierId>
<axisRange>0</axisRange>
<invert>false</invert>
<axisContribution>0</axisContribution>
<keyboardKeyCode>0</keyboardKeyCode>
<modifierKey1>0</modifierKey1>
<modifierKey2>0</modifierKey2>
<modifierKey3>0</modifierKey3>
<enabled>true</enabled>
</ActionElementMap>
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>31</actionId>
<elementType>0</elementType>
<elementIdentifierId>1</elementIdentifierId>
<axisRange>0</axisRange>
<invert>false</invert>
<axisContribution>0</axisContribution>
<keyboardKeyCode>0</keyboardKeyCode>
<modifierKey1>0</modifierKey1>
<modifierKey2>0</modifierKey2>
<modifierKey3>0</modifierKey3>
<enabled>true</enabled>
</ActionElementMap>
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>54</actionId>
<elementType>0</elementType>
<elementIdentifierId>2</elementIdentifierId>
<axisRange>0</axisRange>
<invert>false</invert>
<axisContribution>0</axisContribution>
<keyboardKeyCode>0</keyboardKeyCode>
<modifierKey1>0</modifierKey1>
<modifierKey2>0</modifierKey2>
<modifierKey3>0</modifierKey3>
<enabled>true</enabled>
</ActionElementMap>
</axisMaps>
</MouseMap>
This is the IDs of controller's buttons. Fresh ones can be found here. There are CSV files which has relationships between element identifier IDs and physical keys.
Keyboard Element Identifiers
Button | Element Identifier |
---|---|
0 | None |
A | 1 |
B | 2 |
C | 3 |
D | 4 |
E | 5 |
F | 6 |
G | 7 |
H | 8 |
I | 9 |
J | 10 |
K | 11 |
L | 12 |
M | 13 |
N | 14 |
O | 15 |
P | 16 |
Q | 17 |
R | 18 |
S | 19 |
T | 20 |
U | 21 |
V | 22 |
W | 23 |
X | 24 |
Y | 25 |
Z | 26 |
0 | 27 |
1 | 28 |
2 | 29 |
3 | 30 |
4 | 31 |
5 | 32 |
6 | 33 |
7 | 34 |
8 | 35 |
9 | 36 |
Numpad 0 | 37 |
Numpad 1 | 38 |
Numpad 2 | 39 |
Numpad 3 | 40 |
Numpad 4 | 41 |
Numpad 5 | 42 |
Numpad 6 | 43 |
Numpad 7 | 44 |
Numpad 8 | 45 |
Numpad 9 | 46 |
Numpad . | 47 |
Numpad / | 48 |
Numpad * | 49 |
Numpad - | 50 |
Numpad + | 51 |
Space | 54 |
Backspace | 55 |
Tab | 56 |
Clear | 57 |
Enter | 58 |
Pause | 59 |
ESC | 60 |
' | 66 |
, | 71 |
- | 72 |
. | 73 |
/ | 74 |
; | 76 |
= | 78 |
[ | 82 |
\ | 83 |
] | 84 |
~ | 87 |
Delete | 88 |
Arrow Up | 89 |
Arrow Down | 90 |
Arrow Right | 91 |
Arrow Left | 92 |
Insert | 93 |
Home | 94 |
End | 95 |
Page Up | 96 |
Page Down | 97 |
F1 | 98 |
F2 | 99 |
F3 | 100 |
F4 | 101 |
F5 | 102 |
F6 | 103 |
F7 | 104 |
F8 | 105 |
F9 | 106 |
F10 | 107 |
F11 | 108 |
F12 | 109 |
F13 | 110 |
F14 | 111 |
F15 | 112 |
NumLock | 113 |
CapsLock | 114 |
ScrollLock | 115 |
Right Shift | 116 |
Left Shift | 117 |
Right Ctrl | 118 |
Left Ctrl | 119 |
Right Alt | 120 |
Left Alt | 121 |
Left Win | 124 |
Right Win | 125 |
Help | 127 |
128 |
XBox Gamepad Element Identifiers
Button | Element Identifier |
---|---|
Left Stick X | 0 |
Left Stick Y | 1 |
Right Stick X | 2 |
Right Stick Y | 3 |
Left Trigger | 4 |
Right Trigger | 5 |
A | 6 |
B | 7 |
X | 8 |
Y | 9 |
Left Shoulder | 10 |
Right Shoulder | 11 |
Back | 12 |
Start | 13 |
Left Stick Button | 14 |
Right Stick Button | 15 |
D-Pad Up | 16 |
D-Pad Right | 17 |
D-Pad Down | 18 |
D-Pad Left | 19 |
Left Stick | 20 |
Right Stick | 21 |
Guide | 22 |
DualShock/DualSense Gamepad Element Identifiers
Button | Element Identifier |
---|---|
Left Stick X | 0 |
Left Stick Y | 1 |
Right Stick X | 2 |
Right Stick Y | 3 |
Left Trigger | 4 |
Right Trigger | 5 |
Cross | 6 |
Circle | 7 |
Square | 8 |
Triangle | 9 |
Left Shoulder | 10 |
Right Shoulder | 11 |
Share | 12 |
Options | 13 |
PS Button | 14 |
Touchpad Button | 15 |
Left Stick Button | 16 |
Right Stick Button | 17 |
D-Pad Up | 18 |
D-Pad Right | 19 |
D-Pad Down | 20 |
D-Pad Left | 21 |
Left Stick | 22 |
Right Stick | 23 |
Mute | 24 |
Mouse Element Identifiers
Button | Element Identifier |
---|---|
Mouse Horizontal | 0 |
Mouse Vertical | 1 |
Mouse Wheel | 2 |
Left Mouse Button | 3 |
Right Mouse Button | 4 |
Middle Mouse Button | 5 |
Mouse 4 | 6 |
Mouse 5 | 7 |
Mouse 6 | 8 |
Mouse 7 | 9 |
Mouse Wheel Horizontal | 10 |
Example element
<ActionElementMap>
<actionCategoryId>0</actionCategoryId>
<actionId>5</actionId>
<elementType>1</elementType>
<elementIdentifierId>13</elementIdentifierId>
<axisRange>0</axisRange>
<invert>false</invert>
<axisContribution>0</axisContribution>
<keyboardKeyCode>0</keyboardKeyCode>
<modifierKey1>0</modifierKey1>
<modifierKey2>0</modifierKey2>
<modifierKey3>0</modifierKey3>
<enabled>true</enabled>
</ActionElementMap>
Single key or axis mapping.
Name | Value | Description |
---|---|---|
actionCategoryId | 0 | ?, not used |
actionId | int | Action ID |
elementType | 0-1 | 0 for axis, 1 for button |
elementIdentifierId | int | Button code |
axisRange | 0 | Sometimes different than 0, but appears unused |
invert | false | Invert (for axis) |
axisContribution | 0 | Sometimes different than 0, but appears unused |
keyboardKeyCode | 0 | Appears unused |
modifierKey1 | 0-3 | 0 - no modifier, 1 - Ctrl, 2 - Alt, 3 - Shift |
modifierKey2 | 0-3 | Same, second modifier |
modifierKey3 | 0-3 | Same, third modifier (Something like Ctrl+Alt+Shift+Z is possible) |
enabled | true | Control enabled |
In-game actions and their IDs.
Genshin Impact 2.4 disassembled actions
public static class Action // TypeDefIndex: 30656
{
// Fields
[ActionIdFieldInfo] // 0x0000000180187CE0-0x0000000180187D20
public const int MOVE_HORIZONTAL = 0; // Metadata: 0x00AF2434
[ActionIdFieldInfo] // 0x000000018018F480-0x000000018018F4C0
public const int MOVE_VERTICAL = 1; // Metadata: 0x00AF2438
[ActionIdFieldInfo] // 0x0000000180195B00-0x0000000180195B40
public const int PICK_TALK = 22; // Metadata: 0x00AF243C
[ActionIdFieldInfo] // 0x000000018019CAA0-0x000000018019CAE0
public const int OPEN_PAIMON = 5; // Metadata: 0x00AF2440
[ActionIdFieldInfo] // 0x00000001801A3500-0x00000001801A3540
public const int VIEW_HORIZONTAL = 30; // Metadata: 0x00AF2444
[ActionIdFieldInfo] // 0x00000001801A9DA0-0x00000001801A9DE0
public const int VIEW_VERTICAL = 31; // Metadata: 0x00AF2448
[ActionIdFieldInfo] // 0x00000001801B05D0-0x00000001801B0610
public const int LEFT_SHOULDER = 34; // Metadata: 0x00AF244C
[ActionIdFieldInfo] // 0x00000001801B70A0-0x00000001801B70E0
public const int RIGHT_SHOULDER = 35; // Metadata: 0x00AF2450
[ActionIdFieldInfo] // 0x00000001801BD590-0x00000001801BD5D0
public const int MENU_BACK = 42; // Metadata: 0x00AF2454
[ActionIdFieldInfo] // 0x00000001801C39E0-0x00000001801C3A20
public const int MENU_CONFIRM = 40; // Metadata: 0x00AF2458
[ActionIdFieldInfo] // 0x00000001801CA1F0-0x00000001801CA230
public const int MENU_LEFT = 41; // Metadata: 0x00AF245C
[ActionIdFieldInfo] // 0x00000001801D0F00-0x00000001801D0F40
public const int MENU_UP = 63; // Metadata: 0x00AF2460
[ActionIdFieldInfo] // 0x00000001801D7720-0x00000001801D7760
public const int LEFT_TRIGGER = 51; // Metadata: 0x00AF2464
[ActionIdFieldInfo] // 0x00000001801DE0E0-0x00000001801DE120
public const int RIGHT_TRIGGER = 52; // Metadata: 0x00AF2468
[ActionIdFieldInfo] // 0x00000001801E4CD0-0x00000001801E4D10
public const int SLIP = 53; // Metadata: 0x00AF246C
[ActionIdFieldInfo] // 0x00000001801EB920-0x00000001801EB960
public const int ZOOM_CAMERA = 54; // Metadata: 0x00AF2470
[ActionIdFieldInfo] // 0x00000001801F21C0-0x00000001801F2200
public const int SLOW_MOVE = 55; // Metadata: 0x00AF2474
[ActionIdFieldInfo] // 0x00000001801F8800-0x00000001801F8840
public const int CHANGE_WITH_SKILL = 56; // Metadata: 0x00AF2478
[ActionIdFieldInfo] // 0x00000001801FF110-0x00000001801FF150
public const int RESET_CAMERA = 57; // Metadata: 0x00AF247C
[ActionIdFieldInfo] // 0x0000000180206230-0x0000000180206270
public const int DEBUG_MENU = 58; // Metadata: 0x00AF2480
[ActionIdFieldInfo] // 0x000000018020CE90-0x000000018020CED0
public const int QUEST_TRANSPORT = 18; // Metadata: 0x00AF2484
[ActionIdFieldInfo] // 0x00000001802133F0-0x0000000180213430
public const int MENU_RIGHT = 71; // Metadata: 0x00AF2488
[ActionIdFieldInfo] // 0x0000000180219CA0-0x0000000180219CE0
public const int MENU_DOWN = 72; // Metadata: 0x00AF248C
[ActionIdFieldInfo] // 0x0000000180220550-0x0000000180220590
public const int CHALLENGE_INTERRUPT = 84; // Metadata: 0x00AF2490
[ActionIdFieldInfo] // 0x0000000180226F70-0x0000000180226FB0
public const int CHALLENGE_INTERRUPT_JOYSTICK = 85; // Metadata: 0x00AF2494
[ActionIdFieldInfo] // 0x000000018022D870-0x000000018022D8B0
public const int MENUNEXT = 123; // Metadata: 0x00AF2498
[ActionIdFieldInfo] // 0x0000000180234080-0x00000001802340C0
public const int OPENTEAMPAGE = 131; // Metadata: 0x00AF249C
[ActionIdFieldInfo] // 0x000000018023ACB0-0x000000018023ACF0
public const int OPENFRIENDPAGE = 132; // Metadata: 0x00AF24A0
[ActionIdFieldInfo] // 0x0000000180241370-0x00000001802413B0
public const int MOUSELEFTBUTTON = 138; // Metadata: 0x00AF24A4
[ActionIdFieldInfo] // 0x0000000180247FA0-0x0000000180247FE0
public const int MOUSERIGHTBUTTON = 139; // Metadata: 0x00AF24A8
[ActionIdFieldInfo] // 0x000000018024E450-0x000000018024E490
public const int HOMEWORLD_CREATECUSTOMSUITE_JOYSTICK = 141; // Metadata: 0x00AF24AC
[ActionIdFieldInfo] // 0x0000000180255010-0x0000000180255050
public const int SKILL1 = 16; // Metadata: 0x00AF24B0
[ActionIdFieldInfo] // 0x000000018025B6A0-0x000000018025B6E0
public const int SKILL2 = 17; // Metadata: 0x00AF24B4
[ActionIdFieldInfo] // 0x0000000180261FA0-0x0000000180261FE0
public const int SPRINT_OR_SKILL3 = 21; // Metadata: 0x00AF24B8
[ActionIdFieldInfo] // 0x0000000180268900-0x0000000180268940
public const int JUMP_OR_SKILL4 = 15; // Metadata: 0x00AF24BC
[ActionIdFieldInfo] // 0x000000018026F2A0-0x000000018026F2E0
public const int SKILL5 = 20; // Metadata: 0x00AF24C0
[ActionIdFieldInfo] // 0x0000000180276470-0x00000001802764B0
public const int QUICKUSE = 87; // Metadata: 0x00AF24C4
[ActionIdFieldInfo] // 0x000000018027C870-0x000000018027C8B0
public const int ACTIVITYSKILL = 88; // Metadata: 0x00AF24C8
[ActionIdFieldInfo] // 0x0000000180282E50-0x0000000180282E90
public const int EXTRASELECTUP = 89; // Metadata: 0x00AF24CC
[ActionIdFieldInfo] // 0x0000000180289730-0x0000000180289770
public const int EXTRASELECTDOWN = 90; // Metadata: 0x00AF24D0
[ActionIdFieldInfo] // 0x000000018028FEC0-0x000000018028FF00
public const int EXTRASELECTLEFT = 91; // Metadata: 0x00AF24D4
[ActionIdFieldInfo] // 0x00000001802964A0-0x00000001802964E0
public const int EXTRASELECTRIGHT = 92; // Metadata: 0x00AF24D8
[ActionIdFieldInfo] // 0x000000018029CA80-0x000000018029CAC0
public const int TO_AVATAR1 = 7; // Metadata: 0x00AF24DC
[ActionIdFieldInfo] // 0x00000001802A4090-0x00000001802A40D0
public const int TO_AVATAR2 = 8; // Metadata: 0x00AF24E0
[ActionIdFieldInfo] // 0x00000001802AA800-0x00000001802AA840
public const int TO_AVATAR3 = 9; // Metadata: 0x00AF24E4
[ActionIdFieldInfo] // 0x00000001802B1070-0x00000001802B10B0
public const int OPEN_MAP = 2; // Metadata: 0x00AF24E8
[ActionIdFieldInfo] // 0x00000001802B7AC0-0x00000001802B7B00
public const int OPEN_CHARACTER = 3; // Metadata: 0x00AF24EC
[ActionIdFieldInfo] // 0x00000001802BEA40-0x00000001802BEA80
public const int OPEN_BAG = 4; // Metadata: 0x00AF24F0
[ActionIdFieldInfo] // 0x00000001802C52B0-0x00000001802C52F0
public const int TOGGLE_QUEST_BOOK = 6; // Metadata: 0x00AF24F4
[ActionIdFieldInfo] // 0x00000001802CBAF0-0x00000001802CBB30
public const int TOGGLE_ATTACK_MODE = 27; // Metadata: 0x00AF24F8
[ActionIdFieldInfo] // 0x00000001802D2370-0x00000001802D23B0
public const int HELP = 10; // Metadata: 0x00AF24FC
[ActionIdFieldInfo] // 0x00000001802D8A80-0x00000001802D8AC0
public const int MULTIPLAYER = 65; // Metadata: 0x00AF2500
[ActionIdFieldInfo] // 0x00000001802DF590-0x00000001802DF5D0
public const int TO_AVATAR4 = 66; // Metadata: 0x00AF2504
[ActionIdFieldInfo] // 0x00000001802E5DE0-0x00000001802E5E20
public const int OPEN_GACHA = 73; // Metadata: 0x00AF2508
[ActionIdFieldInfo] // 0x00000001802EC430-0x00000001802EC470
public const int OPEN_CHAT = 75; // Metadata: 0x00AF250C
[ActionIdFieldInfo] // 0x00000001802F2B60-0x00000001802F2BA0
public const int OPEN_NOTIFY = 76; // Metadata: 0x00AF2510
[ActionIdFieldInfo] // 0x00000001802F8EB0-0x00000001802F8EF0
public const int OPEN_DUNGEON_FACTOR = 77; // Metadata: 0x00AF2514
[ActionIdFieldInfo] // 0x00000001802FF690-0x00000001802FF6D0
public const int TO_AVATAR5 = 78; // Metadata: 0x00AF2518
[ActionIdFieldInfo] // 0x0000000180305C90-0x0000000180305CD0
public const int OPENHANDBOOK = 79; // Metadata: 0x00AF251C
[ActionIdFieldInfo] // 0x000000018030C370-0x000000018030C3B0
public const int TRACKQUEST = 80; // Metadata: 0x00AF2520
[ActionIdFieldInfo] // 0x0000000180312890-0x00000001803128D0
public const int OPENPUSHTIPS = 81; // Metadata: 0x00AF2524
[ActionIdFieldInfo] // 0x0000000180318F20-0x0000000180318F60
public const int OPENACTIVITYNORMAL = 82; // Metadata: 0x00AF2528
[ActionIdFieldInfo] // 0x000000018031FB00-0x000000018031FB40
public const int OPENBATTLEPASS = 83; // Metadata: 0x00AF252C
[ActionIdFieldInfo] // 0x0000000180326170-0x00000001803261B0
public const int HIDE = 86; // Metadata: 0x00AF2530
[ActionIdFieldInfo] // 0x000000018032C800-0x000000018032C840
public const int F1 = 124; // Metadata: 0x00AF2534
[ActionIdFieldInfo] // 0x0000000180333140-0x0000000180333180
public const int F2 = 125; // Metadata: 0x00AF2538
[ActionIdFieldInfo] // 0x00000001803396C0-0x0000000180339700
public const int F3 = 126; // Metadata: 0x00AF253C
[ActionIdFieldInfo] // 0x000000018033FC80-0x000000018033FCC0
public const int RETURN = 127; // Metadata: 0x00AF2540
[ActionIdFieldInfo] // 0x0000000180346820-0x0000000180346860
public const int OPENHOMEWORLDHANDBOOK = 129; // Metadata: 0x00AF2544
[ActionIdFieldInfo] // 0x000000018034CFA0-0x000000018034CFE0
public const int OPENHOMEWORLDEDITOR = 130; // Metadata: 0x00AF2548
[ActionIdFieldInfo] // 0x0000000180353830-0x0000000180353870
public const int OBJECTTURNUP = 133; // Metadata: 0x00AF254C
[ActionIdFieldInfo] // 0x0000000180359B90-0x0000000180359BD0
public const int OBJECTTURNDOWN = 134; // Metadata: 0x00AF2550
[ActionIdFieldInfo] // 0x0000000180360730-0x0000000180360770
public const int OBJECTTURNLEFT = 135; // Metadata: 0x00AF2554
[ActionIdFieldInfo] // 0x0000000180366F00-0x0000000180366F40
public const int OBJECTTURNRIGHT = 136; // Metadata: 0x00AF2558
[ActionIdFieldInfo] // 0x000000018036D330-0x000000018036D370
public const int ENTER_FOCUS_MODE = 28; // Metadata: 0x00AF255C
[ActionIdFieldInfo] // 0x0000000180374B70-0x0000000180374BB0
public const int CHANGE_AVATAR_TRIGGER = 33; // Metadata: 0x00AF2560
[ActionIdFieldInfo] // 0x000000018037B4E0-0x000000018037B520
public const int RIGHT_STICK_BUTTON = 19; // Metadata: 0x00AF2564
[ActionIdFieldInfo] // 0x0000000180381BB0-0x0000000180381BF0
public const int LEFT_STICK_BUTTON = 67; // Metadata: 0x00AF2568
[ActionIdFieldInfo] // 0x0000000180387110-0x0000000180387150
public const int MOVE = 29; // Metadata: 0x00AF256C
[ActionIdFieldInfo] // 0x000000018038F1B0-0x000000018038F1F0
public const int VIEW = 32; // Metadata: 0x00AF2570
[ActionIdFieldInfo] // 0x0000000180395C80-0x0000000180395CC0
public const int MOVE_FORWARD_SHOW = 23; // Metadata: 0x00AF2574
[ActionIdFieldInfo] // 0x000000018039C5D0-0x000000018039C610
public const int MOVE_LEFT_SHOW = 24; // Metadata: 0x00AF2578
[ActionIdFieldInfo] // 0x00000001803A2EE0-0x00000001803A2F20
public const int MOVE_RIGHT_SHOW = 25; // Metadata: 0x00AF257C
[ActionIdFieldInfo] // 0x00000001803A95F0-0x00000001803A9630
public const int MOVE_BACKWARD_SHOW = 26; // Metadata: 0x00AF2580
[ActionIdFieldInfo] // 0x00000001803AFB90-0x00000001803AFBD0
public const int LEFT_STICK_UP = 47; // Metadata: 0x00AF2584
[ActionIdFieldInfo] // 0x00000001803B74A0-0x00000001803B74E0
public const int LEFT_STICK_RIGHT = 48; // Metadata: 0x00AF2588
[ActionIdFieldInfo] // 0x00000001803E9DF0-0x00000001803E9E30
public const int LEFT_STICK_DOWN = 49; // Metadata: 0x00AF258C
[ActionIdFieldInfo] // 0x00000001803C35A0-0x00000001803C35E0
public const int LEFT_STICK_LEFT = 50; // Metadata: 0x00AF2590
[ActionIdFieldInfo] // 0x00000001803CA380-0x00000001803CA3C0
public const int DPAD_UP = 43; // Metadata: 0x00AF2594
[ActionIdFieldInfo] // 0x00000001803D0C40-0x00000001803D0C80
public const int DPAD_RIGHT = 44; // Metadata: 0x00AF2598
[ActionIdFieldInfo] // 0x00000001803D7100-0x00000001803D7140
public const int DPAD_DOWN = 45; // Metadata: 0x00AF259C
[ActionIdFieldInfo] // 0x00000001803DDB70-0x00000001803DDBB0
public const int DPAD_LEFT = 46; // Metadata: 0x00AF25A0
[ActionIdFieldInfo] // 0x00000001803E9DF0-0x00000001803E9E30
public const int RIGHT_STICK_UP = 59; // Metadata: 0x00AF25A4
[ActionIdFieldInfo] // 0x00000001803E9DF0-0x00000001803E9E30
public const int RIGHT_STICK_RIGHT = 60; // Metadata: 0x00AF25A8
[ActionIdFieldInfo] // 0x00000001803E9DF0-0x00000001803E9E30
public const int RIGHT_STICK_DOWN = 61; // Metadata: 0x00AF25AC
[ActionIdFieldInfo] // 0x00000001803E9DF0-0x00000001803E9E30
public const int RIGHT_STICK_LEFT = 62; // Metadata: 0x00AF25B0
[ActionIdFieldInfo] // 0x00000001803FA490-0x00000001803FA4D0
public const int RIGHT_STICK_VERTICAL = 64; // Metadata: 0x00AF25B4
[ActionIdFieldInfo] // 0x0000000180400E90-0x0000000180400ED0
public const int RIGHT_STICK_HORIZONTAL = 68; // Metadata: 0x00AF25B8
[ActionIdFieldInfo] // 0x0000000180407370-0x00000001804073B0
public const int LEFT_STICK_HORIZONTAL = 69; // Metadata: 0x00AF25BC
[ActionIdFieldInfo] // 0x000000018040DB70-0x000000018040DBB0
public const int LEFT_STICK_VERTICAL = 70; // Metadata: 0x00AF25C0
[ActionIdFieldInfo] // 0x0000000180414040-0x0000000180414080
public const int LEFT_STICK_MOVE = 128; // Metadata: 0x00AF25C4
[ActionIdFieldInfo] // 0x000000018041A750-0x000000018041A790
public const int RIGHT_STICK_MOVE = 137; // Metadata: 0x00AF25C8
[ActionIdFieldInfo] // 0x0000000180420F90-0x0000000180420FD0
public const int MUSICGAME_LEFT_UP = 94; // Metadata: 0x00AF25CC
[ActionIdFieldInfo] // 0x00000001804285E0-0x0000000180428620
public const int MUSICGAME_LEFT_RIGHT = 95; // Metadata: 0x00AF25D0
[ActionIdFieldInfo] // 0x000000018042EE90-0x000000018042EED0
public const int MUSICGAME_LEFT_DOWN = 96; // Metadata: 0x00AF25D4
[ActionIdFieldInfo] // 0x00000001804356B0-0x00000001804356F0
public const int MUSICGAME_LEFT_LEFT = 97; // Metadata: 0x00AF25D8
[ActionIdFieldInfo] // 0x000000018043BC20-0x000000018043BC60
public const int MUSICGAME_RIGHT_UP = 98; // Metadata: 0x00AF25DC
[ActionIdFieldInfo] // 0x00000001804428E0-0x0000000180442920
public const int MUSICGAME_RIGHT_RIGHT = 99; // Metadata: 0x00AF25E0
[ActionIdFieldInfo] // 0x0000000180449570-0x00000001804495B0
public const int MUSICGAME_RIGHT_DOWN = 100; // Metadata: 0x00AF25E4
[ActionIdFieldInfo] // 0x000000018044FD30-0x000000018044FD70
public const int MUSICGAME_RIGHT_LEFT = 101; // Metadata: 0x00AF25E8
[ActionIdFieldInfo] // 0x0000000180456850-0x0000000180456890
public const int MUSICGAMEFREE1 = 102; // Metadata: 0x00AF25EC
[ActionIdFieldInfo] // 0x000000018045CCE0-0x000000018045CD20
public const int MUSICGAMEFREE2 = 103; // Metadata: 0x00AF25F0
[ActionIdFieldInfo] // 0x0000000180002F30-0x0000000180002F70
public const int MUSICGAMEFREE3 = 104; // Metadata: 0x00AF25F4
[ActionIdFieldInfo] // 0x0000000180009340-0x0000000180009380
public const int MUSICGAMEFREE4 = 105; // Metadata: 0x00AF25F8
[ActionIdFieldInfo] // 0x000000018000FAF0-0x000000018000FB30
public const int MUSICGAMEFREE5 = 106; // Metadata: 0x00AF25FC
[ActionIdFieldInfo] // 0x0000000180015FB0-0x0000000180015FF0
public const int MUSICGAMEFREE6 = 107; // Metadata: 0x00AF2600
[ActionIdFieldInfo] // 0x000000018001C760-0x000000018001C7A0
public const int MUSICGAMEFREE7 = 108; // Metadata: 0x00AF2604
[ActionIdFieldInfo] // 0x00000001800235D0-0x0000000180023610
public const int MUSICGAMEFREE8 = 109; // Metadata: 0x00AF2608
[ActionIdFieldInfo] // 0x000000018002A2D0-0x000000018002A310
public const int MUSICGAMEFREE9 = 110; // Metadata: 0x00AF260C
[ActionIdFieldInfo] // 0x0000000180030B90-0x0000000180030BD0
public const int MUSICGAMEFREE10 = 111; // Metadata: 0x00AF2610
[ActionIdFieldInfo] // 0x0000000180037220-0x0000000180037260
public const int MUSICGAMEFREE11 = 112; // Metadata: 0x00AF2614
[ActionIdFieldInfo] // 0x000000018003D950-0x000000018003D990
public const int MUSICGAMEFREE12 = 113; // Metadata: 0x00AF2618
[ActionIdFieldInfo] // 0x0000000180044250-0x0000000180044290
public const int MUSICGAMEFREE13 = 114; // Metadata: 0x00AF261C
[ActionIdFieldInfo] // 0x000000018004AB30-0x000000018004AB70
public const int MUSICGAMEFREE14 = 115; // Metadata: 0x00AF2620
[ActionIdFieldInfo] // 0x00000001800516C0-0x0000000180051700
public const int MUSICGAMEFREE15 = 116; // Metadata: 0x00AF2624
[ActionIdFieldInfo] // 0x0000000180057DB0-0x0000000180057DF0
public const int MUSICGAMEFREE16 = 117; // Metadata: 0x00AF2628
[ActionIdFieldInfo] // 0x000000018005E7F0-0x000000018005E830
public const int MUSICGAMEFREE17 = 118; // Metadata: 0x00AF262C
[ActionIdFieldInfo] // 0x00000001800651A0-0x00000001800651E0
public const int MUSICGAMEFREE18 = 119; // Metadata: 0x00AF2630
[ActionIdFieldInfo] // 0x000000018006B910-0x000000018006B950
public const int MUSICGAMEFREE19 = 120; // Metadata: 0x00AF2634
[ActionIdFieldInfo] // 0x0000000180073060-0x00000001800730A0
public const int MUSICGAMEFREE20 = 121; // Metadata: 0x00AF2638
[ActionIdFieldInfo] // 0x0000000180079CE0-0x0000000180079D20
public const int MUSICGAMEFREE21 = 122; // Metadata: 0x00AF263C
}
Action | ID |
---|---|
Side Movement | 0 |
Forward Movement | 1 |
Camera: Horizontal | 30 |
Camera: Vertical | 31 |
Camera: Zoom | 54 |
Jump | 15 |
Attack | 16 |
Elemental Skill | 17 |
Elemental Burst | 20 |
Sprint | 21 |
Aim Mode | 27 |
Aim Button | 28 |
Cancel Climb | 53 |
Walk / Run | 55 |
Show Cursor | 56 |
Elemental Sight | 57 |
Navigation | 80 |
Gadget | 87 |
Interaction (some modes) | 88 |
Map | 2 |
Character List | 3 |
Inventory | 4 |
Menu (Gamepad) | 5 |
Quest List | 6 |
Use / Talk | 22 |
Quick Wheel | 33 |
Chat | 75 |
Notification Details | 76 |
Environment Info | 77 |
Tutorial | 81 |
Abandon Challenge | 84 |
Abandon Challenge (Gamepad) | 85 |
Party Setup | 131 |
Friends | 132 |
Photo: Hide UI | 86 |
Item Info | 19 |
Top Menu: Left | 34 |
Top Menu: Right | 35 |
Menu Select | 40 |
Auxiliary Action | 41 |
Secondary Action | 63 |
Menu / Back | 42 |
Menu: Up | 47 |
Menu: Right | 48 |
Menu: Down | 49 |
Menu: Left | 50 |
Less | 51 |
More | 52 |
Lock Item / Mark Map | 67 |
D-Pad Up | 43 |
D-Pad Right | 44 |
D-Pad Down | 45 |
D-Pad Left | 46 |
Adventurer Handbook | 10 |
Co-Op | 65 |
Wish | 73 |
Events | 82 |
Battle Pass | 83 |
Pot Tasks | 129 |
Pot Edit | 130 |
Music: Left Up | 94 |
Music: Left Right | 95 |
Music: Left Down | 96 |
Music: Left Left | 97 |
Music: Right Up | 98 |
Music: Right Right | 99 |
Music: Right Down | 100 |
Music: Right Left | 101 |
Music: Note 1-1 | 102 |
Music: Note 1-2 | 103 |
Music: Note 1-3 | 104 |
Music: Note 1-4 | 105 |
Music: Note 1-5 | 106 |
Music: Note 1-6 | 107 |
Music: Note 1-7 | 108 |
Music: Note 2-1 | 109 |
Music: Note 2-2 | 110 |
Music: Note 2-3 | 111 |
Music: Note 2-4 | 112 |
Music: Note 2-5 | 113 |
Music: Note 2-6 | 114 |
Music: Note 2-7 | 115 |
Music: Note 3-1 | 116 |
Music: Note 3-2 | 117 |
Music: Note 3-3 | 118 |
Music: Note 3-4 | 119 |
Music: Note 3-5 | 120 |
Music: Note 3-6 | 121 |
Music: Note 3-7 | 122 |
Char 1 | 7 |
Char 2 | 8 |
Chat 3 | 9 |
Char 4 | 66 |
Char 5 | 78 |
Elemental Burst on keyboard is a combination of Show cursor and Char X. There is no direct mapping for it.
Actions, that have known mappings, but still not known in-game
Action | ID |
---|---|
Quest transport | 18 |
Move Forward: Show | 23 |
Move Left: Show | 24 |
Move Right: Show | 25 |
Move Back: Show | 26 |
Move | 29 |
View | 32 |
Debug Menu | 58 |
Right Stick Up | 59 |
Right Stick Right | 60 |
Right Stick Down | 61 |
Right Stick Left | 62 |
Right Stick Vertical | 64 |
Right Stick Horizontal | 68 |
Left Stick Horizontal | 69 |
Left Stick Vertical | 70 |
Menu Right | 71 |
Menu Down | 72 |
Adventurer Handbook? | 79 |
Extra Up | 89 |
Extra Down | 90 |
Extra Left | 91 |
Extra Right | 92 |
F1 | 124 |
F2 | 125 |
F3 | 126 |
Return | 127 |
Left Stick Move | 128 |
Pot Object: Up | 133 |
Pot Object: Down | 134 |
Pot Object: Left | 135 |
Pot Object: Right | 136 |
Right Stick Move | 137 |
LMB | 138 |
RMB | 139 |
Pot: Create Custom Suite | 141 |
Camera Up | 142 |
Camera Down | 143 |
Pot: Float Mode | 144 |
Pot: Deploy | 145 |
Arrow Up | 146 |
Arrow Down | 147 |
Arrow Right | 148 |
Arrow Left | 149 |
? | 150 |
? | 151 |
? | 152 |
? | 153 |
? | 154 |
? | 155 |