Difference between revisions of "Oolite Keyboard Controls"
m (Fixed emphasis markup. Noted that Next Missile key requires multi-targeting system.) |
Cholmondely (talk | contribs) (Added picture!) |
||
(55 intermediate revisions by 16 users not shown) | |||
Line 1: | Line 1: | ||
+ | [[File:Keyconfig keyboard 1 3.png|thumb|right|[[Keyconfig]]'s ''Virtual Keyboard'' <br>(for easily changing one or two key settings)]] |
||
+ | |||
+ | == Non-English language Keyboards == |
||
+ | |||
+ | * See the BB discussion [http://www.aegidian.org/bb/viewtopic.php?f=8&t=20638 here]. |
||
+ | * Keyconfig.plist for [http://www.aegidian.org/bb/viewtopic.php?p=273466#p273466 French] ''AZERTY'' keyboard (Gracieuseté du Monsieur le Commandant STyx). |
||
+ | *Keyconfig.plist for [http://www.aegidian.org/bb/viewtopic.php?p=278092#p278092 German] ''QWERTZ'' Linux keyboard (Mit reichlichem Gruß an Kommandant Freiherr von Tsoj, 2021). |
||
+ | * Keyconfig.plist for [http://bb.aegidian.org/viewtopic.php?f=9&t=21080 German] ''QWERTZ'' Linux keyboard (Genugtuung an den wundersamen und illustren Kommandanten Slartibartfast, 2021). This ''might'' work for Windows, too. |
||
+ | * Keyconfig.plist for [http://www.aegidian.org/bb/viewtopic.php?p=273475#p273475 Latin American] (Gracias al Supremo, Serendipitoso y Sereno El Señor Comandante Reval). |
||
+ | |||
+ | === Galcop Health Warning for non-English Linux Keyboards === |
||
+ | |||
+ | Problems with non-English Linux keyboard layouts have been known for ages and are not so much an Oolite issue, rather than an SDL 1.2.x one. All keyboards are treated as if they were US layout and one finds quite a few projects using SDL that have similar inconveniences. |
||
+ | |||
+ | Using SDL 1.2.x's unicode inputs seems to help, but unfortunately unicode inputs recognize only keydown events and not keyup ones. Getting this to work properly may not be impossible, but it is not straightforward either. See [http://www.aegidian.org/bb/viewtopic.php?f=3&t=20822 here]. |
||
+ | |||
+ | German Linux is listed above |
||
+ | |||
== Default Key Assignments == |
== Default Key Assignments == |
||
− | Linux users will find the following key assignments in <code> /usr/lib/Oolite/oolite.app/Contents/Resources/Config/keyconfig.plist </code> (assuming you did a default installation!). |
||
+ | Key assignments are stored in the file <code>keyconfig.plist</code>. This file, by default, is in the following location: |
||
+ | * Linux: <code>/usr/lib/GNUstep/Applications/oolite.app/Resources/Config/keyconfig.plist</code> |
||
+ | * Windows: <code>C:\Oolite\oolite.app\Resources\Config\keyconfig.plist</code> - ''(was C:\Program Files\Oolite\... before 1.73.x)'' |
||
+ | * Mac OS-X: In “Extras” folder, or in <code>Oolite.app/Contents/Resources/Config/keyconfig.plist</code> |
||
+ | |||
++'''Please Note''': All characters in capitals are shift + character, i.e. R = shift + r.++ |
++'''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 === |
||
{| border="1" cellpadding="9" align="center" |
{| border="1" cellpadding="9" align="center" |
||
|+ |
|+ |
||
|-style="background:darkslateblue; color:white" |
|-style="background:darkslateblue; color:white" |
||
− | ! Action !! Key !! Keycode (Dec) !! Keycode (Hex) !! Notes |
+ | ! width=15%"|Action !! width="20%"|Keyconfig Entry !! width="10%"|Key !! width="5%"|Keycode (Dec) !! width="5%"|Keycode (Hex) !! width="10%"|BBC Key !! width="30%"|Notes |
|-align="center" |
|-align="center" |
||
! Roll Left |
! Roll Left |
||
− | | Left arrow || 253 || FD || |
+ | | key_roll_left || Left arrow || 253 || FD || , || Roll anticlockwise. |
|-align="center" |
|-align="center" |
||
! Roll Right |
! Roll Right |
||
− | | Right arrow || 252 || FC || |
+ | | key_roll_right || Right arrow || 252 || FC || . || Roll clockwise. |
|-align="center" |
|-align="center" |
||
! Pitch Forward |
! Pitch Forward |
||
− | | Up arrow || 255 || FF || |
+ | | key_pitch_forward || Up arrow || 255 || FF || s || Pitch down (dive). |
|-align="center" |
|-align="center" |
||
! Pitch Back |
! Pitch Back |
||
− | | Down arrow || 254 || FE || |
+ | | key_pitch_back || Down arrow || 254 || FE || x || Pitch up (climb). |
+ | |-align="center" |
||
+ | ! Yaw Left |
||
+ | | key_yaw_left || , || 44 || 2C || Left arrow || Yaw (turn) left. |
||
+ | |-align="center" |
||
+ | ! Yaw Right |
||
+ | | key_yaw_right || . || 46 || 2E || Right arrow || Yaw (turn) right. |
||
|-align="center" |
|-align="center" |
||
! Increase Speed |
! Increase Speed |
||
− | | w || 119 || 77 || |
+ | | key_increase_speed || w || 119 || 77 || Space || Speed increase. |
|-align="center" |
|-align="center" |
||
! Inject Fuel |
! Inject Fuel |
||
− | | i || 105 || 69 || |
||
+ | | key_inject_fuel || i || 105 || 69 || i || Witchspace Fuel Injectors. Only available when equipment installed. |
||
|-align="center" |
|-align="center" |
||
! Decrease Speed |
! Decrease Speed |
||
− | | s || 115 || 73 || |
+ | | key_decrease_speed || s || 115 || 73 || / || Speed decrease. |
+ | |||
+ | |-align="center" |
||
+ | ! Activate Ident System |
||
+ | | key_ident_system || r || 114 || 72 || r || Activate Ident System. |
||
+ | |-align="center" |
||
+ | ! Deactivate Ident system |
||
+ | | key_untarget_missile || u || 117 || 75 || u ||NB: This is the same action as "Deactivate Missile-targeting system". |
||
+ | |||
+ | |-align="center" |
||
+ | ! Launch Escape Pod |
||
+ | | key_launch_escapepod || Esc || 27 || 1B || Esc ||Requires an Escape Pod to be fitted. |
||
+ | |||
+ | |-align="center" |
||
+ | ! Jumpdrive |
||
+ | | key_jumpdrive || j || 106 || 6A || j || Cannot activate when close to planets or ships. |
||
+ | |-align="center" |
||
+ | ! Hyperspace |
||
+ | | key_hyperspace || h || 104 || 68 || h || Requires a hyperspace-capable ship. |
||
+ | |-align="center" |
||
+ | ! Galactic Hyperspace |
||
+ | | key_galactic_hyperspace || g || 103 || 67 || g || Must have a Galactic Hyperdrive fitted. |
||
+ | |||
+ | |-align="center" |
||
+ | ! 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. |
||
+ | |-align="center" |
||
+ | ! Autopilot |
||
+ | | key_autopilot || c || 99 || 63 || c || Requires Docking Computer. Slow-docking. |
||
+ | |-align="center" |
||
+ | ! Autodock |
||
+ | | key_autodock || C || 68 || 44 || C || Requires Docking Computer. Instant-docking. |
||
+ | |||
+ | |- |
||
+ | |} |
||
+ | |||
+ | === Combat Controls === |
||
+ | {| border="1" cellpadding="9" align="center" |
||
+ | |+ |
||
+ | |-style="background:darkslateblue; color:white" |
||
+ | ! width=15%"|Action !! width="20%"|Keyconfig Entry !! width="10%"|Key !! width="5%"|Keycode (Dec) !! width="5%"|Keycode (Hex) !! width="10%"|BBC Key !! width="30%"|Notes |
||
+ | |-align="center" |
||
+ | ! Toggle Weapons On/Off |
||
+ | | key_weapons_online_toggle || _ || 95 || 5f || _ || Toggle weapon lockdown (laser and turrets). |
||
|-align="center" |
|-align="center" |
||
! Fire Lasers |
! Fire Lasers |
||
− | | a || 97 || 61 || |
||
+ | | key_fire_lasers || a || 97 || 61 || a || Fire laser in current view (if installed). |
||
|-align="center" |
|-align="center" |
||
− | ! |
+ | ! Activate Missile-targeting system |
− | | t || 116 || 74 || |
+ | | key_target_missile || t || 116 || 74 || t || Activate Missile-targeting system. |
|-align="center" |
|-align="center" |
||
− | ! |
+ | ! Deactivate Missile-targeting system |
− | | u || 117 || 75 || |
+ | | key_untarget_missile || u || 117 || 75 || u || Deactivate Missile-targeting system. |
|-align="center" |
|-align="center" |
||
! Launch Missile |
! Launch Missile |
||
− | | m || 109 || 6D || |
+ | | key_launch_missile || m || 109 || 6D || m || Launch Missile or Mine. |
|-align="center" |
|-align="center" |
||
! Next Missile |
! Next Missile |
||
− | | y || 121 || 79 || [[Multi-Targeting System]] required |
+ | | key_next_missile || y || 121 || 79 || y || [[Multi-Targeting System]] required in Oolite versions before 1.74. |
− | + | ||
− | ! Activate Ident System |
||
− | | r || 114 || 72 || |
||
|-align="center" |
|-align="center" |
||
! Cycle forward between targets |
! Cycle forward between targets |
||
− | | + || 43 || 2B || [[Target System Memory Upgrade]] required |
+ | | key_next_target || + || 43 || 2B || + || [[Target System Memory Upgrade]] required. |
|-align="center" |
|-align="center" |
||
! Cycle backward between targets |
! Cycle backward between targets |
||
− | | - || 45 || 2D || [[Target System Memory Upgrade]] required |
+ | | key_previous_target || - || 45 || 2D || - || [[Target System Memory Upgrade]] required. |
|-align="center" |
|-align="center" |
||
! Activate ECM |
! Activate ECM |
||
− | | e || 101 || 65 || |
+ | | key_ecm || e || 101 || 65 || e || ECM System required. |
|-align="center" |
|-align="center" |
||
− | ! Launch Escape Pod |
||
+ | ! Target nearest incoming missile |
||
− | | |
+ | | key_target_incoming_missile || T || 84 || 54 || e || |
+ | |||
|-align="center" |
|-align="center" |
||
− | ! Energy Bomb |
+ | ! Energy Bomb |
− | | Tab || 9 || 09 || |
+ | | key_energy_bomb || Tab ("\t") || 9 || 09 || Tab || Energy Bomb required. (Strict mode only from v1.77 on.) |
+ | |||
|-align="center" |
|-align="center" |
||
− | ! Energy Bomb (On the Mac) |
||
+ | ! Toggle cloaking device |
||
− | | 9 || ? || ? || |
||
+ | | key_cloaking_device || 0 || 48 || 30 || 0 || Cloaking Device required. |
||
+ | |||
+ | |- |
||
+ | |} |
||
+ | |||
+ | === In-Flight Controls === |
||
+ | {| border="1" cellpadding="9" align="center" |
||
+ | |+ |
||
+ | |-style="background:darkslateblue; color:white" |
||
+ | ! width=15%"|Action !! width="20%"|Keyconfig Entry !! width="10%"|Key !! width="5%"|Keycode (Dec) !! width="5%"|Keycode (Hex) !! width="10%"|BBC Key !! width="30%"|Notes |
||
+ | |||
|-align="center" |
|-align="center" |
||
− | ! Galactic Hyperspace |
||
+ | !Dump Cargo |
||
− | | |
+ | | key_dump_cargo || d || 100 || 64 || d || |
|-align="center" |
|-align="center" |
||
− | ! Emergency Hyperdrive |
||
+ | !Cycle cargo to dump |
||
− | | |
+ | | key_rotate_cargo || R || 82 || 52 || R || |
+ | |||
|-align="center" |
|-align="center" |
||
− | ! Hyperspace |
||
+ | ! Prime optional equipment |
||
− | | h || 104 || 68 || |
||
+ | | key_prime_equipment || N || 78 || 4e || N || From Oolite v1.76. Requires OXP-installed equipment (not in core game). |
||
|-align="center" |
|-align="center" |
||
− | ! Jumpdrive |
||
+ | ! Activate optional equipment |
||
− | | j || 106 || 6A || |
||
+ | | key_activate_equipment || n || 110 || 6e || n || From Oolite v1.76. Requires OXP-installed equipment (not in core game). |
||
|-align="center" |
|-align="center" |
||
− | ! Dump Cargo |
||
+ | ! Activate optional equipment secondary function |
||
− | | d || 100 || 64 || |
||
+ | | key_mode_equipment || b || 98 || 62 || b || From Oolite v1.77. Requires OXP-installed equipment (not in core game). |
||
+ | |||
|-align="center" |
|-align="center" |
||
− | !Cycle cargo to dump |
||
+ | ! Scanner Zoom |
||
− | | |
+ | | key_scanner_zoom || z || 122 || 7A || z || |
|-align="center" |
|-align="center" |
||
− | ! Autopilot |
||
+ | ! Reset Scanner Zoom |
||
− | | |
+ | | key_scanner_unzoom || Z || 90 || 5A || Z || |
|-align="center" |
|-align="center" |
||
− | ! Autodock |
||
+ | ! Next Compass Target |
||
− | | |
+ | | key_next_compass_mode || \ or # || 92 || 5C || \ || |
|-align="center" |
|-align="center" |
||
− | ! Take a Snapshot |
||
+ | ! Previous Compass Target |
||
− | | * (shift+8) || 42 || 2A || Written to $HOME/oolite-saves |
||
+ | | key_prev_compass_mode || | || 124 || 7C || | || Oolite V1.77 or later. |
||
|-align="center" |
|-align="center" |
||
− | ! Docking Music Toggle |
||
+ | ! Comms Log |
||
− | | |
+ | | key_comms_log || ` || 96 || 60 || ` || |
+ | |||
+ | |||
+ | |- |
||
+ | |} |
||
+ | |||
+ | === Map Controls (F6 screen) === |
||
+ | {| border="1" cellpadding="9" align="center" |
||
+ | |+ |
||
+ | |-style="background:darkslateblue; color:white" |
||
+ | ! width=15%"|Action !! width="20%"|Keyconfig Entry !! width="10%"|Key !! width="5%"|Keycode (Dec) !! width="5%"|Keycode (Hex) !! width="10%"|BBC Key !! width="30%"|Notes |
||
+ | |||
|-align="center" |
|-align="center" |
||
− | ! Scanner Zoom |
||
+ | ! Advanced Navigational Array |
||
− | | z || 122 || 7A || |
||
+ | | key_advanced_nav_array || ^ || 94 || 5E || ^ || In Galactic-Chart Mode: Hold down to activate, release to deactivate. |
||
− | |-align="center" |
||
− | ! Map Dump |
||
− | | ! (shift+1) || 33 || 21 || |
||
|-align="center" |
|-align="center" |
||
! Map Home |
! Map Home |
||
− | | Home || 302 || 12E || Selects your current system |
+ | | key_map_home || Home or ↖ || 302 || 12E || O || In Galactic-Chart Mode: Selects your current system. |
|-align="center" |
|-align="center" |
||
− | ! Comms Log |
||
+ | ! Map Info |
||
− | | ` || 96 || 60 || |
||
+ | | key_map_info || i || 105 || 69 || i || Toggles between names & additional system information (economy/government/TL). |
||
|-align="center" |
|-align="center" |
||
− | ! Next Compass Mode |
||
+ | ! Cycle Map Highlight |
||
− | | \ || 92 || 5C || |
||
+ | | (?) || ? || (?) || (?) || || Toggles colour of systems (sun colour/economy/government/TL). |
||
+ | |- |
||
+ | |} |
||
+ | |||
+ | === Market Controls (F8 screen) === |
||
+ | {| border="1" cellpadding="9" align="center" |
||
+ | |+ |
||
+ | |-style="background:darkslateblue; color:white" |
||
+ | ! width=15%"|Action !! width="20%"|Keyconfig Entry !! width="10%"|Key !! width="5%"|Keycode (Dec) !! width="5%"|Keycode (Hex) !! width="10%"|BBC Key !! width="30%"|Notes |
||
+ | |||
|-align="center" |
|-align="center" |
||
− | ! Display Frame Rate |
||
+ | ! Buy/sell maximum amount |
||
− | | F || 70 || 46 || Displays frame rate, object- and collision-counter and player's pwm-coordinates. |
||
+ | | ? || Enter or Return || ? || ? || ? || Once item is selected: buys/sells maximum and then sells/buys on second press |
||
|-align="center" |
|-align="center" |
||
− | ! Pause Game |
||
+ | ! Sort market goods |
||
− | | p || 112 || 70 || |
||
+ | | ? || / || ? || ? || || Toggles between default sort/alphabetical/price/quantity for sale/quantity in hold/unit mass |
||
+ | |-align="center" |
||
+ | ! Filter market goods |
||
+ | | Select market goods || ? || (?) || (?) || || Toggles between all goods/carried or in stock/carried/in stock/'legal'/'illegal'. |
||
+ | |-align="center" |
||
+ | |- |
||
|} |
|} |
||
+ | === Misc. Controls === |
||
+ | {| border="1" cellpadding="9" align="center" |
||
+ | |+ |
||
+ | |-style="background:darkslateblue; color:white" |
||
+ | ! width=15%"|Action !! width="20%"|Keyconfig Entry !! width="10%"|Key !! width="5%"|Keycode (Dec) !! width="5%"|Keycode (Hex) !! width="10%"|BBC Key !! width="30%"|Notes |
||
− | <BR> |
||
+ | |-align="center" |
||
+ | ! Docking Music Toggle |
||
+ | | key_docking_music || s || 115 || 73 || q || Only if Docking Computer fitted! |
||
+ | |-align="center" |
||
+ | ! Cycle through external views |
||
+ | | key_custom_view || v || 118 || 76 || v || |
||
+ | |-align="center" |
||
+ | ! Take a Snapshot |
||
+ | | key_snapshot || * (shift+8) || 42 || 2A || * (shift+8) || Written to $HOME/oolite-saves. |
||
+ | |-align="center" |
||
+ | ! Toggle Hud |
||
+ | | key_hud_toggle || o || 111 || 6F || o || Oolite 1.76 or later (replaces fixed debug key). Useful for screen dumps. |
||
+ | |||
+ | |-align="center" |
||
+ | ! Pause Game |
||
+ | | key_pausebutton || p || 112 || 70 || p || |
||
+ | |-align="center" |
||
+ | ! 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. |
||
+ | |||
+ | |-align="center" |
||
+ | ! 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.) |
||
+ | |-align="center" |
||
+ | ! 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.) |
||
+ | |||
+ | |- |
||
+ | |} |
||
+ | |||
+ | <br /> |
||
== Debugging Keys == |
== Debugging Keys == |
||
Line 128: | Line 209: | ||
|+ |
|+ |
||
|-style="background:darkslateblue; color:white" |
|-style="background:darkslateblue; color:white" |
||
− | ! Action !! Key !! Notes |
+ | ! width=10%"|Action !! width="10%"|Key !! width="75%"|Notes |
+ | |||
|-align="center" |
|-align="center" |
||
! Entity Dump |
! Entity Dump |
||
Line 156: | Line 237: | ||
! Planet Textures |
! 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 [http://www.aegidian.org/bb/viewtopic.php?t=3644 may produce unintended results]. Therefore it is disabled in Oolite 1.69.1. |
| 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 [http://www.aegidian.org/bb/viewtopic.php?t=3644 may produce unintended results]. Therefore it is disabled in Oolite 1.69.1. |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! Switch off HUD |
||
+ | | o || Switches off the HUD. |
||
|- |
|- |
||
|-align="center" |
|-align="center" |
||
! End Debugging |
! End Debugging |
||
− | | n || Disables all debug flags and the textured planets. |
+ | | n || Disables all debug flags and the textured planets. Switches the HUD back on. |
|- |
|- |
||
|} |
|} |
||
− | |||
<BR> |
<BR> |
||
− | |||
== Changing Key Assignments == |
== Changing Key Assignments == |
||
− | If you want to change key assignments ''don't'' alter the default file. Instead copy <code> |
+ | 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 <code>keyconfig.plist</code> into it, then edit the copy: |
− | <code> |
+ | * Linux: <code>~/.Oolite/AddOns</code> |
− | <code> |
+ | * Windows (except Vista): <code>C:\Program Files\Oolite\AddOns</code> |
− | + | * Windows Vista: <code>C:\Oolite\AddOns</code> |
|
+ | * Mac OS-X: <code>~/Library/Application Support/Oolite/AddOns</code> |
||
− | You can edit <code> |
+ | You can edit <code>keyconfig.plist</code> 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 [http://www.comptechdoc.org/os/linux/howlinuxworks/linux_hlkeycodes.html 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 [http://www.lookuptables.com/ this table] or [http://www.blooberry.com/indexdot/color/hexcalc.htm this online converter].) |
− | == Undocumented Keys == |
||
+ | In current test releases, key assignments can be specified as text instead. |
||
− | The following keys aren't yet official so your mileage may vary! |
||
+ | 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. |
||
{| border="1" cellpadding="9" align="center" |
{| border="1" cellpadding="9" align="center" |
||
|+ |
|+ |
||
|-style="background:darkslateblue; color:white" |
|-style="background:darkslateblue; color:white" |
||
− | ! |
+ | ! width=10%"|Key Name !! width="10%"|Keycode (Dec) !! width="10%"|Keycode (Hex) !! width="70%"|Suggested keyconfig.plist usage |
+ | |||
|-align="center" |
|-align="center" |
||
− | ! Toggle Mouse Control |
||
+ | ! gvArrowKeyRight |
||
− | | M || 77 || 4D || When activated, the mouse becomes a virtual joystick. (Under Linux: only in fullscreen mode) The left mouse button fires and the right should re-centre your ship. |
||
+ | | 252 || FC || 252; // gvArrowKeyRight |
||
|- |
|- |
||
|-align="center" |
|-align="center" |
||
− | ! Dump Target State |
||
+ | ! gvArrowKeyLeft |
||
− | | undefined || undefined || undefined || By inserting the key <code> key_dump_target_state </code> to your keyconfig.plist and giving it a value you get a complete dump of your current target in the logfile. If no target is chosen, the player's state will be dumped. |
||
+ | | 253 || FD || 253; // gvArrowKeyLeft |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvArrowKeyDown |
||
+ | | 254 || FE || 254; // gvArrowKeyDown |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvArrowKeyUp |
||
+ | | 255 || FF || 255; // gvArrowKeyUp |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvHomeKey |
||
+ | | 303 || 12F || 303; // gvHomeKey |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvEndKey |
||
+ | | 304 || 130 || 304; // gvEndKey |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvInsertKey |
||
+ | | 305 || 131 || 305; // gvInsertKey |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvDeleteKey |
||
+ | | 306 || 132 || 306; // gvDeleteKey |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvPageUpKey |
||
+ | | 307 || 133 || 307; // gvPageUpKey |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvPageDownKey |
||
+ | | 308 || 134 || 308; // gvPageDownKey |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey0 |
||
+ | | 310 || 136 || 310; // gvNumberPadKey0 |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey1 |
||
+ | | 311 || 137 || 311; // gvNumberPadKey1 |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey2 |
||
+ | | 312 || 138 || 312; // gvNumberPadKey2 |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey3 |
||
+ | | 313 || 139 || 313; // gvNumberPadKey3 |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey4 |
||
+ | | 314 || 13A || 314; // gvNumberPadKey4 |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey5 |
||
+ | | 315 || 13B || 315; // gvNumberPadKey5 |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey6 |
||
+ | | 316 || 13C || 316; // gvNumberPadKey6 |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey7 |
||
+ | | 317 || 13D || 317; // gvNumberPadKey7 |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey8 |
||
+ | | 318 || 13E || 318; // gvNumberPadKey8 |
||
+ | |- |
||
+ | |-align="center" |
||
+ | ! gvNumberPadKey9 |
||
+ | | 319 || 13F || 319; // gvNumberPadKey9 |
||
|- |
|- |
||
|} |
|} |
||
− | |||
<BR> |
<BR> |
||
+ | |||
+ | == 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 is a download link to grab the keyconfig.plist file that you need to change the keys. |
||
+ | |||
+ | * [https://www.box.com/s/wa19flt29azdqx0lslvl Classic Elite keyboard config] hosted on Box.com. Includes a Readme with installation Instructions and a list of the keys. |
||
+ | |||
+ | Download this file, put it into a Config folder, and put that in your AddOns folder. |
||
+ | |||
+ | == OXPs == |
||
+ | |||
+ | * Classic Elite keyboard config (just above!) |
||
+ | * [[Keyboard Cobra]] alters the effects of your roll/pitch/yaw keys to make your cobra more manoeuverable |
||
== Silly Keyboard Tricks == |
== Silly Keyboard Tricks == |
||
Line 203: | Line 375: | ||
− | [[category:oolite]] |
+ | [[category:oolite|Keybord controls]] |
Latest revision as of 14:09, 18 November 2021
Contents
Non-English language Keyboards
- See the BB discussion here.
- Keyconfig.plist for French AZERTY keyboard (Gracieuseté du Monsieur le Commandant STyx).
- Keyconfig.plist for German QWERTZ Linux keyboard (Mit reichlichem Gruß an Kommandant Freiherr von Tsoj, 2021).
- Keyconfig.plist for German QWERTZ Linux keyboard (Genugtuung an den wundersamen und illustren Kommandanten Slartibartfast, 2021). This might work for Windows, too.
- Keyconfig.plist for Latin American (Gracias al Supremo, Serendipitoso y Sereno El Señor Comandante Reval).
Galcop Health Warning for non-English Linux Keyboards
Problems with non-English Linux keyboard layouts have been known for ages and are not so much an Oolite issue, rather than an SDL 1.2.x one. All keyboards are treated as if they were US layout and one finds quite a few projects using SDL that have similar inconveniences.
Using SDL 1.2.x's unicode inputs seems to help, but unfortunately unicode inputs recognize only keydown events and not keyup ones. Getting this to work properly may not be impossible, but it is not straightforward either. See here.
German Linux is listed above
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 (F6 screen)
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 | Toggles between names & additional system information (economy/government/TL). |
Cycle Map Highlight | (?) | ? | (?) | (?) | Toggles colour of systems (sun colour/economy/government/TL). |
Market Controls (F8 screen)
Action | Keyconfig Entry | Key | Keycode (Dec) | Keycode (Hex) | BBC Key | Notes |
---|---|---|---|---|---|---|
Buy/sell maximum amount | ? | Enter or Return | ? | ? | ? | Once item is selected: buys/sells maximum and then sells/buys on second press |
Sort market goods | ? | / | ? | ? | Toggles between default sort/alphabetical/price/quantity for sale/quantity in hold/unit mass | |
Filter market goods | Select market goods | ? | (?) | (?) | Toggles between all goods/carried or in stock/carried/in stock/'legal'/'illegal'. |
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 is a download link to grab the keyconfig.plist file that you need to change the keys.
- Classic Elite keyboard config hosted on Box.com. Includes a Readme with installation Instructions and a list of the keys.
Download this file, put it into a Config folder, and put that in your AddOns folder.
OXPs
- Classic Elite keyboard config (just above!)
- Keyboard Cobra alters the effects of your roll/pitch/yaw keys to make your cobra more manoeuverable
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!