Next Previous Contents

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.

http://mfcn.ilo.de/glxquake

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.

http://www.icculus.org/twilight/darkplaces

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.

http://qudos.quakedev.com/linux/quake1

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 <ruamoko/cl_menu/menu.dat.gz >{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.

http://www.quakeforge.net
http://sourceforge.net/projects/quake/

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.

http://disenchant.net/engine.html

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:

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

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.

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.

http://tenebrae.sourceforge.net/

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."


Next Previous Contents