Sys Admin Guide

From ioquake3 wiki
Revision as of 11:19, 28 August 2015 by TimeDoctor (talk | contribs) (Useful ioquake3 server console commands)
Jump to: navigation, search

So, You've Decided to Start a Quake 3: Arena Server.

This guide will help you get started.

You will need a legitimate copy of Quake 3: Arena. It is currently only available through Steam on Windows or if you'd like it on-disc second-hand markets like Ebay may have copies.

Once you have the game downloaded, copy pak0.pk3 to your server's baseq3 directory.

Ports

Forward and open port 27960 on your firewall or router and in whatever operating system you use.

Linux

  1. Create a new user for your ioquake3 server to run as. You can use the command sudo adduser ioq3srv for example to add a new user named ioq3srv
  2. Switch to the new user su - ioq3srv
  3. Download server_compile.sh wget https://raw.githubusercontent.com/ioquake/ioq3/master/misc/linux/server_compile.sh
  4. Install any pre-requisites according to your distribution documentation. If you run into trouble here, please ask for help on our forums after attempting the next command and saving the output to pastebin
  5. sh server_compile.sh
  6. Copy pak0.pk3 from your purchased copy of Quake 3: Arena to the baseq3 sub-directory of ioquake3
  7. Download start_server.sh wget https://raw.githubusercontent.com/ioquake/ioq3/master/misc/linux/start_server.sh
  8. Type screen and then sh start_server.sh. You can leave the screen at any time by pressing Ctrl+a then d, and then get access to your running server again by typing screen -drU
  9. You're ready to go, just type map q3dm17 in your new server's console.

Mac OS X

Windows

Useful ioquake3 server console commands

banaddr <range>
ban an ip address range from joining a game on this server, valid <range> is either playernum or CIDR notation address range.
exceptaddr <range>
exempt an ip address range from a ban.
bandel <range>
delete ban (either range or ban number)
exceptdel <range>
delete exception (either range or exception number)
rehashbans
reload the banlist from serverbans.dat
flushbans
delete all bans
net_restart
restart network subsystem to change latched settings
game_restart <fs_game>
Switch to another mod
kicknum <client number>
kick a client by number, same as clientkick command
kickall
kick all clients, similar to "kick all" (but kicks everyone even if someone is named "all")
kickbots
kick all bots, similar to "kick allbots" (but kicks all bots even if someone is named "allbots")
tell <client num> <msg>
send message to a single client (new to server)

Using Old Versions or Protocols

Sometimes we get asked to help with NoGhost or other mods that require versions of Quake 3 prior to 1.32c. Unfortunately there is no way to make mods that require old versions of Quake 3 work with ioquake3. When id software released the source code which ioquake3 is based on we only received access to the latest version at the time they stopped working on it.

Punkbuster

Similarly, we sometimes get asked to support Punkbuster. This is closed source cheat detection software that we don't have the ability to use with ioquake3.