Alien Arena server guide

Dedicated servers typically run on a PC in the home over a DSL connection. This page will help you set up and get the most out of a dedicated server run from home.

 

NAT configuration

Servers that run through NAT require the following UDP ports to opened for inbound access: 27900, 27901, 27910. If you plan to run more than one server, enable some other ports too, for example 27920, 27930, 27940.

Please make sure that your Windows/Linux firewall also allows these inbound UDP ports.

 

DSL line configuration

DSL lines often use a technique called "interleaving" to improve line stability and robustness. However, this typically adds 30ms to the connection between the home PC and the ISP, which is bad for both playing Alien Arena, and serving dedicated servers.

For stable lines this can usually be turned off safely - ask your ISP or telecoms provider to do this for you.

How can you tell if your line is interleaved?

Your router should tell you under the DSL line status page. Look for "interleaved" or "fastpath".

Alternatively, use traceroute to a server on the internet. If the first hop (your DSL connection) is around 30ms, then it is likely that interleaving is enabled on your line.



Quality of Service 

Since you''re likely to use your connection for activities other than serving Alien Arena, it''s a good idea to prioritise game traffic over web and ftp traffic. Many routers will allow you to do this using Quality of Service (QoS). Look for these pages in your router configuration. You should be able to either prioritise UDP traffic on the ports you defined above, or at least reduce the priority of web (TCP port 80) and ftp (TCP port 21) traffic.



Bandwidth considerations

 

Monthly UDP bandwidth usage per player per month = 9.5 GiB (assuming always connected)
Average throughput = ~3872 bytes/sec
Traffic is 67% inbound, 33% outbound

Results obtained 7th March 2007 using iptraf.
An uninterrupted CTF game between two average players alongside four bots was monitored over ten minutes, and values derived from those statistics.

EuroArena, one of the more popular dedicated servers, shifts between 40-60Gb/month in games traffic alone.

 

Server configuration

Server game type and rules are defined in .cfg files in the /arena/ subdirectory. Typically a different config file would be created for each server that is run.

For example, "myconfig.cfg" might be configured like this:

set port 27910
set dmflags 540688
set hostname "Example Server"
set website "http://www.myhomepage.com/" s
set Admin "Admin" s
set deathmatch 1
set maxclients 16
set maxspectators 2
set fraglimit 20
set timelimit 20
set sv_maplist "dm-dynamo2 tourney0 dm-vesuvius dm-furious"
set sv_public 1
set logfile 1
set allow_download 1
set allow_download_maps 1
set allow_download_models 1
set allow_download_players 1
set allow_download_sounds 1
set rcon_password "password"
setmaster master.corservers.com master2.corservers.com
map dm-dynamo2

To kick off the bots after a certain number of players join, use

set sv_botkickthreshold XX

The following mutators can also be applied:

MUTATOR DESCRIPTION
set ctf 1 Capture the flag mode
set excessive 1 Everyone starts with all weapons, which fire fast and don't run out of ammo
set tca 1 Team Core Assault mode - clear the other team's beacons and attack the spider
set instagib 1 Everyone starts with the disruptor, infinite ammo and one hit to kill
set rocket_arena 1 Everyone starts with the rocket launcher and infinite ammo
set low_grav 1 Gravity is reduced
set regeneration 1 Health slowly regenerates
set vampire 1 Suck other players health by shooting them
set grapple 1 The grappling hook is enabled
set playerspeed 1 Players move extra fast
set quickweap 1 Weapons can be changed quickly
set sv_joustmode 1 Players can keep pressing jump to gain height

 

Anti-camp can be turned on like this:

set anticamp 1
set camptime 5
 

camptime is the number of seconds a player has to stand in one place before a warning is issued and health starts to reduce.

 

 

Server options

 

Var

Default

Description
g_spawnprotect 2 Maximum time in seconds that a player will be invunerable after respawning (0 disables spawn protection)
sv_downloadurl

http://icculus.org/

alienarena/sv_downloadurl/

URL of CURL source for third party content (must match games server content)
wep_selfdmgmulti 1.0 Modifier for amount of self damage weapons do (0.5 => half damage)
wep_disruptor_dmg
55 Damage inflicted by the disruptor
wep_disruptor_kick
55 Kick from the disruptor
g_spawnhealth
125 (300 for excessive)
Health at spawntime
g_maxhealth
100 (200 vampire, 300 excessive)
Max health allowed (aside from armour shards)
g_maxbullets
200 Max ammo for chaingun
g_maxshells 100 Max shells for smartgun
g_maxrockets
50 Max rockets
g_maxgrenades 50 Max napalm for flamethrower
g_maxcells 200 Max cells for disruptor, beamgun and guided rockets
g_maxslugs
50 Max slugs for vaporizer
g_antilag
1 Enable antilag, though this is somewhat experiemental at the time of writing

 

DMFLAGS

 

Below is a table of dmflags supported by the CRX engine.

Normally these would be added together to give the resulting dmflags value, but to reduce the guesswork, use the DMFLAGs calculator here.

FLAG HEX DECIMAL
DF_NO_HEALTH 0x00000001 1
DF_NO_ITEMS 0x00000002 2
DF_WEAPONS_STAY 0x00000004 4
DF_NO_FALLING 0x00000008 8
DF_INSTANT_ITEMS 0x00000010 16
DF_SAME_LEVEL 0x00000020 32
DF_SKINTEAMS 0x00000040 64
DF_MODELTEAMS 0x00000080 128
DF_NO_FRIENDLY_FIRE 0x00000100 256
DF_SPAWN_FARTHEST 0x00000200 512
DF_FORCE_RESPAWN 0x00000400 1024
DF_NO_ARMOR 0x00000800 2048
DF_ALLOW_EXIT 0x00001000 4096
DF_INFINITE_AMMO 0x00002000 8192
DF_QUAD_DROP 0x00004000 16384
DF_FIXED_FOV 0x00008000 32768
DF_BOT_AUTOSAVENODES 0x00020000 131072
DF_BOTCHAT 0x00040000 262144
DF_BOT_FUZZYAIM 0x00080000 524288
DF_BOTS 0x00100000 1048576
DF_BOT_LEVELAD 0x00200000 2097152

 

Launching a server in Windows

Under the main game directory, create (or copy and modify) a myconfig.bat file, containing the line:

crx +set game arena +set dedicated 1 +exec myconfig.cfg

...where myconfig.cfg exists in the arena/ directory.

Now you're set - just run the batch file to start the server.

If you wish to run more than one server on a machine, then each server must have a different port number assigned in the config file.   Alternatively, add -port to the command line in the batch file (.cfg file port assignment takes precidence).
 
 

Launching a server in Linux

Linux servers can be launched using the command line:

crded +set game arena +exec myconfig.cfg

...where myconfig.cfg is a server config file located in the arena/ subdirectory.

(If you don't have crded you should soft link it to crded.i686 or whatever is appropriate for your architecture using ln -s crded.i686 crded)
 

Troubleshooting

If your server doesn't appear in Galaxy or the in-game browser, try this server healthcheck.

If you know your IP, you can see if it is registered with the master or not, and if it is, why your server isn't appearing.

 

Custom bots for the server

This is one for Windows based server admin since it requires Win32 executable "bot configurator".

Open bot configurator,  Make a name for bot and enter skill levels,  Repeat for as many bots as you are making.

Save to "Bot Info" file in your Alien Arena folder.

Start a temporary server, remove any bots there and add the ones you made by name, model and skin desired (using, for example, sv addbot Cherry AI/AI). The order you start them is the order that will be the remaining bot as they are kicked. So say if you add Cherry first to your temp server, she will be the first to join, and last to leave on your dedicated server. Play them till 10 frags and close server.

The botinfo/ folder will have your bots in a file called bots.tmp

Copy this file to your Desktop and rename the file to custom1.tmp

Put the renamed file back into the botinfo/ folder

That is it!

Now all you have to do is add this command line in your server cfg: set sv_custombots 1