Player Controls

Doom gameplay is built around a simple user interface that uses few keys and can easily map to controller. A minimal control set requires four directional keys plus 8 action keys.

DIRECTIONAL
Up Arrow
Move forward
Down
Move backward
Left
Turn Left
Right
Turn Right
ACTION
1 Fire (⎈ Ctrl)
Fire current weapon
2 Use (␣ Space)
Activate the linedef directly ahead
3 Strafe (⎇ Alt)
Hold to move left/right instead of turning
4 Run (⇧ Shift)
Hold to move faster
TRIGGER
5 Prev
Switch to previous weapon
6 Next
Switch to next weapon
META
7 Map (⭾ Tab)
Toggle level map on/off
8 Menu (⎋ Escape)
Pause the game and access the menu

This setup leaves much to be desired, but provides access to every control and meta-control needed to play the game and can map to something as simple as a Super Famicom controller.

Generalization

Most source ports provide the user with a way to map each action to any control available, but generalizing the controls should allow for a developer to change what the actions do.

Movement and Actions

In a typical kart-racing game, keys for "strafe" and "run" are unnecessary, and only one item is held at a time. In such a case, three of the action buttons can be replaced. The player needs an "accelerator" key and a "brakes" key. The "fire" key can still activate the currently held item. Other keys can be repurposed to activate a horn, a rear-view camera, a "drift", or a "hop". This example requires the controls can be modified to adjust the player object's physics; a non-trivial proposition, but perhaps worth it to generalize the engine in a subtle way.

ACTION
① Accelerate
Hold to accelerate
② Use
Activate the currently held item
③ Brakes
Hold to quickly decelerate
④ Rear-view
Hold to look behind you
TRIGGER
⑤ Honk
Honk your horn
⑥ Drift
Hold to activate a powerslide

Linux Doom Back to shrines