Linux Quake How-To
Author: Steven A
Version: 2.02
Last updated: February 24, 2006
This document is a modern guide to GLQuake, with some information
about QuakeWorld , Quake II, III and IV.
______________________________________________________________________
Table of Contents
1. Introduction
1.1 Preamble
1.2 About
2. General Info
2.1 Getting Started
2.2 Command Line Options
2.3 Game Console Commands
3. Game Engines
3.1 GLQuake
3.2 Darkplaces
3.3 QuDos Quake Ports
3.4 QuakeForge
3.5 TyrQuake
3.6 Software Quake
3.7 Other
3.7.1 NPRQuake
3.7.2 Tenebrae
3.7.3 Twilight Project
4. Mods
4.1 Mods
4.2 Commercial Mods
4.3 Mapping tools
5. Multiplayer
5.1 QuakeWorld
5.2 FuhQuake
5.3 Nexuiz
5.4 Digital Paint 2
5.5 Battle Mech
6. Trouble-shooting
6.1 Bash won't start the program
6.2 Program dies at startup
6.3 Program dies loading level
6.4 Sound Problems
6.5 Other Issues
6.6 Video Drivers
6.7 Sound Drivers
7. Quake Sequels
7.1 Hexen II
7.2 Quake II
7.3 Quake III Arena
7.4 Quake IV
8. Other
8.1 Text Version
8.2 Old Quake How-To
8.3 FreeBSD
8.4 Miscellaneous
8.5 Links
8.6 Glossary
8.7 Credits
8.8 Todo
8.9 Author
______________________________________________________________________
1. Introduction
1.1. Preamble
Linux Quake sits at the crossroads of two computing revolutions -
GNU/Linux, the popular free operating system, and GLQuake, the first
"first person shooter" to use the 3D graphics library OpenGL. Quake
has a loyal community still making games almost ten years after it's
release by ID Software, and thanks to John Carmack releasing the
software under the GPL, people are able to enjoy it on non-proprietary
platforms.
Does all this mean our game is important ? No... It's just fun ;-)
1.2. About
This document is not an exhaustive how-to about setting up any one
Quake program, but a modern guide to GLQuake, a collection of the most
useful tips, and a pointer to the best resources still available on
the web. It concentrates on the many engine rewrites and incredible
add-ons which make Quake the phenomena it is.
2. General Info
2.1. Getting Started
Installing Quake requires a few basic steps.
Get the Game Data Files
Getting the game data files is normally done by installing the
game 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, if you have the DOS Quake CD, 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
________________________________________________________________
Once you have the resource.1 file, then type
___________________________________________________________________
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.
Install a Quake Executable
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 Jörgen's ``GLQuake'', or the author's patched
TyrQuake . After downloading or compiling a game
engine, place this binary in your Quake directory alongside the
id1 directory.
Summary
Finally, you should have a directory structure similar to this,
with all files being in ``lowercase'':
/usr/local/games/quake +- glquake.glx (or another game engine)
|
+- id1 -+- config.cfg
|
+- game.dat
|
+- pak0.pak
|
+- pak1.pak
Now, from an xterm window, type (for example)
___________________________________________________________________
./glquake.glx -fullscreen -width 800 -height 600
___________________________________________________________________
to start the game.
Help
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:
· ``Trouble-shooting'' section
· The ``old version'' of this how-to
· Linuxgamers Quake howto
· Quake wiki
· The Linux Game Tome
2.2. Command Line Options
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:
-window
Run the game in windowed mode
-fullscreen
Run the game in fullscreen mode
-game NAME
Load the mod NAME.
-mem N
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.
-width WIDTH
window/fullscreen width
-height HEIGHT
window/fullscreen height
-sndspeed MHz
Set sound sampling rate (eg. 44100, 22100, 11025)
-sndbits N
Set sound bits to N = 8 or 16
-nosound
Disable sound. Necessary when sound is absent/unconfigured to
stop the game from crashing.
-nomtex
Disable GL multitextures.
-listen N
Allow a maximum of N players/bots to join multiplayer games.
-cddev DEVICE
Use DEVICE for playing the cd music
-nocdaudio
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
______________________________________________________________________
glquake.glx +skill 2 +map e1m1
______________________________________________________________________
2.3. Game Console Commands
For more info see
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 -
god
Invulnerability
noclip
Walk through walls
notarget
Enemies won't attack player
timedemo DEMO
Play DEMO (eg. "demo1") at top speed and show frame rate
impulse N
Issue "impulse N"
These are in-game commands which can be given special uses. The
most common cheat is impulse 9 which gives all weapons.
bind key
Bind a key to perform a command
map MAP
Load MAP
changelevel MAP
Load MAP without resetting player settings
quit
Exit to system
skill VALUE
value = 0 (easy) - 3 (impossible)
Degree of difficulty. Level must be restarted to take effect
r_wateralpha VALUE
value = 0.0 - 1.0
Opacity of water
_snd_mixahead VALUE
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
r_shadows FLAG
flag = 0 | 1
Display model shadows
vid_wait FLAG
flag = 0 | 1
Sync video output with screen refresh
chase_active FLAG
flag = 0 | 1
Show player from third person perspective
3. Game Engines
3.1. GLQuake
The first place for Linux noobs to go is Jörgen's no frills site. Here
you'll find some relevant documentation and trouble shooting tips, and
a basic version of OpenGL Quake for Linux. Fairly pain free by Linux
standards, it supports most Quake mods, but gamma (brightness) support
is broken.
3.2. Darkplaces
Darkplaces is an amazing Quake engine with a great range of visual
enhancements and options for colour, effects and sound. It uses the
same Doom3 lighting features as Tenebrae and thus requires a more
powerful computer than GLQuake and QuakeForge.
It also supports many otherwise incompatible mods including
``Nehahra'' and ``Nexuiz'', and has improved support for the official
mission packs.
Havoc's file archive
can be a little confusing. The large "gameengine2005" tarballs
include precompiled binaries and the game's source code in a second
tarball. To compile your own program uncompress the second tarball ,
type make to see a list of possible targets (programs), and select
one. For example - to build the OpenGL engine with ALSA sound type
make cl-release, or to build with OSS sound, make cl-release
DP_SOUND_API=OSS.
Much thanks to Lord Havoc for this great project.
3.3. QuDos Quake Ports
"Here you'll find QuDos' `linuxified` src+bin tarballs for popular
quake ports, including that of bjp for Nehahra."
This is great news for gamers. For the first time these engines -
including DemonQuake, JoeQuake, NehQuake, Qrack and Tremor - have been
ported to Linux. NehQuake
runs ``Nehahra'' much faster than Darkplaces, and
JoeQuake has impressive eye candy.
The tarballs include source code, binaries and in most cases the data
files necessary for the engine. To install these data files, find the
simply named folders (such as "joequake" or "qrack") inside the
tarballs and move them to your quake directory. If they are not
present you will have to download them from the game's homepage.
For some of the engines, an additional sound library (which is
included) has to be installed. To do this:
______________________________________________________________________
su
cd /usr/lib
mv {some directory}/libfmod-3.74.1.so .
ln -s libfmod-3.74.1.so libfmod.so
ldconfig
______________________________________________________________________
or visit the FMOD homepage and install the
libraries manually.
3.4. QuakeForge
QF is the most comprehensive Linux Quake project. It has a visually
enhanced engine, numerous single player and ``QuakeWorld'' clients and
Quake C tools. Amongst it's features are: an overhauled menuing sytem,
a new "heads up display", and in-game help.
Possibly because of it's size, QuakeForge hasn't been updated in years
and it's documentation was never quite finished. The usual "configure
&& make && make install" will build the whole project, but to make a
single player binary only, try:
______________________________________________________________________
configure --with-static-plugins --without-tools --without-servers --with-clients=glx
zcat {somedir}/quake/id1/menu.dat
______________________________________________________________________
For information about building QuakeForge on the BSD Unices, see the
``FreeBSD'' section.
Kudos to the QuakeForge team for a huge project which has provided
much inspiration for other open source games.
3.5. TyrQuake
Is a fairly complete project including Quake and Quakeworld clients
and other tools including the
popular TyrLite. Tyrann's focus is on a fully featured but miminalist
engine for Windows and Linux.
To compile TyrQuake-0.47, first edit the makefile and select a few
options. (The single player client is "NQ"). Nvidia users may have
to apply this patch
to fix a few bugs. Versions after 0.47 should build without this.
A patched TyrQuake single player binary is available here
.
3.6. Software Quake
For a more in-depth treatment of Software Quake, see the ``previous
version'' of this how-to.
The original WinQuake source
also came with two
pixelated versions of the game:
· X Quake (quake.x11)
· Svga Quake (squake)
but compiling them is no longer straight forward. It involves copying
Makefile.linux to Makefile, editing this file to remove the extra
targets , replacing /usr/X11/lib with /usr/X11R6/lib and typing make
build_release.
There are easier options though. ``TyrQuake'' and ``QuakeForge'' have
software clients, and there is also an old SDL Quake
written by SDL's author, Sam
Lantinga, which should work on all modern platforms.
3.7. Other
3.7.1. NPRQuake
Another Quake engine which has been ported to Linux but afaik hasn't
been touched in a few years is NPRQuake
. Notably, it has
the ability to load different renderers on the fly (!) which is pretty
cool. The linux port
includes support for the cartoon renderer ainpr
, and works
really well for me.
The SDL version has rewritten
mouse and video code and may work on otherwise troublesome systems.
But the sound APIs have not been ported to SDL, so it is not a truly
portable engine.
3.7.2. Tenebrae
A Quake engine using advanced lighting techniques similar to those in
Doom III. Requires a very fast computer to run and may not be
compatible with all hardware.
3.7.3. Twilight Project
The Twilight Project "is a set of rather
minimalist NQ and QW engines that focus on insane rendering speed, it
is however a bit unstable at the moment."
4. Mods
4.1. Mods
There are hundreds of user created levels - known variously as "mods",
"total conversions" or simply "maps", all over the internet. When it
comes to finding them though, many URLs are no longer valid, and it is
easier to just google for a file name (perhaps adding "quake" as an
extra search term) than to try and find the project's homepage - which
is probably just dust in the ether now.
To run new maps, place the bsp file into the "quake/id1/maps"
subdirectory, and start Quake with the +map MAPNAME option.
Installing mods is simply a matter of creating a subdirectory DIR and
extracting the contents of the mod zipfile/tarball into this
directory. It is then loaded by using the -game DIR command line
option and, sometimes, +map MAPNAME where MAPNAME is the mod's start
map.
For both maps and mods, all files should be in ``lowercase'' format.
QuakeTerminus has a good list
of mods, and Tenfour numerous map reviews
.
A few of the author's favourites are:
Soul of Evil
Soul of Evil is a gorgeous medieval themed mod with two single
player episodes, a melee style arena mode and nice
documentation. Many thanks to Tronwyn, Fat Controller and their
co-authors. Link
Nehahra
Epic. Ambitious. Otherwordly. Nehahra is the definitive Quake
mod, supported in Linux by LordHavoc's ``Darkplaces'', and
``QuDos''' port of the NehQuake engine. It has some great models
and maps, uses fog effects well, and has an (optional) two hour
movie/demo which ties-in well with the original Quake "story-
line" but is also in desperate need of an edit. Link
Contract Revoked
A modern mod which made my jaw drop. It also has ambitious
sequels: The Lost Chapters and Quoth. Link
The Masque of the Red Death
A vast, recently released castle map, which also requires
Darkplaces and fast hardware. "Monster Count: 404 on Hard" -
Tronwyn. Link
The Hunted Chronicles
Another game requiring the Darkplaces engine, the Hunted
Chronicles is a zombie shooter/survival mod in two parts. The
second uses fog and lighting effects to spooky effect, and could
almost be mistaken for a Half-Life mod. Link
Neil Manke's mods
Neil wrote the definitive Half-Life mod "They Hunger". The
quality and fun is in these maps too - alba01.zip, alba02.zip,
sofsp1.zip, sofsp2.zip, starshp2.zip, Link
Blood Mage
... is a dungeons and dragons themed mod with great monsters and
music. It's a little dated now, and the numerous spells can be
overwhelming - bmfull.zip
Operation: Urth Majik
Oum is one of the few Quake 1 mods with a sci-fi feel. It's a
well made five level mod with cut-scenes and many new weapons -
oum.zip , Link
The Coagula Contest 2
Coagula is a six level compendium of maps originating from a
contest. The novelty is that all maps are floating in the ether,
and it's a great set. Link
Scourge done Slick
SdS is a speed run through Mission Pack 1, Scourge of Armagon.
Hilarious and amazing. Link
Insomnia
Cracking game-play and rivers of blood - czg07.zip
Zerstörer
Dark and bloody, with Doom's paranoiac atmosphere - a classic.
Zerstörer also has some good death match levels - zerstorer.zip
Fantasy Quake
FQ is a traditional medieval themed conversion. The game has
some beautiful levels, but also plenty of raw edges as it was
never quite finished. (The project ended prematurely when the
web hosting hit a snag). Not all the player classes work
perfectly. Use the "g" key twice to purchase items, the
"<",">","/" keys for inventory, and the "w","e","r" keys for the
grappling hook - fantasy.zip
Here you can get the long lost Fantasy Quake manual
.
Gib Factory, Vigil, Museum
Little mods with great game-play! - gibfact.zip
vigil.zip
, museum.zip
4.2. Commercial Mods
Mission Pack 1
Scourge of Armagon by Ritual Entertainment (formerly known as
Hipnotic Interactive).
Mission Pack 2
Dissolution of Eternity by Rogue Entertainment.
- Both official mission packs are generally acknowledged as
better than the original game.
Malice
Very original Quake total conversion, with the greatest (make
believe) machine gun I've ever unleashed. Worth paying for.
Abyss of Pandemonium
Commercial mod now freely available: Link
Ravages of Apocalypse
Xmen mod! Great models. Shame about the game-play. ...When good
mods turn bad.
This mod has now been released free of charge, and can be found
here .
Shrak
One of the first commercial mods. It has well modelled and
totally new monsters, but the game-play doesn't cut it anymore.
4.3. Mapping tools
Another first for Quake was the implementation of it's own game
language - Quake C. This enables mods to work seamlessly on any
operating system. It is possible to install many of the editors which
are used to make Quake maps, but creating full scale mods is real
voodoo and beyond my knowledge.
GtkRadiant is the only currently maintained world editor I know of
Link
The Quake Army Knife (QuArK) is a multi-purpose Quake editing tool
which.. may or may not have Linux support %-(. Link
...You may be able to find out from the Func_Msgboard
- an ongoing hub for Q1
development and new mapping projects.
``QuakeForge'' include Quake C tools with their tarball.
The Quake Wiki has some
relevant links for the windows platforms.
5. Multiplayer
5.1. QuakeWorld
An enhanced Quake engine for on-line and network multiplayer action.
It is incorporated into ``QuakeForge'' , ``FuhQuake'' and
``TyrQuake''.
5.2. FuhQuake
... "contains numerous game-play and eye candy enhancements over the
original QuakeWorld game".
FuhQuake will still play the original game
but the focus is on multiplayer, and single player mods won't work.
It is still actively maintained by Fuh.
5.3. Nexuiz
Nexuiz is a new standalone multiplayer game using the Darkplaces
engine. It uses advanced lighting features, so users with less
powerful video cards should try disabling these to get the game to
run.
5.4. Digital Paint 2
Paintball comes to Linux !
Digital Paint 2 is an "original" multiplayer game based on the ``Quake
II'' engine. It's colourful and fun nature is a departure from the
usual dark tone of most Quake games. Being a totally remodeled game,
it doesn't require you to have the original Quake II ;->.
Single player games are possible by playing against computer bots.
5.5. Battle Mech
Battle Mech is a top down Mechwarrior style mod. Make sure to use the
1.1
tarball.
6. Trouble-shooting
Other trouble-shooting resources can be found at: Jörgen's GLQuake
Site , the ``old version'' of this how-
to, and Linux Gamers FAQ .
Often, using an alternative game engine such as ``TyrQuake'',
``FuhQuake'' and ``Darkplaces'' will fix mouse and sound related
problems.
6.1. Bash won't start the program
"bash: ./glquake.glx: Permission denied"
· The binary may not have the executable bit set. Type chmod +x
glquake.glx to fix this.
· If the program is located on a windows partition, it is possible it
has been mounted with the noexec option.
Type (as root): mount -o remount,exec /mnt/windows
"bash: glquake.glx: command not found"
· Bash may not be including the current directory in it's path.
Type: "export PATH=$PATH:."
6.2. Program dies at startup
This is not good, but some simple options to try are:
· - use -nosound to test if sound is the problem.
Sound problems are covered in detail below.
· - use -noudp if network is unconfigured.
· - use -nocdaudio if cdrom is absent.
· - use -height, -width and -fullscreen command line options to
select a screen mode you know is properly configured.
e.g. glquake.glx -width 800 -height 600 -fullscreen -nosound
Files not lowercased or Data files missing.
Linux Quake requires (most) filenames to be in lowercase. If you get
an error similar to "Error: W_LoadWadFile: couldn't load gfx.wad" it
means the game can't find the data files, possibly because they are
not all lowercase.
· Make sure you have the subdirectory "id1" (not "ID1") containing
the files "pak0.pak" and "pak1.pak".
· For a comprehensive lowercase utility, download this utility
or
visit .
"Memory overwrite in Sys_Printf"
· This error means you need to edit file sys_linux.c, procedure
Sys_Printf, at or near line 89, and change text[1024] to text[4096]
and recompile.
6.3. Program dies loading level
· Many mods require extra memory. Use the -mem 48 option to allocate
48 meg of memory for the heap.
· A few newer mods just won't work with standard GLQuake, and need an
enhanced ``game engine'', though they will generally indicate this
in their documentation.
· In some cases, this problem can be sound related. Try some of the
tips in the sound section.
6.4. Sound Problems
For more information about Linux sound see the ``drivers'' section.
An error such as: "/dev/dsp: Device or resource busy" indicates some
program is already using your sound card, and you will have to halt
this program to get Quake sound effects.
· From the Linux command line, type killall artsd or killall esd to
terminate either of these popular sound daemons.
· Alternatively, to run Quake through the KDE sound daemon, type
artsdsp glquake.glx ...
"Quake engine games exit, and I see an error about mmap!"
· The Linux Gamers FAQ recommends
"Your sound card/driver doesn't support this needed feature.
However, if you use KDE/arts you may be able to bypass this with
the -m switch to the artsdsp wrapper".
Make sure the artsd program is running by typing ps -A | grep artsd
and checking that this command returns at least one non-empty line.
Then type artsdsp -m glquake.glx.
· Try alternative sound drivers as outlined in the ``Sound Drivers''
section.
Sound stutters or is not very good.
· Try using the -sndspeed or -sndbits option(s), or swapping sound
drivers.
6.5. Other Issues
Game is too dark
If changing the brightness setting in the options menu doesn't
work, you can use the xgamma program to brighten the whole
display.
· Type xgamma -gamma VALUE before running the game, where VALUE
is a number larger than 1. When you've finished, use xgamma
-gamma 1 to restore the brightness.
This tip will not work with poorly supported hardware. For
Voodoo 1/2 users, visit here for more information.
Mouse look
"This game won't let me look around properly. %$!$@"
· Bring down the game console with the "~" key and enter
+mlook.
Mouse doesn't work properly
Try the following -
· Start the game in fullscreen mode by using the -fullscreen
option.
· From the game console, type _windowed_mouse 1
· If you're using fluxbox, try another window manager. Fluxbox
has issues with some games in fullscreen mode.
· If still without success, try the ``NPRQuake'' or
``Darkplaces'' SDL clients. Typing export
SDL_VIDEO_X11_DGAMOUSE=0 before starting the game will
disable hardware dga mouse.
Game saves fail / Options not remembered
If you are running Quake as a normal user and experiencing these
problems it's probably due to having insufficient privileges to
write to the game directories. Solutions include:
· Run the game as super user: Type su and enter root's password
before typing glquake.glx ... to start the game.
· Change the game file permissions. Unix operating systems have
strong security preventing unauthorised or accidental file
changes. The simplest way to overcome this in a single user
environment is to become super user and change ownership of
the quake directory with (as root): chown -R USERNAME
/usr/local/games/quake. However it is recommended users read
the chmod and chown man and info pages to better understand
Unix file permissions.
· In full multi-user environments it is recommended using the
``Darkplaces'' or ``QuakeForge'' game engines, which
correctly place per-user data in their home directory.
Quake uses a confusing method of saving and restoring game
options, especially when playing add-ons, and game options
sometimes have to be reinitialised even though file permissions
are not an issue. In such cases, the author can offer no simple
advice %-/.
Crazy polygons
Some mission-packs/mods for Quake can cause existing
player/monster models to be drawn with lines all over the place.
To fix this, delete the directory "quake/id1/glquake". When you
next run the game, it will remake this directory and everything
should be fine.
Lines on screen
A common problem with 3dfx cards is a shower of flickering lines
on the screen.
· From the game console, type gl_ztrick 0.
Other graphical anomalies
Some Quake engines use an OpenGL speed-up known as
multitexturing. This normally works fine, but if you are
experiencing glitches you can disable this feature with the
-nomtex option.
Older video cards may occasionally draw models in all white.
See the PlanetQuake command list
for in-
game GL variables to fine tune performance.
6.6. Video Drivers
Setting up hardware GL acceleration under Linux used to be a big deal,
but modern distros should now handle this automatically. Of course
there are exceptions...
Nvidia's drivers for all of their modern video cards are not open
source. Because of this many distributions do not include them. If
your Nvidia card is running slowly this is probably the cause and you
should visit to download the Linux installer.
In the author's experience these drivers are great, but not all
versions work 100% with all cards. If you have a misbehaving Nvidia
video card, try a different driver.
While new versions of XFree and Xorg have great support for Voodoo 3,
4 and 5, early 3dfx hardware such as Voodoo1, Voodoo2 and Rush are no
longer hardware accelerated. To get OpenGL working for these cards,
you'll need to download, install and/or compile the software libraries
called Glide and Mesa. Here
is a detailed README on old 3dfx cards.
Links
Linux Gamers ATI How-To
Linux Gamers Nvidia How-To
6.7. Sound Drivers
There are two major Linux sound systems - Open Sound System and ALSA.
If you are experiencing sound problems and the trouble-shooting
section hasn't helped, you may consider changing the sound driver.
This can be hard work, and is only for experienced users.
To ascertain which driver you are currently using, type lsmod to list
currently loaded kernel modules. The ALSA sound modules have verbose
names starting with "snd_", while the OSS modules have more terse
names. For example, the ALSA Sound Blaster Live module is
"snd_emu10k1", while the OSS module is "emu10k1". Since Linux kernel
2.6, ALSA has been the standard sound system, while 2.4 and earlier
were more likely to come with OSS sound.
Information about ALSA can be found at the Alsa Homepage
and Linux Journal's Guide to ALSA
.
For those already with ALSA wishing to try the OSS modules, a kernel
recompile is probably
necessary.
7. Quake Sequels
7.1. Hexen II
Hexen II is a colourful adaption of the Quake engine, and in terms of
source code and theme is much closer than Quake II to the original
game. Unfortunately, Raven Software released
the game with many rough edges... So beautiful, yet so cruel.
Hammer of Thyrion is the main Linux
Hexen II port , and has had much work done towards squishing bugs and
enhancing the OpenGL graphics. While it is not as widely distributed
as Quake, the HoT demo includes some of the game's best levels and is
available from the Sourceforge project page
.
7.2. Quake II
Quake II is the sci-fi themed sequel to Quake.
Early Linux releases weren't very solid, especially the mouse
handling, but there is now a few related projects to choose from.
QuDos' Quake II is the most
recent, being based on Icculus Quake II
, but having an enhanced graphics
engine. Michael Olson has some Quake II source
and
binary
rpms which appear to be old Icculus releases. Alternatively, there is
the QuakeForge Quake II
project which also provides support for multiple operating systems.
The multiplayer paintball mod ``Digital Paint 2'' is based on Quake
II.
See the ``old version'' of this how-to for Quake II troubleshooting
tips.
7.3. Quake III Arena
The third Quake installment was a landmark multiplayer game, with some
of the most beautiful and well balanced fragging ever. It was one of
the first games to receive a full Linux commercial release.
Recently ID Software released the source
code, and you'll find an Open Source Quake III
project at Icculus.org.
Most mods should work. The Linux Gamers FAQ reports:
Yes, ... modifications work in Linux as long as they are compiled to the
Quake III ... VM bytecode as advised by id software. ... modifications
compiled to Windows library files will not work.
The retail add-on Quake III Team Arena is supported and, despite never
getting rave reviews, is a great game.
For an atmospheric Q3 single player conversion visit The Dark
Conjunction .
Links
The Zerowing installation
and known
issues guides hosted
by ID Software.
Linuxgamer's Quake III Howto .
Linux Question's Quake III forums for Sound
and
Mouse
problems.
All things Quake III at Planet Quake
7.4. Quake IV
Quake IV is an epic FPS from the awesome Raven Software
. It is based on the Doom-III engine and has
high hardware specs. A 2ghz cpu and 512meg ram are minimum
requirements.
Links
The Official Linux Faq
Linux Questions Quake IV bug forums
Quake IV demo
8. Other
8.1. Text Version
This how-to is also available as a text file
,
and a single html file
.
8.2. Old Quake How-To
... is located here
8.3. FreeBSD
The author has limited experience with this OS and currently uses
FreeBSD 5.3 with Nvidia's proprietary drivers. ``Darkplaces'' and
``Hammer of Thyrion'' work well with this system.
``QuDos'' has recently ported several engines
to Linux and has recently
started work on FreeBSD compatability. His great Quake II project
is also now BSD friendly.
For basic GLQuake support, you can find a hacked FreeBSD binary and
source tarball here
.
``QuakeForge'' is a comprehensive Quake project, but may have
installation issues with newer FreeBSD releases. The memory allocator
routine "alloca" is not correctly detected on FreeBSD 5.3. The fix is,
after running "configure", to add "#define C_ALLOCA 1" to
"include/config.h" and undefine other ALLOCA variables. Another issue
is the opening of plugins. If the project builds, but you can't get
the console or menus, you may have to enable static plugins using
configure LDFLAGS=-lpthread --with-static-plugins.
8.4. Miscellaneous
· Because of the way the original game renders the sky, any map with
numerous outdoor enemies suffers a big performance hit.
· You can jump further when strafing than when going forward or back
8-)
· The timedemo demo1 command is a great way to benchmark your system.
· Rocket-jumping is the technique of using a rocket or grenade
explosion to jump further than normal. For a demonstration see the
Scourge done Slick speed run.
· John Carmack -
"At this time (march '97), the only standard opengl hardware that
can play glquake reasonably is an intergraph realizm, which is a
VERY expensive card"
· From the original Quake How-To -
"Hardware-accelerated OpenGL Quake is Quake the way God intended it
to be. There is no substitute, and once you've experienced it
there's no going back."
· Func Message Board -
> .... This Will Produce A Fully Functional Bouncing, Exploding
Zombie
Sounds like fun :)
· Moby Games
(by Pathogen)
..... Quake was the first FPS to introduce realistic lighting and
shadows. Of course, this came at a price. Quake has taken a lot of
flak because it's all dull brown and grey. This was necessary
because it was the only way to get the lighting to work properly.
Since each surface needs a wide variety of reserved colors for
displaying darkened/brightened portions of the surface, the game
was limited to just a few colors and all their respective shades.
(by Ashley Pomeroy)
Almost incidentally, Quake introduced the now-standard concept of a
FPS "console", and popularised "mouselook" as *the* absolute
standard control interface. Although the specifications required a
Pentium, Quake ran acceptably well on a 486 DX4/100
· "Quake and its three follow up games, Quake II,Quake III Arena and
Quake 4 (which many do not regard as true sequels), have sold over
4 million copies combined. In 2005, a version of Quake was
produced for mobile phones."
· Popular games derived from the Quake engine include - Return to
Castle Wolfenstein, Half-Life, Star Trek Voyager - Elite Force,
Soldier of Fortune, American McGee's Alice, and - distantly - Doom
III.
8.5. Links
ID Software
The Linux Game Tome
Icculus
Icculus Gamers FAQ
Linux Gamers
Planetquake
Quake Terminus
Quake Marine
Retro Quake
Quake Basics
Quake Wikipedias
,
Jörgen's GLQuake Site
Quake Forge
Darkplaces Game Engine
Linux Hexen II project
SDL - Cross platform hardware API
ALSA - Linux sound project
Lowercase utility
Func_Msgboard - message board from hell ...no, I mean it
8.6. Glossary
ALSA
Advanced Linux Sound Architecture .
API
Application Program Interface. The computer libraries which are
used when programming, and link the game to the hardware.
Bot
A computer generated player with artificial intelligence
(cough), in a multiplayer game. Used to play multiplayer when
no-one's around or not connected to a network.
Client
This word is used in two subtly different ways. In single
player, the Quake game is known as a client, with different
clients using their own graphics libraries (for example, the GL
client "quake.glx" or the X11 client "quake.x11"). The usage is
similar in multiplayer games, but also means the per-user
program which connects to a single "server" program which lets
all the players exist in the same world.
FPS
First Person Shooter. A shooting game viewed from the "first
person" perspective.
Mod
Modification to the original Quake game varying from a complete
game overhaul (total conversion) to simple map/model reworks.
Quake was designed to allow for ease of platform portability
with it's own computer language "Quake C" giving mappers control
over most every aspect of their Quake world.
Noob
Newbie. Someone new to a computer related topic.
Patch
A software patch (or diff) is a single file used to alter a
source code tree before compilation. It is often used to fix
bugs or add new features that the original author didn't
include.
Usage of the GNU patch utility is of the form patch [--dry-run]
-pNUM cross platform
hardware API widley used in Linux games.
Server
A program central to multiplayer games to which every player
connects.
Tarball
An archive file such as somefile.tar created by the "tar"
program. It is often compressed using the programs "gzip" or
"bzip2", in which case it will normally end in the letters .gz
or .bz2. The extension .tar.gz is often shortened to .tgz.
8.7. Credits
Thanks to:
· The Linux Documentation Project .
· Linus Torvalds for hacking together his little operating system.
· ID Software .
· Quake modders great and small.
This webpage was contructed using Linuxdoc-Tools
0.9.20, Vim
and Bash .
8.8. Todo
demo, quakeworld status , impulses, ezquake.
8.9. Author
Steven A.
Sourceforge user page
Email