Oolite Keyboard Controls
Contents
Default Key Assignments
Key assignments are stored in the file keyconfig.plist
. This file, by default, is in the following location:
- Linux:
/usr/lib/GNUstep/Applications/oolite.app/Resources/Config/keyconfig.plist
- Windows:
C:\Oolite\oolite.app\Resources\Config\keyconfig.plist
- (was C:\Program Files\Oolite\... before 1.73.x) - Mac OS-X: In “Extras” folder, or in
Oolite.app/Contents/Resources/Config/keyconfig.plist
++Please Note: All characters in capitals are shift + character, i.e. R = shift + r.++
++Additional: the column labelled BBC, refers to the alternate BBC keyboard controls.++
Flight Controls
Action | Keyconfig Entry | Key | Keycode (Dec) | Keycode (Hex) | BBC Key | Notes |
---|---|---|---|---|---|---|
Roll Left | key_roll_left | Left arrow | 253 | FD | , | Roll anticlockwise. |
Roll Right | key_roll_right | Right arrow | 252 | FC | . | Roll clockwise. |
Pitch Forward | key_pitch_forward | Up arrow | 255 | FF | s | Pitch down (dive). |
Pitch Back | key_pitch_back | Down arrow | 254 | FE | x | Pitch up (climb). |
Yaw Left | key_yaw_left | , | 44 | 2C | Left arrow | Yaw (turn) left. |
Yaw Right | key_yaw_right | . | 46 | 2E | Right arrow | Yaw (turn) right. |
Increase Speed | key_increase_speed | w | 119 | 77 | Space | Speed increase. |
Inject Fuel | key_inject_fuel | i | 105 | 69 | i | Witchspace Fuel Injectors. Only available when equipment installed. |
Decrease Speed | key_decrease_speed | s | 115 | 73 | / | Speed decrease. |
Activate Ident System | key_ident_system | r | 114 | 72 | r | Activate Ident System. |
Deactivate Ident system | key_untarget_missile | u | 117 | 75 | u | NB: This is the same action as "Deactivate Missile-targeting system". |
Launch Escape Pod | key_launch_escapepod | Esc | 27 | 1B | Esc | Requires an Escape Pod to be fitted. |
Jumpdrive | key_jumpdrive | j | 106 | 6A | j | Cannot activate when close to planets or ships. |
Hyperspace | key_hyperspace | h | 104 | 68 | h | Requires a hyperspace-capable ship. |
Galactic Hyperspace | key_galactic_hyperspace | g | 103 | 67 | g | Must have a Galactic Hyperdrive fitted. |
Ask for docking clearance | key_docking_clearance_request | L | 76 | 4C | L | The targeted station will give you clearance (or not). Carriers might stop when giving clearance. |
Autopilot | key_autopilot | c | 99 | 63 | c | Requires Docking Computer. Slow-docking. |
Autodock | key_autodock | C | 68 | 44 | C | Requires Docking Computer. Instant-docking. |
Combat Controls
Action | Keyconfig Entry | Key | Keycode (Dec) | Keycode (Hex) | BBC Key | Notes |
---|---|---|---|---|---|---|
Toggle Weapons On/Off | key_weapons_online_toggle | _ | 95 | 5f | _ | Toggle weapon lockdown (laser and turrets). |
Fire Lasers | key_fire_lasers | a | 97 | 61 | a | Fire laser in current view (if installed). |
Activate Missile-targeting system | key_target_missile | t | 116 | 74 | t | Activate Missile-targeting system. |
Deactivate Missile-targeting system | key_untarget_missile | u | 117 | 75 | u | Deactivate Missile-targeting system. |
Launch Missile | key_launch_missile | m | 109 | 6D | m | Launch Missile or Mine. |
Next Missile | key_next_missile | y | 121 | 79 | y | Multi-Targeting System required in Oolite versions before 1.74. |
Cycle forward between targets | key_next_target | + | 43 | 2B | + | Target System Memory Upgrade required. |
Cycle backward between targets | key_previous_target | - | 45 | 2D | - | Target System Memory Upgrade required. |
Activate ECM | key_ecm | e | 101 | 65 | e | ECM System required. |
Target nearest incoming missile | key_target_incoming_missile | T | 84 | 54 | e | |
Energy Bomb | key_energy_bomb | Tab ("\t") | 9 | 09 | Tab | Energy Bomb required. (Strict mode only from v1.77 on.) |
Toggle cloaking device | key_cloaking_device | 0 | 48 | 30 | 0 | Cloaking Device required. |
In-Flight Controls
Action | Keyconfig Entry | Key | Keycode (Dec) | Keycode (Hex) | BBC Key | Notes |
---|---|---|---|---|---|---|
Dump Cargo | key_dump_cargo | d | 100 | 64 | d | |
Cycle cargo to dump | key_rotate_cargo | R | 82 | 52 | R | |
Prime optional equipment | key_prime_equipment | N | 78 | 4e | N | From Oolite v1.76. Requires OXP-installed equipment (not in core game). |
Activate optional equipment | key_activate_equipment | n | 110 | 6e | n | From Oolite v1.76. Requires OXP-installed equipment (not in core game). |
Activate optional equipment secondary function | key_mode_equipment | b | 98 | 62 | b | From Oolite v1.77. Requires OXP-installed equipment (not in core game). |
Scanner Zoom | key_scanner_zoom | z | 122 | 7A | z | |
Reset Scanner Zoom | key_scanner_unzoom | Z | 90 | 5A | Z | |
Next Compass Target | key_next_compass_mode | \ or # | 92 | 5C | \ | |
Previous Compass Target | key_prev_compass_mode | | | 124 | 7C | | | Oolite V1.77 or later. |
Comms Log | key_comms_log | ` | 96 | 60 | ` |
|
Map Controls
Action | Keyconfig Entry | Key | Keycode (Dec) | Keycode (Hex) | BBC Key | Notes |
---|---|---|---|---|---|---|
Advanced Navigational Array | key_advanced_nav_array | ^ | 94 | 5E | ^ | In Galactic-Chart Mode: Hold down to activate, release to deactivate. |
Map Home | key_map_home | Home or ↖ | 302 | 12E | O | In Galactic-Chart Mode: Selects your current system. |
Map Info | key_map_info | i | 105 | 69 | i | In Galactic-Chart Mode: Additional system information while held down. |
Misc. Controls
Action | Keyconfig Entry | Key | Keycode (Dec) | Keycode (Hex) | BBC Key | Notes |
---|---|---|---|---|---|---|
Docking Music Toggle | key_docking_music | s | 115 | 73 | q | Only if Docking Computer fitted! |
Cycle through external views | key_custom_view | v | 118 | 76 | v | |
Take a Snapshot | key_snapshot | * (shift+8) | 42 | 2A | * (shift+8) | Written to $HOME/oolite-saves. |
Toggle Hud | key_hud_toggle | o | 111 | 6F | o | Oolite 1.76 or later (replaces fixed debug key). Useful for screen dumps. |
Pause Game | key_pausebutton | p | 112 | 70 | p | |
Toggle Mouse Control | key_mouse_control | M | 77 | 4D | M | When activated, the mouse becomes a virtual joystick (in full screen mode only). The left mouse button fires and the right re-centres your ship. |
Display Frame Rate | key_show_fps | F | 70 | 46 | F | Displays frame rate, object- and collision-counter and player's pwm-coordinates. (Only available in test releases.) |
Dump Target State | key_dump_target_state | H | 72 | 48 | H | Writes a detailed dump of your current target to the logfile. If no target is chosen, the player's state will be dumped. (Only available in test releases.) |
Debugging Keys
The following keys only work while you have paused the game by pressing p. Most of them will dump debug-messages to Oolite's logfile. This is highly useful for debugging OXPs or helping to debug Oolite.
Action | Key | Notes |
---|---|---|
Entity Dump | 0 (zero) | Writes a list of all entities in your current system to the logfile. Useful e.g. to find out whether a certain ship exists. |
Collision Debug | b | Enables collision test debugging. |
Octree Debug | c | Enables octree debugging, which will print the line “DEBUG Octrees collide!” in the logfile whenever two objects collide. |
Complete Debug | d | Enables all debug flags. |
Shader Debug | s | Enables shader debug messages. |
Entity Boxes | x | Enables drawing of bounding boxes around all entities in the game. |
Planet Textures | t | Turns on the experimental on-the-fly generation of planet textures. Dock and launch or hyperjump to see the effect. This feature is still under development and may produce unintended results. Therefore it is disabled in Oolite 1.69.1. |
Switch off HUD | o | Switches off the HUD. |
End Debugging | n | Disables all debug flags and the textured planets. Switches the HUD back on. |
Changing Key Assignments
If you want to change key assignments don't alter the default file. Instead, create a 'Config' folder in your local AddOns folder, and copy keyconfig.plist
into it, then edit the copy:
- Linux:
~/.Oolite/AddOns
- Windows (except Vista):
C:\Program Files\Oolite\AddOns
- Windows Vista:
C:\Oolite\AddOns
- Mac OS-X:
~/Library/Application Support/Oolite/AddOns
You can edit keyconfig.plist
with any standard text editor. In Oolite 1.65 and earlier, keys are specified as key codes. You'll find a list of Linux keycodes here. Note that Oolite uses decimal values whereas most keycodes are expressed in hexadecimal. This can cause confusion. For example the comma key produces a keycode of 2C (hex) which translates to 44 (decimal), whereas keycode 44 (hex) refers to the uppercase "D" key, which is actually 68 (decimal)! (If you don't have a hex/decimal calculator handy try this table or this online converter.)
In current test releases, key assignments can be specified as text instead.
If you can't be bothered with manual editing try Keyconfig - a small helper for creating your personal keymapping for Oolite 1.76+.
Numeric Keypads
Oolite does not make use of the numeric keypad. This ensures the game is playable on laptops. However, since some players may wish to make use of it, here are the keycodes for all the numeric pad keys.
Key Name | Keycode (Dec) | Keycode (Hex) | Suggested keyconfig.plist usage |
---|---|---|---|
gvArrowKeyRight | 252 | FC | 252; // gvArrowKeyRight |
gvArrowKeyLeft | 253 | FD | 253; // gvArrowKeyLeft |
gvArrowKeyDown | 254 | FE | 254; // gvArrowKeyDown |
gvArrowKeyUp | 255 | FF | 255; // gvArrowKeyUp |
gvHomeKey | 303 | 12F | 303; // gvHomeKey |
gvEndKey | 304 | 130 | 304; // gvEndKey |
gvInsertKey | 305 | 131 | 305; // gvInsertKey |
gvDeleteKey | 306 | 132 | 306; // gvDeleteKey |
gvPageUpKey | 307 | 133 | 307; // gvPageUpKey |
gvPageDownKey | 308 | 134 | 308; // gvPageDownKey |
gvNumberPadKey0 | 310 | 136 | 310; // gvNumberPadKey0 |
gvNumberPadKey1 | 311 | 137 | 311; // gvNumberPadKey1 |
gvNumberPadKey2 | 312 | 138 | 312; // gvNumberPadKey2 |
gvNumberPadKey3 | 313 | 139 | 313; // gvNumberPadKey3 |
gvNumberPadKey4 | 314 | 13A | 314; // gvNumberPadKey4 |
gvNumberPadKey5 | 315 | 13B | 315; // gvNumberPadKey5 |
gvNumberPadKey6 | 316 | 13C | 316; // gvNumberPadKey6 |
gvNumberPadKey7 | 317 | 13D | 317; // gvNumberPadKey7 |
gvNumberPadKey8 | 318 | 13E | 318; // gvNumberPadKey8 |
gvNumberPadKey9 | 319 | 13F | 319; // gvNumberPadKey9 |
Classic Elite keyboard controls
In the original BBC version, you could control your ship with the following controls: S and X to dive and climb; < and > (well "," and ".") to roll left and right; and A to fire the lasers.
Here are a couple of download links to grab the keyconfig.plist file that you need to change the keys.
- Classic Elite keyboard config hosted on Berlios.
- Classic Elite keyboard config alternative hosting on Box.com. Includes a Readme with installation Instructions and a list of the keys.
Download one of these files, put it into a Config folder, and put that in your AddOns folder.
Silly Keyboard Tricks
- Change
key_launch_missile
to 112. Now you'll need to hit "p" to launch a missile - which also pauses the game. You'll sometimes get a nice snapshot of the departing missile!