Difference between revisions of "Preferred Key Controls"

From RogueBasin
Jump to navigation Jump to search
 
(13 intermediate revisions by 8 users not shown)
Line 3: Line 3:
==Movement==
==Movement==


When it comes to movement keys, there are two main camps of preference: the [[ViKeys]] supporters and the [[NumPad]] supporters. Naturally, a third camp exists to exhort followers of the other two to coexist by offering both keysets and permitting users to select which to use as a matter of preference.
When it comes to movement keys, there are two main camps of preference: the [[ViKeys]] supporters and the [[NumPad]] supporters. Naturally, a third camp exists to exhort followers of the other two to coexist by offering both keysets and permitting users to select which to use as a matter of preference. Two other ways used might be: Allow both ways to work at the same time (as Rogue does), or allow keys to be configured using an external file (as ADOM does).
 
<pre>
y k u    7 8 9
  \|/      \|/
h-+-l    4-5-6
  /|\      /|\
b j n    1 2 3
vi-keys  numpad
</pre>
 
The arguments for vi-keys are:
* They are familiar for users of vi and vim.
* They don't require numeric keypads, which are unavailable on some laptops and require a USB device.
* vi-keys are traditional; they are used in the original [[Rogue]] and many of the other major roguelikes.


The arguments for [[ViKeys]] are:
* Familiarity for users of vi(m) (a rather ubiquitous text editor)
* Removes requirement for a dedicated numeric keypad, which isn't always available on laptops
* Tradition, as there's a reason these commands are known as 'rogue keys' in certain circles
Counting against vi-keys are:
Counting against vi-keys are:
* They don't map neatly to some keyboard layouts (e.g., Dvorak or even some non-us layouts, e.g. the german one) (though a separate commandset for users of alternate keyboards can address this issue)
* They pose a bit of a learning curve for those not used to them.
* They reduce the keys available for single-stroke game commands (which may or may not be an issue, depending on the complexity of the entire commandset)
* vi-keys are designed for the QWERTY layout, and can be counterintuitive and frustrating to use for other keyboards (e.g. Dvorak or QWERTZ.)
* They introduce the possibility of pressing 'y' or 'n' in accidental response to a prompt (though forcing an uppercase reply addresses this issue in most cases)
* Certain ergonomic "split" keyboards may have the Y key separate from the rest of the vi-keys.
* To non-vi-users they are not immediately obvious
* They reduce the number of keys available for single-stroke game commands.
* Potentially not so easy for left-handers? (dubious, unless one thinks lefties cannot learn how to type)
* They introduce the possibility of pressing "y" or "n" in accidental response to a prompt. This can be solved in most cases by requiring uppercase responses.


Arguments for [[NumPad]] are:
Arguments for [[NumPad]] are:
* They have a layout that matches the movement directions - they are obvious
* They are intuitive and easy to get used to.
* You don't lose any letter keys on the keyboard (unless using a laptop keyboard)
* You don't lose any letter keys on the keyboard, with the exception of some laptops, which have the numpad overlaid on the keyboard.
 
Arguments against:
Arguments against:
* They take away a lot more keys when on a laptop in NumPad mode
* Some laptops have no numpad at all, requiring an external USB device.
* Use of a numeric keypad in place of vi-keys takes focus from the standard keyboard, effectively forcing users to perform a context shift to and from the dedicated keypad
* They can take away many letter keys on certain laptops which have the numpad overlaid on the keyboard. To use the letter keys underneath, the user has to enable and disable NumLock constantly, which can be irritatingly tedious.
* Should one think traditional 'rogue keys' penalize lefties, it would seem moreso with even more rightmost numeric keypad usage
* The user has to move his/her hand between the numpad and the normal keyboard, which can be time-consuming. This is a major disadvantage for real-time roguelikes.
* Better make sure that Num Lock is on at all times :)


==Actions==
==Actions==


A general RL theme in terms of keyboard controls is the use of mnemonic bindings, for example:
A general RL theme in terms of keyboard controls is the use of mnemonic bindings, for example:
'q' - quaff (drink something)
'q' - quaff (drink something)
'w' - wear/wield (make use of a weapon or piece of armour)
'w' - wear/wield (make use of a weapon or piece of armour)
'e' - eat
'e' - eat


Due to the freedom of action many RLs provide, one can easily run out of letters. For example 'd' might have been drink, but usually it is drop, and what about dance or drag, etc?
Due to the freedom of action many RLs provide, one can easily run out of letters. For example 'd' might have been drink, but usually it is drop, and what about dance or drag, etc.?


There are several solutions that have been employed by various RLs.
There are several solutions that have been employed by various RLs.

Latest revision as of 05:37, 21 September 2011

Following a discussion on RGRD, I am attempting to collate a list of preferred keyboard controls for RL games.

Movement

When it comes to movement keys, there are two main camps of preference: the ViKeys supporters and the NumPad supporters. Naturally, a third camp exists to exhort followers of the other two to coexist by offering both keysets and permitting users to select which to use as a matter of preference. Two other ways used might be: Allow both ways to work at the same time (as Rogue does), or allow keys to be configured using an external file (as ADOM does).

 y k u    7 8 9
  \|/      \|/
 h-+-l    4-5-6
  /|\      /|\
 b j n    1 2 3
vi-keys   numpad

The arguments for vi-keys are:

  • They are familiar for users of vi and vim.
  • They don't require numeric keypads, which are unavailable on some laptops and require a USB device.
  • vi-keys are traditional; they are used in the original Rogue and many of the other major roguelikes.

Counting against vi-keys are:

  • They pose a bit of a learning curve for those not used to them.
  • vi-keys are designed for the QWERTY layout, and can be counterintuitive and frustrating to use for other keyboards (e.g. Dvorak or QWERTZ.)
  • Certain ergonomic "split" keyboards may have the Y key separate from the rest of the vi-keys.
  • They reduce the number of keys available for single-stroke game commands.
  • They introduce the possibility of pressing "y" or "n" in accidental response to a prompt. This can be solved in most cases by requiring uppercase responses.

Arguments for NumPad are:

  • They are intuitive and easy to get used to.
  • You don't lose any letter keys on the keyboard, with the exception of some laptops, which have the numpad overlaid on the keyboard.

Arguments against:

  • Some laptops have no numpad at all, requiring an external USB device.
  • They can take away many letter keys on certain laptops which have the numpad overlaid on the keyboard. To use the letter keys underneath, the user has to enable and disable NumLock constantly, which can be irritatingly tedious.
  • The user has to move his/her hand between the numpad and the normal keyboard, which can be time-consuming. This is a major disadvantage for real-time roguelikes.

Actions

A general RL theme in terms of keyboard controls is the use of mnemonic bindings, for example:

'q' - quaff (drink something)
'w' - wear/wield (make use of a weapon or piece of armour)
'e' - eat

Due to the freedom of action many RLs provide, one can easily run out of letters. For example 'd' might have been drink, but usually it is drop, and what about dance or drag, etc.?

There are several solutions that have been employed by various RLs.

  • Using key modifiers such as (most often) Shift or Alt, Ctrl, Meta, Super, Hyper, etc.
  • A method used in Nethack is extended command mode '#' which lets the user enter further keys to spell out the action required, for less used commands like #dip, #jump and #loot.
  • Action menus - used more in RLs on more limited platforms, such as mobile devices and handheld game consoles.

See this list of keys used in the major RLs compiled by Ray Dillinger.

Survey Results

So far:

c close (1)
d drop (2)
e equipment (1)
E eat (1)
f target (2) and f again to fire (1)
g get (1)
i inventory (2)
l look (3)
o open (2) and again to close (1)
q quaff (2)
r read (2)
R rest till interrupted or healed/magicked up (1)
u use (1)
U special use (1)
x exchange (1) , examine (2)
z zap (2)
numpad 0 reload (1)
12345 quick weapon switch or tactics (1)
numpad 5 pickup (1)
. rest (2)
, pickup (2)
? help (2)
/ look (1)
tab next target (1)
enter action (1)
<> up down stairs (2)
@ character screen (1)
ctrl x exit (1)