Setting up a Day of Defeat Source/Counter Strike Source dedicated server on Linux

Introduction
Even though there is some information on how to setup a dedicated server source server on a Linux based system the articles are often old or to generic for my liking. I have written this article to help other people setup a Day of Defeat source (DOD:S) server on a Ubuntu 8.04.1 system.

Downloading the software from steampowered.com
The first thing to do is to download the Source Dedicated Server from steampowered. So on the linux server I create a folder on the dod user account and download the binary with the following commands.

dod@dirac:~$ mkdir srcds_l
dod@dirac:~$ cd srcds_l
dod@dirac:~/srcd_l$ wget http://www.steampowered.com/download/hldsupdatetool.bin

The next thing to do is to make the file executable and run the program.

dod@dirac:~/srcd_l$ chmod +x hldsupdatetool.bin
dod@dirac:~/srcd_l$ ./hldsupdatetool.bin
dod@dirac:~/srcd_l$ ./steam

Now the basic part is installed and need to download and install DOD:S.

dod@dirac:~/srcd_l$ ./steam -command update -game dods -dir .

If I wanted something like CS:S instead I would replace dods with “Counter-Strike Source”.

Startup script
In stead of issuing a series of command every time I wish to start the server I run the following shell script.

#!/bin/bash
 
cd srcds_l
./steam -command update -game dods -dir . 
# This updates dods file to latests version before launching the game.  
 
cd orangebox
./srcds_run -console -game dod +map dod_kalt +maxplayers 24 +ip 192.168.1.153 -port 27015 -autoupdate -pingboost 1 -debug 
# This starts the server and sets some obvious settings. Notice the strange syntax with a plus in front of ip but a minus in front of port.

If the server is behind a router as mine is you need to forward some ports to the server:

  • UDP 1200 (Friends Network)
  • UDP 27000 to 27015 (Gameport)
  • UDP 27020
  • TCP 27030 to 27039
  • TCP 27015 (SRCDS Rcon port)

server.cfg
The next logical thing to do is to edit the server.cfg. It should be created in
srcds_l/orangebox/dod/cfg/
Most of these entrys are self explanatory.

hostname "1337 |-|4xor DODS server"
sv_contact "1337@foobar.com"
rcon_password "verysecret"
//sv_password "somewhat secret"
 
//SETTINGS
sv_visiblemaxplayers 24 // Overrides the max players reported to prospective clients
sv_lan 0  // This is not a Lan server 
sv_secure 1 // No cheats!
sv_cheats 1 // No cheats
sv_region 3 // Region 3 is europe
sv_unlag 1
sv_rcon_minfailures 2
sv_rcon_maxfailures 3
sv_rcon_banpenalty 0 (permanent ban}
sv_rcon_minfailuretime 30
sv_logbans 1
sv_filterban 1
log "on" // creates a logfile
sv_logfile 1
sv_log_onefile 1 //only one log file 
 
sv_allowDownload "1" // enables or disables direct client downloads from server.
sv_dl_maxRate "250000" // sets the max rate in bytes/s for direct client downloads. 250000 B/S = 244.KB/s
net_maxfilesize 500 // The maximal filesize in mb for the client to download from the server.
 
mp_friendlyfire 1 
mp_timelimit 30 // 30 minute timelimit
mp_autokick 7 // Kick idle players
dod_bonusround 0 // Winning team cant kill losers
 
//mapcyclefile "mapcycle.txt"

Adding more maps
To install a map such as dod_arnhem the first thing to do is to download the zip/rar file from some webserver such as
DOD:S maps [fpsbanana.com]
and then unpack the bsp files in to the folder /srcds_l/orangebox/dod/maps/

dod@dirac:~/srcds_l/orangebox/dod/maps$ unrar -e dod_strand.rar

If the zip files contains new sounds or models these files should be moved to the appropriate path in /srcds_l/orangebox/dod/.

Running the server
When running the game, one can connect to the server and use rcon to administer the server. Once connected to the server start the in-game console and the following to connect.

rcon_password "verysecret"

I should then be logged in a be able to do all sorts of nice things on the server. Every command should start with “rcon” when working on the server.

  • rcon say [text]
    Say something in-game as Console: [text]
  • rcon changelevel [map]
    Change the level of play (Example: dod_palermo)
  • rcon stats
    This will show a table with CPU usage and stuff on the server.
  • rcon restartgame [x]
    This will restart the game (NOT the server) in seconds.
  • rcon quit
    This terminates the server.
  • rcon kickid [number]
    Kick someone from the game, using the UserID or SteamID.
  • rcon users
    Show user info for players on server.
  • rcon banid [x] [y] kick
    Ban [x] in minutes (0=permanent) [y] User or SteamID.
  • rcon addip [x] [z] kick
    Ban by IP [x] same as above [z] IP-address of player.
  • rcon removeid [p]
    Remove ban for [p] by SteamID.
  • rcon removeip [q]
    Remove ban for [q] by IP-address.
  • rcon writeid
    Saves all the banned SteamID’s.
  • rcon writeip
    Saves all the banned IP-addresses.

If you don’t want to run your own server, you could always rent game servers from a host that specialize in providing DOD or CSS servers.

Sources
Source Dedicated Server Guide [planethalflife.gamespy.com]
Install: Linux (Rev. 2) [srcds.com].
www.srcds.com
list.valvesoftware.com

  • Share/Bookmark
This entry was posted in Articles, Computer, DODS, News, Travel. Bookmark the permalink.

9 Responses to Setting up a Day of Defeat Source/Counter Strike Source dedicated server on Linux

  1. Pingback: LinuxIN.dk

  2. Nice guide. Could say a few words about what kind of hardware and internet connection is needed to run a HL2 based server?

  3. I have a 56k modem. Would that suffice?

  4. I am running the server on a Thinkpad T40 with Ubuntu 8.04.1 LTS. It has 768 Mb ram and Pentium M 1.5 GHz CPU. With 12 players on the server the CPU usage is about 65%. The net traffic was quite steady 55 kb/s up and 120 kb/s down. So I would say that the hardware demands are quite low but the net demands are somewhat more demanding. :)

  5. Velo says:

    Go to my server.
    GunGame!
    193.108.39.47:27015

  6. Would that suffice?

  7. blogindir says:

    Nice guide. Could say a few words about what kind of hardware and internet connection is needed to run a HL2 based server?

  8. I have already written this somewhat in the comments. I do not know the exact numbers but at least it is possible with my meager setup: “I am running the server on a Thinkpad T40 with Ubuntu 8.04.1 LTS. It has 768 Mb ram and Pentium M 1.5 GHz CPU. With 12 players on the server the CPU usage is about 65%. The net traffic was quite steady 55 kb/s up and 120 kb/s down.”

  9. Connor Bell says:

    Can anyone suggest a reliable Dedicated Server hosting that is not very expensive?*~,

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">