Quake
III Arena Dedicated Server Documentation
A
dedicated server is useful for servers that will be run on the internet or LAN
for extended periods of time and/or will experience a high number of attached
clients. The following lists the
most commonly used settings for a dedicated server.
Starting the Server
To
start a server that does not report to the master server, use the following
command line convention:
quake3.exe
+set dedicated 2
Command
Line Options
Command line options must be set on the command line and will not work if executed in a config file.
com_hunkmegs
com_hunkmegs
- allocates a certain amount of memory for map and item loading.
The default of 56 is required
for the client but is overkill for a dedicated server, and thus wasting precious
server memory. For general use free
for all, tournament maps, and team deathmatch, a com_hunkmegs setting of 16
is sufficient. Using the included
tournament maps only, a com_hunkmegs setting
of 12 may be used to conserve more
memory. Capture The Flag requires a
minimum com_hunkmegs setting of 26
with the included maps.
NOTE:
user made or future map releases may require a higher setting.
If you receive an ERROR: Hunk_Alloc failed then try increasing the
com_hunkmegs setting in increments of 2 until the map successfully loads.
Usage:
+set com_hunkmegs <##>
Sample: quake3.exe +set dedicated 1
+set
com_hunkmegs 16
net_ip
If
you are on a multi-homed server and the default IP is not what you want to use
for your Quake 3 server, the net_ip command will need to be used.
This must be set on the command line in the following form.
Usage:
+set net_ip <ip address>
Sample: quake3.exe +set dedicated 1 +set
net_ip 192.168.0.0
net_port
Changing
the default server port requires the net_port command be run on the command
line. It is useful for running
multiple servers on the same computer or making the server somewhat more
private. The default port is 27960
and is incremented automatically by 1 if another server is started without a
specified port.
Usage:
+set net_port <port>
Sample: quake3.exe +set dedicated 1 +set
net_port 27961
Configuration
Files
To
simplify setting up a dedicated server, a several server configurations file
have been created for different game types.
You can modify each configuration file to your liking if the default
settings are not sufficient. If you
wish, you may run these config files from the console, assuming com_hunkmegs is
sufficient for each game type. Use
the following console command convention to run configs.
exec
<gametype.config>
The
following are sample command lines to get you quickly up and running for each
game type.
Free
For All
quake3.exe +set dedicated 1 +set com_hunkmegs 16 +exec ffa.config
Tournament
quake3.exe +set
dedicated 1 +set com_hunkmegs 12 +exec tourney.config
Team
Deathmatch
quake3.exe +set
dedicated 1 +set com_hunkmegs 16 +exec teamplay.config
Capture
The Flag
quake3.exe +set dedicated 1 +set com_hunkmegs 26 +exec ctf.config
Server
Only Settings
Server settings are only used only on the server and may be used at the console or command line. Command line usage requires a +set before each command.
For
example: +set sv_maxclients 16
sv_maxclients
sv_maxclients - sets the maximum amount of clients that can connect to the
server. The default setting is 8.
Setting should be increased for large free for all, team deathmatch, or
CTF maps.
Usage:
sv_maxclients <##>
sv_privatePassword
sv_privatePassword - sets a password on the server so only clients that know the
password can connect to the server. Clients
use the \password command. The
default is for no password required. Set
to "" for no password.
Usage:
sv_privatePassword
"<password>"
sv_hostname
sv_hostname -
sets the server name that will show up in the master server list.
The name must be enclosed in quotes if a space is in the name.
Usage:
sv_hostname "<servername>"
sv_master1
sv_master1 - sets
the primary master server to which your server reports.
The default is master3.idsoftware.com and it is not recommended that this
be changed. Additional master
servers can be added with the sv_master2 through 5 command.
The maximum number of masters that can be reported to is 5.
Usage:
sv_master2 <master.domain.com>
sv_maxRate
sv_maxRate - sets the maximum allowable rate a client may have set when
connected to the server. The
default is 0, which is no limit. A
suggested setting is 8000 or 10000 so server bandwidth is not used up by high
speed clients, thus allowing modem players to have a smoother game.
Usage:
sv_maxRate <#####>
sv_pure
sv_pure -
controls crc/zip check of client pk3 files to make sure the pk3 file has not
been modified for cheating or other purposes.
Client pk3 files must match that of the server to connect.
The default is set to 1, or on. Set to 0 to turn off check.
Usage:
sv_pure 1
Server Console Commands
Server
console commands are used from the server console or the remote console.
status
status - shows the client number (num), score, ping, player name (name), client
IP address (address), and port connected through (qport).
Client number is used in conjunction with the kick
command.
Usage:
status
kick
kick - removes a player from the server. Particularly useful for removing
disruptive players. To kick a
player, first find the number (num) associated with the player name via the status
command.
Usage:
kick <num>
capturelimit
capturelimit - sets the number of flag captures that must be reached before the
level ends and the next level starts in CTF.
Setting capturelimit only has an effect if the server is in CTF mode.
Usage:
capturelimit <##>
fraglimit
fraglimit - sets
the amount of frags that much be reached before the level ends and the next
level starts. Setting fraglimit to
0 results in no fraglimit.
Usage:
fraglimit <##>
timelimit
timelimit - sets
the number of minutes that must be reached before the level ends and the next
level starts. Setting timelimit to
0 results in no fraglimit.
Usage:
timelimit <#min>
rconpassword
rconpassword -
sets remote console password so clients may change server settings without
direct access to the server console. The
default is set to none. Client can
control the server by entering commands on the console with the format of \rconpassword
mypass and then adding server commands after the \rcon command.
Usage:
rconpassword <serverpassword>
killserver
killserver - will stop all server services from running but leaves the Quake III
Arena executable running on the server.
Usage:
killserver
Game
Commands
Generally,
all game commands must be entered after the level loads either in the config
file or on the command line/console. Exceptions
include the g_gametype and g_motd
command. The following are the most
useful game commands for a dedicated server.
g_warmup
g_warmup - sets
the amount of time in seconds that players may practice before the actual
tournament match starts. The
default is 20 seconds.
Usage: g_warmup <#seconds>
g_friendlyFire
g_friendlyFire - determines if players can damage their own teammates.
Set to 1 to allow players to damage their own teammates.
Set to 0 so players can not damage their own teammates.
Setting has no effect for free-for-all or tournament modes.
A setting of 1 is suggested for team deathmatch, while a setting of 0 is
suggested for Capture The Flag.
Usage: g_friendlyFire 1
g_gametype
g_gametype -
controls the type of gameplay (free for all, tournament, team deathmatch, CTF).
The default is 0, which is for free for all. Set to 1 for tournament 1 on
1 mode. Set to 3 for team
deathmatch mode. Set to 4 for CTF mode.
Usage:
g_gametype <#>
g_motd
g_motd - sets the message that clients will see when they first connect to your
server.
Usage:
g_motd "message of the day"
g_log
g_log - sets the name of the server log file.
The default is games.log and
does not need to be modified unless running multiple dedicated servers on the
same computer.
Usage:
g_log <filename.ext>
g_quadfactor
g_quadfactor - used to set multiples of damage caused by the quad damage powerup.
The default is 3 times damage, with 1 being equal to no quad damage
powerup. Decimals may be used (e.g.
0.25).
Usage:
g_quadfactor <#>
g_syncronousclients
g_syncronousclients - syncs all clients up to allow demo recording. The default
is the more desired 0 which allows smoother net play.
Set to 1 to allow client demo recording.
Usage:
g_syncronousclients 0
g_weaponsrespawn
g_weaponsrespawn - used to set the number of seconds between the time a weapon
is picked up and the time it respawns. The
default is 5 seconds in free for all and should only be modified if a free for
all server has a large number of players on it, in which case lower it slightly.
It is not recommend that it be set to 0 or modified for other game types.
Usage:
g_weaponrespawn <#seconds>
g_allowvote
g_allowvote - enable players connected to the server to call for and vote on
changes including: map, map restart, kick, and g_gametype.
The default is 1, which is on. Set
to 0 to turn off voting.
Usage: g_allowvote 1