alter_hut: When I change key bindings in the settings, they are not saved no matter what I do (click "X" button, press ESC,...)
The post
PC Keybinds - PLEASE FIX SO THEY CAN BE CHANGED ALREADY suggests that it's a v1.190 issue.
Also, could someone please share their "prefs" file after changing the key bindings? (e.g. "~/.config/unity3d/AtomTeam/Atom/prefs") Maybe it works if I copy&paste the relevant lines into my own prefs file.
Within
$HOME/.config/unity3d/AtomTeam/Atom/prefs, each string (key) is Base64-encoded. While running an older version (1.182, as I have not played in years), I had bound each valid key of my keyboard to a function. Afterwards, I had simply decoded each Base64 string, and while cross-referencing with game [Controls] section (refer to
this,
this, and
this), I had determined the correct associations. Upon testing, it had been confirmed that the modified 'prefs' file is properly parsed in version 1.190 (as expected).
Below, I have listed information gathered through analysis. You may continue to use your current prefs file; simply add the relevant line(s) containing
InputManager (prefixed with a tab). Do
not concern yourself with line order, as the game engine (Unity) will automatically re-sort each line.
The following is a list of each useable key (on my keyboard, at the very least) and the respective Base64-encoded string:
None (no binding) Tm9uZQ==
F1 RjE=
F2 RjI=
F3 RjM=
F4 RjQ=
F5 RjU=
F6 RjY=
F7 Rjc=
F8 Rjg=
F9 Rjk=
F10 RjEw
F11 RjEx
F12 RjEy
Alpha0 QWxwaGEw
Alpha1 QWxwaGEx
Alpha2 QWxwaGEy
Alpha3 QWxwaGEz
Alpha4 QWxwaGE0
Alpha5 QWxwaGE1
Alpha6 QWxwaGE2
Alpha7 QWxwaGE3
Alpha8 QWxwaGE4
Alpha9 QWxwaGE5
A QQ==
B Qg==
C Qw==
D RA==
E RQ==
F Rg==
G Rw==
H SA==
I SQ==
J Sg==
K Sw==
L TA==
M TQ==
N Tg==
O Tw==
P UA==
Q UQ==
R Ug==
S Uw==
T VA==
U VQ==
V Vg==
W Vw==
X WA==
Y WQ==
Z Wg==
BackQuote QmFja1F1b3Rl
Minus TWludXM=
Equals RXF1YWxz
Tab VGFi
LeftBracket TGVmdEJyYWNrZXQ=
RightBracket UmlnaHRCcmFja2V0
Backslash QmFja3NsYXNo
CapsLock Q2Fwc0xvY2s=
Semicolon U2VtaWNvbG9u
Quote UXVvdGU=
Comma Q29tbWE=
Period UGVyaW9k
Slash U2xhc2g=
LeftShift TGVmdFNoaWZ0
RightShift UmlnaHRTaGlmdA==
Space U3BhY2U=
Menu TWVudQ==
LeftControl TGVmdENvbnRyb2w=
RightControl UmlnaHRDb250cm9s
LeftAlt TGVmdEFsdA==
RightAlt UmlnaHRBbHQ=
LeftCommand TGVmdENvbW1hbmQ=
RightApple UmlnaHRBcHBsZQ==
Pause UGF1c2U=
203 (Scroll Lock) MjAz
Print UHJpbnQ=
Insert SW5zZXJ0
Home SG9tZQ==
End RW5k
PageUp UGFnZVVw
PageDown UGFnZURvd24=
UpArrow VXBBcnJvdw==
DownArrow RG93bkFycm93
LeftArrow TGVmdEFycm93
RightArrow UmlnaHRBcnJvdw==
Keypad0 S2V5cGFkMA==
Keypad1 S2V5cGFkMQ==
Keypad2 S2V5cGFkMg==
Keypad3 S2V5cGFkMw==
Keypad4 S2V5cGFkNA==
Keypad5 S2V5cGFkNQ==
Keypad6 S2V5cGFkNg==
Keypad7 S2V5cGFkNw==
Keypad8 S2V5cGFkOA==
Keypad9 S2V5cGFkOQ==
Numlock TnVtbG9jaw==
KeypadDivide S2V5cGFkRGl2aWRl
KeypadMultiply S2V5cGFkTXVsdGlwbHk=
KeypadPlus S2V5cGFkUGx1cw==
KeypadMinus S2V5cGFkTWludXM=
Default bindings in same order as depicted within game settings:
Forward
<pref name="InputManager Camera_W" type="string">Vw==</pref>
<pref name="InputManager Camera_W Alt" type="string">Tm9uZQ==</pref>
Back
<pref name="InputManager Camera_S" type="string">Uw==</pref>
<pref name="InputManager Camera_S Alt" type="string">Tm9uZQ==</pref>
Right
<pref name="InputManager Camera_D" type="string">RA==</pref>
<pref name="InputManager Camera_D Alt" type="string">Tm9uZQ==</pref>
Left
<pref name="InputManager Camera_A" type="string">QQ==</pref>
<pref name="InputManager Camera_A Alt" type="string">Tm9uZQ==</pref>
Rotate left
<pref name="InputManager Camera_Q" type="string">UQ==</pref>
<pref name="InputManager Camera_Q Alt" type="string">Tm9uZQ==</pref>
Rotate right
<pref name="InputManager Camera_E" type="string">RQ==</pref>
<pref name="InputManager Camera_E Alt" type="string">Tm9uZQ==</pref>
Zoom in
<pref name="InputManager Camera_F" type="string">Rg==</pref>
<pref name="InputManager Camera_F Alt" type="string">Tm9uZQ==</pref>
Zoom out
<pref name="InputManager Camera_V" type="string">Vg==</pref>
<pref name="InputManager Camera_V Alt" type="string">Tm9uZQ==</pref>
Inventory
<pref name="InputManager Inventory" type="string">VGFi</pref>
<pref name="InputManager Inventory Alt" type="string">Tm9uZQ==</pref>
Map
<pref name="InputManager Map" type="string">TQ==</pref>
<pref name="InputManager Map Alt" type="string">Tm9uZQ==</pref>
Journal
<pref name="InputManager Journal" type="string">Sg==</pref>
<pref name="InputManager Journal Alt" type="string">Tm9uZQ==</pref>
Rest
<pref name="InputManager Clock" type="string">VA==</pref>
<pref name="InputManager Clock Alt" type="string">Tm9uZQ==</pref>
Change Weapon
<pref name="InputManager ChangeWeapon" type="string">Qg==</pref>
<pref name="InputManager ChangeWeapon Alt" type="string">Tm9uZQ==</pref>
Reload
<pref name="InputManager ReloadWeapon" type="string">Ug==</pref>
<pref name="InputManager ReloadWeapon Alt" type="string">Tm9uZQ==</pref>
Attack Mode
<pref name="InputManager SwitchWeaponMode" type="string">Tg==</pref>
<pref name="InputManager SwitchWeaponMode Alt" type="string">Tm9uZQ==</pref>
Characteristics
<pref name="InputManager Chars" type="string">Qw==</pref>
<pref name="InputManager Chars Alt" type="string">Tm9uZQ==</pref>
Take All
<pref name="InputManager TakeAll" type="string">WA==</pref>
<pref name="InputManager TakeAll Alt" type="string">Tm9uZQ==</pref>
Quick Save
<pref name="InputManager QuickSave" type="string">RjU=</pref>
<pref name="InputManager QuickSave Alt" type="string">Tm9uZQ==</pref>
Quick Load
<pref name="InputManager QuickLoad" type="string">Rjk=</pref>
<pref name="InputManager QuickLoad Alt" type="string">Tm9uZQ==</pref>
Target Select
<pref name="InputManager SelectTarget" type="string">TGVmdENvbnRyb2w=</pref>
<pref name="InputManager SelectTarget Alt" type="string">UmlnaHRDb250cm9s</pref>
Items Highlight
<pref name="InputManager Highlight" type="string">Wg==</pref>
<pref name="InputManager Highlight Alt" type="string">UmlnaHRBbHQ=</pref>
End Turn
<pref name="InputManager SkipTurn" type="string">U3BhY2U=</pref>
<pref name="InputManager SkipTurn Alt" type="string">Tm9uZQ==</pref>
Cam. To Player
<pref name="InputManager Cam2Player" type="string">SG9tZQ==</pref>
<pref name="InputManager Cam2Player Alt" type="string">Tm9uZQ==</pref>
Lock/Unlock Cam.
<pref name="InputManager CameraLock" type="string">MjAz</pref>
<pref name="InputManager CameraLock Alt" type="string">Tm9uZQ==</pref>
Time And Date
<pref name="InputManager DataTime" type="string">U2xhc2g=</pref>
<pref name="InputManager DataTime Alt" type="string">Tm9uZQ==</pref>
Information
<pref name="InputManager Info" type="string">SQ==</pref>
<pref name="InputManager Info Alt" type="string">Tm9uZQ==</pref>
Unlock
<pref name="InputManager Lockpick" type="string">VQ==</pref>
<pref name="InputManager Lockpick Alt" type="string">Tm9uZQ==</pref>
Pickpocket
<pref name="InputManager Pickpocket" type="string">UA==</pref>
<pref name="InputManager Pickpocket Alt" type="string">Tm9uZQ==</pref>
Repair
<pref name="InputManager Repair" type="string">Tm9uZQ==</pref>
<pref name="InputManager Repair Alt" type="string">Tm9uZQ==</pref>
Edit: Corrected a mistake.