Originally Published: Saturday, 29 January 2000 Author: Terry Warner and Cory Visi
Published to: enhance_articles_games/General Page: 1/1 - [Printable]

Quake3 Server How-to

This is the first games.linux.com general how-to, for Quake 3. In this how-to there are a few aspects covered. One is what a good system should be running for a successful server, two is the proper config file to use to have a stable server, and last three will show how you can keep the server active 24/7. This should be a good starting point for anyone who wants to run a Quake 3 Server.

   Page 1 of 1  

Written by: Terry Warner
Co-Written by: Cory Visi
Edited by: Jeff Alami

First off, this howto will give some background information on what quake3 is, what a quake3 server is, and the general feel of quake3.

Quake 3 Arena is a game put out by iD Software, the linux port of this game was done by Loki Games. This game is another series in the popular Quake series. The game itself has massive improvements over it's predecessors Quake I, and Quake II.

Some of the improvements over the older versions of Quake are, the graphics and characters are better designed, the graphics engine in the game itself is spectacular. The gameplay flows beautifully, with true-to-life animation, and increadible level design. This new version of Quake, is definatly one of the most intense games, and one of the best first person shooting games out there.

Now for those of you asking, "What is a Quake 3 server?". The answer itself is simple. A Quake 3 server is a virtual location for Quake 3 players from all over the network (in most cases, the Internet) to connect to and frag each other. Now you might ask why you would want to run a Quake 3 server? Well the answer to that is. It is more fun then you can imagine!

There are a few basic things you need to know before you setup a Quake 3 server. The first of course is what type of system you should have, and what are the minu requirments. The requirments for your system and hardware are as follows:

(This is our personal opnion)

  • Linux kernel version 2.2.9 or above, glibc-2.1
  • Pentium II 266MHz processor or above
  • 64 to 128 MB of ram (depending on what type of server load you expect)
  • 500 MB of HD space (for maps and skins, etc.)
  • Dedicated internet connection (such as Cable, DSL, or T1) both Downstream and upstream should be a decent connection
  • You also need a working install of Quake 3 Arena
These are all subject to the amount of people you intend to have on your quake 3 server at one time.

The next thing we will cover is setting up the config file. The config file is the base of the server, and holds all the aspects of the server. The server will behave according to how the config file is setup.

You can make changes to the config file as you see fit. Once you restart the server the new changes will take affect. If you don't want to make changes directly to the config file or do not feel like restarting the server, you can make changes directly in your console window, but the changes will not stick. This option is for people who want to try out new settings for a game or two, and see how users react to them.

Below is the server config file used for quake.linux.com. The quake.linux.com Quake 3 server is very stable with this config. It holds up to 50 people a night, depending on the night. You may use this file as an example:

set sv_hostname "Linux.Com"
set sv_maxclients 50
set g_motd "For less lag, /rate 25000"
set g_quadfactor 4
set g_weaponrespawn 1
set g_forcerespawn 0
set rconpassword "some_rcon_passwd"

set d1 "map q3dm7 ; set nextmap vstr d2"
set d2 "map q3dm1 ; set nextmap vstr d3"
set d3 "map q3dm17 ; set nextmap vstr d4"
set d4 "map q3tourney2 ; set nextmap vstr d1"

vstr d1


Starting the server:

Once the server.cfg file is setup, you are ready to run the server itself. To start the server up, all you need to do is run a command line like this:

nohup quake3 +set dedicated 1 +exec server.cfg &

That will bring the server up. Now people can connect to your server. For people who can't watch the server 24/7 you can use a cronjob with a script to keep the server up. Below is an example of a script you could possibly use:


cd $quake3dir
process=`ps auxwww | grep inet | grep -v grep | awk '{print $12}'`
if [ -z process ]; then
    echo "Couldn't find quake 3 running. Restarting it"
    nohup quake3 +set dedicated 1 +exec server.cfg &
    echo ""


This script you could either put in your $home/bin or somewhere on the server, and have cron run it every 5 to 10 minutes by adding this line in a cron file:

*/10 * * * * /path/to/the/script >/dev/null 2>&1

From here, you will need clients to connect to your server. To succsefully connect to a quake 3 server, you must exacute a command from the console window of quake 3. To do that use this command:

The ` button on your keyboard will bring up the console window, from there all you need to type is:
connect somehost.com
Thats it, if the server is up and running, you will be connected to a Quake 3 game, and can frag to your hearts content.

This howto is a general summary of how to start and config a quake3 linux server. This by no means covers every aspect of the server itself, but it is here as a general guideline for setting up a quake 3 server for the first time.

If you would like to see things added to this how-to please feel free to email:
Terry Warner (keerf@linux.com)
or Cory Visi (cvisi@linux.com)

We will take whatever suggestions you have to offer and add then into this how-to. This document will be updated over time, with more detailed and in-depth instructions on how to run a quake3 server succesfully.

   Page 1 of 1