Installing Quake requires a few basic steps.
Getting the game data files is normally done by installing the game (or game demo) using Microsoft Windows, or an emulator such as Wine or Dosbox, and then copying the id1 directory of the installed game to your Linux Quake directory - making sure all files are in lowercase.
Alternatively, you can use the lha utility to extract the data files. For early CDs, you must first
cat /mnt/cdrom/quake101.1 /mnt/cdrom/quake101.2 > resource.1
cd /usr/local/games/quake lha e {some directory}/resource.1
Later versions of the game, including WinQuake, come with the data files in an uncompressed form and the id1 directory can be directly copied from the CD.
The program you execute to run Quake is known as the game engine. There are several to choose from, but the simplest choice is either TyrQuake, or the more enhanced QuakeSpasm. After downloading or compiling a game engine, place this binary in your Quake directory alongside the id1 directory.
Finally, you should have a directory structure similar to this, with all files being in lowercase:
/usr/local/games/quake +- quakespasm (or another game engine) | +- progs.dat | +- id1 -+- pak0.pak | +- pak1.pakNow, from an xterm window, type (for example)
./quakespasm -fullscreen -width 800 -height 600
This sounds simple, but if you are new to Linux and you are not familiar with the command line, try one of these links for more information:
Command Line Options are extra parameters that are typed on the Linux command line following the program's name. Quake has a large number of them, some of which vary from engine to engine. The most useful/common ones are:
Run the game in windowed mode
Run the game in fullscreen mode
Load the mod NAME.
Reserve N megabytes of memory for the internal heap. This generally defaults to 8 or 16 meg, but must be increased when playing larger mods.
window/fullscreen width
window/fullscreen height
Use this directory by default
Set sound sampling rate (eg. 44100, 22050, 11025)
Set sound bits to N = 8 or 16
Disable sound. Necessary when sound is absent/unconfigured to stop the game from crashing.
Disable GL multitextures.
Allow a maximum of N players/bots to join multiplayer games.
Use DEVICE for playing the cd music
Disable cd audio
You can also append Quake commands to the Linux command line by prefixing them with a plus sign. For example, to automatically start a new game at hard skill, use
quakespasm +skill 2 +map e1m1
For more info see http://www.planetquake.com/console/commands/quake.html
The console is an in-game command line at which you can issue commands, change variables and cheat. It is toggled by pressing the tilde "~" key when in a game. The main commands include -
Invulnerability
Walk through walls
Enemies won't attack player
Play DEMO (eg. "demo1") at top speed and show frame rate
Issue "impulse N"
These are in-game commands which can be given special uses. A few usefull ones are:
Bind a key to perform a command
Load MAP
Load MAP without resetting player settings
Exit to system
value = 0 (easy) - 3 (impossible)
Degree of difficulty. Level must be restarted to take effect
value = 0.0 - 1.0
Opacity of water in maps with transparent water support (See Watervis)
value = 0.1 - 1.0
Raising this value is a good way to speed up the game at the expense of some sound lag. I use 0.3 on my slower computers
value = gl_nearest | gl_nearest_mipmap_nearest | gl_linear_mipmap_nearest | gl_linear_mipmap_linear
Worst to best texture quality.
flag = 0 | 1
Display model shadows
flag = 0 | 1
Sync video output with screen refresh
flag = 0 | 1
Show player from third person perspective