Playing Quake 3 Arena under Linux

Quake 3 Arena
Quake 3 Arena (Q3A) is a multiplayer FPS game based on the id tech 3 engine. You‘ve missed a lot if you don‘t know this one so read up on it at wikipedia and continue if you did. ;)

The source code of Q3A has been released by id software under the GPL license and there’s some free implementations and modifications of the Q3A engine. We‘ll focus on playing the original game (VQ3) here. While some Q3A total conversions like Alien Arena or OpenArena are completely free because they replaces all original Q3A game media (maps, sounds, textures, models, …), the original game media is still copyrighted. This means that you need your Q3A CD, so search it now.

Stuff you need
You‘ll need the file pak0.pk3 from your Q3A CDROM, I‘ll assume you‘ve found it by now. Let’s grab the Linux version of the official Q3A engine first. All you have to do is to install the latest point release and a small security patch. Atm the latest version is 1.32c. Get the Linux version from the id software FTP server or a mirror (Quake Unity has it), the file should be called linuxq3apoint-1.32b-3.x86.run or similar. Now download the 1.32c security patch. It’s not on the id FTP atm for some reason, but Quake Unity and other mirrors have it. The file should be called quake3-1.32c-linux.zip.

Installation
I prefer to run the installation as root and install to /usr/local/games/quake3 but you may also run it as your user and install Q3A to a subdirectory of your $HOME.

So let’s go to the directory you downloaded linuxq3apoint-1.32b-3.x86.run to, make it executable and install it as root.

$ cd downloads/
$ chmod a+x linuxq3apoint-1.32b-3.x86.run
$ xhost +
$ su
# ./linuxq3apoint-1.32b-3.x86.run

Follow the instructions given by the installer. Let’s now extract and apply the security patch.

$ cd downloads/
$ unzip quake3-1.32c-linux.zip
$ cd "Quake III Arena 1.32c/linux/"
$ su
# cp q3ded quake3-smp.x86 quake3.x86 /usr/local/games/quake3/

Ok, now copy pak0.pk3 to the proper location:

# cp pak0.pk3 /usr/local/games/quake3/baseq3/

That’s it, we‘re ready to go. To play Q3a, type

$ quake3

Advanced stuff: installing Quake 3 mods and custom maps
When you start up Q3A as your user for the first time, it will create the directory .q3a/ in your $HOME (note the dot at the beginning that makes this directory invisible). You can add custom maps or edit your config files in there. After downloading a custom map, copy the pk3 file there like this:

$ cp somemap.pk3 ~/.q3a/baseq3/

You can now select the map from the in-game skirmish/MP menu.

To install a mod like CPMA, extract the mod directory to your ~/.q3a/ directory (NOT into baseq3/, think of a mod as a replacement for baseq3/). You can now select the mod from the in-game mod menu or run it from the command line of your OS:

$ quake3 +set fs_game cpma

If you want to adapt Q3A to your needs, you should create an autoexec file and add console commands there using your favourite editor (mine is vim):

$ touch ~/.q3a/baseq3/autoexec.cfg
$ vim ~/.q3a/baseq3/autoexec.cfg

hf!

Update: You may also want to check out the great ioquake3 engine.