KEYBOARD.INI
Maps registered command names to integer keyboard identifiers.
- Kind
- Configuration file
- Filename
KEYBOARD.INI
Each assignment in [Hotkey] binds a key to a command. The name before = is the command’s exact registered name, including its case. The value is a keyboard identifier: the key’s Windows virtual-key code, plus 256 for Shift, 512 for Control and 1024 for Alt.
[Hotkey]SelectView=577 ; A with ControlToggleRepair=338 ; R with ShiftScatterObject=88 ; XA command name can appear only once in the section, so the file gives each command at most one key. If a name is repeated, the later value is used.
The game reads the file at startup. A loose KEYBOARD.INI in the game directory replaces one inside an archive. An entry is ignored if its command name is not registered or its value is 0.
A file that holds at least one section header replaces all current bindings. If no KEYBOARD.INI is found, or the file has no section header, the current bindings stay. At startup that leaves only the built-in keys described below.
The keyboard dialog saves the bindings the player accepts to a loose KEYBOARD.INI, and canceling it discards the changes. Its reset control deletes the loose file at once, even if the dialog is then canceled, and reads KEYBOARD.INI again. The bindings are replaced only if the game still finds one, such as a copy inside an archive.
After reading the file at startup, the game binds Delete to DeleteWaypoint and Escape to Options. If the file binds either key, one binding for that key is removed, so a key the file binds once goes only to the built-in command. A key the file gives either command is kept, so that command can have two keys.
At startup the game also binds Enter to ChatToAll and Backspace to ChatToAllies, each only when the file binds neither that command nor that key. A file that binds the command to another key, or gives the key to another command, keeps its binding.
Source files
Linked at revision 51b52aa38392.
History
- Changed0.2.0In development
Message your team, or the other observers, and choose who a line reaches
- Changed0.2.0In development