q3aserver
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
q3aserver [2007/11/02 23:44] – 89.37.94.87 | q3aserver [2007/11/03 07:43] (current) – old revision restored 83.236.4.57 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Quake 3 Arena dedicated Server ====== | ||
+ | Here's a quickguide to running a Q3A dedicated server on a debian system. | ||
+ | |||
+ | I assume you have running [[Quake3Arena]] for linux running on your client computer already. We'll use this installation as base. | ||
+ | |||
+ | * Create a user and it's home dir | ||
+ | |||
+ | #> useradd -u 666 -g games -d / | ||
+ | #> mkdir -p / | ||
+ | #> chown games:games /opt/games | ||
+ | #> chown quake3: | ||
+ | |||
+ | * Copy the needed files over from your workstation | ||
+ | |||
+ | #> su - quake3 | ||
+ | $> scp -r you@workstation: | ||
+ | |||
+ | * Create a link to make Q3A happy (this fixes some maybe problems) | ||
+ | |||
+ | $> ln -s / | ||
+ | |||
+ | * Create a **new** '' | ||
+ | |||
+ | < | ||
+ | set vm_game 2 | ||
+ | set vm_cgame 2 | ||
+ | set vm_ui 2 | ||
+ | set dedicated 1 // | ||
+ | set com_hunkmegs 32 //How much RAM for your server | ||
+ | set net_port 32000 //The network port | ||
+ | </ | ||
+ | |||
+ | * Create a '' | ||
+ | |||
+ | < | ||
+ | seta sv_hostname "My Q3A Server" | ||
+ | seta sv_maxclients 8 | ||
+ | seta g_motd "=== Happy fragging ===" | ||
+ | seta g_quadfactor 4 | ||
+ | |||
+ | //### team deathmatch ### | ||
+ | //seta g_gametype 3 | ||
+ | //seta g_teamAutoJoin 1 | ||
+ | //seta g_teamForceBalance 1 | ||
+ | //seta timelimit 15 | ||
+ | //seta fraglimit 25 | ||
+ | |||
+ | //### free for all ### | ||
+ | seta g_gametype 0 | ||
+ | seta timelimit 10 | ||
+ | seta fraglimit 15 | ||
+ | |||
+ | seta bot_nochat 1 | ||
+ | |||
+ | seta g_weaponrespawn 2 | ||
+ | seta g_inactivity 3000 | ||
+ | seta g_forcerespawn 0 | ||
+ | seta g_log server.log | ||
+ | seta logfile 3 | ||
+ | seta rconpassword " | ||
+ | |||
+ | seta rate " | ||
+ | seta snaps " | ||
+ | seta cl_maxpackets " | ||
+ | seta cl_packetdup " | ||
+ | </ | ||
+ | |||
+ | * Create a '' | ||
+ | |||
+ | < | ||
+ | set dm1 "map q3dm1; set nextmap vstr dm2" | ||
+ | set dm2 "map q3dm2; set nextmap vstr dm3" | ||
+ | set dm3 "map q3dm3; set nextmap vstr dm1" | ||
+ | vstr dm1 | ||
+ | </ | ||
+ | |||
+ | * Set up some bots in a '' | ||
+ | |||
+ | < | ||
+ | seta bot_enable 1 | ||
+ | seta bot_minplayers 4 | ||
+ | |||
+ | addbot doom 3 blue 10 | ||
+ | addbot orbb 3 red 10 | ||
+ | addbot bones 3 blue 10 | ||
+ | addbot major 3 red 10 | ||
+ | </ | ||
+ | |||
+ | Okay thats it. Now you can run your server with | ||
+ | |||
+ | $> ./ | ||
+ | |||
+ | To automate this have a look at the init script below. Oh and be sure to open your firewall or your buddies can't connect. | ||
+ | |||
+ | ===== Init Script ===== | ||
+ | |||
+ | This script starts and stops the dedicated server. Installed to ''/ | ||
+ | |||
+ | < | ||
+ | #! /bin/sh | ||
+ | set -e | ||
+ | |||
+ | BASEPATH="/ | ||
+ | BINARY=" | ||
+ | DAEMON=" | ||
+ | OPTIONS=" | ||
+ | RUNAS=" | ||
+ | PIDFILE=" | ||
+ | |||
+ | test -x $DAEMON || exit 0 | ||
+ | |||
+ | export HOME=$BASEPATH | ||
+ | |||
+ | case " | ||
+ | start) | ||
+ | echo -n " | ||
+ | cd $BASEPATH | ||
+ | start-stop-daemon --start --quiet -c $RUNAS --pidfile $PIDFILE \ | ||
+ | -N -10 -m -b -d $BASEPATH --exec $DAEMON -- $OPTIONS | ||
+ | echo " | ||
+ | ;; | ||
+ | stop) | ||
+ | echo -n " | ||
+ | start-stop-daemon --stop --quiet --pidfile $PIDFILE \ | ||
+ | --exec $DAEMON | ||
+ | echo " | ||
+ | ;; | ||
+ | restart|force-reload) | ||
+ | $0 stop | ||
+ | sleep 3 | ||
+ | $0 start | ||
+ | ;; | ||
+ | *) | ||
+ | echo " | ||
+ | exit 1 | ||
+ | ;; | ||
+ | esac | ||
+ | |||
+ | exit 0 | ||
+ | </ |