Dedicated Server (KillingFloor)

From Tripwire Interactive Wiki
Jump to navigation Jump to search

About

SteamCMD Update Tool is a new mwthod of updating game servers under Steam, all games are switching to this method, some of them are faster, like KillingFloor.

There is some mis-understanding of the new steamcmd update tool happening here, let me just clear things up: - steamcmd is used for updating of dedicated servers using the new Steam Pipe content system, newly released games on Steam use this system and older games are being switched over.

- currently steamcmd requires a steam login to perform an update, we plan on adding a no-login mode in the future for free to download titles.

- the login you use for steamcmd just needs rights to the game you are updating, so for the majority of dedicated server applications you CAN use a free account. So you could currently make an account per machine you wish to run the tool on. You do NOT need to buy the full game client to update if the dedicated server is free.

- CS:GO is a special case because it is in closed beta, access to its dedicated server is limited to blessed accounts which is why you need a special login. If you are having problems running CS:GO servers and are in the beta email the team and ask for access to another account for your dedicated servers.


With Steam Pipe you should see an improvement in download speeds and more robust response during high demand. It uses HTTP as the content delivery method, so you could setup a local HTTP proxy to cache all steamcmd requests, making updates from multiple machines stay on your local network.

- Alfred

Notice: WARNING

Do not extract the contents of the updater tool to the regular Steam Client folder or to a folder that has the older HLDSUpdateTool program.


Windows

Installing SteamCmd

MD5SUM

1aa2b3206b9626f20dface42b9bcf7f0 *steamcmd.zip
  • Download the steamcmd.zip to the destinatnnion directory, for example c:\SteamCmd
  • Unpack it.
  • Run command prompt (menu Start, Run, cmd)
  • Change to the install directory
cd /d c:\SteamCmd
  • Run steamcmd to update itself:
steamcmd
  • You can see extra info by using help command
help
  • Notice that you are in Steam prompt, there is Steam> in front of the line
  • Log in with your Steam Account created on the beginning
login username password

You should see something like this o successful login

Logging in user 'username ' to Steam Public...Success.
  • If you receive a Steam Guard error, check your e-mail for your access code and execute the following commands (you'll only need to do this once):
set_steam_guard_code yourcodehere
login username password

Installing KillingFloor server

  • Let's say your game server will be in c:\KFServer\ (more about it in #force_install_dir Paths) , so we must say to the SteamCmd to force install game in that directory, remember, you're still in Steam prompt
force_install_dir c:\KFServer\
  • Now we install game server, if you selected the directory that already contains the game, it will be updated:
app_update 215350 validate


Notice: Error recieved

If you encountered "ERROR! Failed to request AppInfo update, not online or not logged into Steam" you must remove Steam folder from root directory (rm -rf Steam)


You should see progress of game server installation or update.

  • Once finished, type quit at the Steam> prompt to properly log off of the Steam servers.

Automation

To do.

Linux

Installing SteamCmd

  • First, go to http://store.steampowered.com and make new Steam Account - no need for any games on it, it will be needed later.
  • Create installation dir just for new SteamCMD, example: /home/unreal/steamcmd
mkdir -p /home/unreal/steamcmd
cd /home/unreal/steamcmd
wget http://blog.counter-strike.net/wp-content/uploads//2012/04/steamcmd.tar.gz
  • Optional: check if the file was downloaded correctly by comparing MD5 Checksum
md5sum steamcmd.tar.gz

It should be:

b803e6adc6dd051039cbbfdd846d804d *steamcmd.tar.gz
  • Unpack it
tar zxf steamcmd.tar.gz
  • run the command
./steam.sh

Notice, it should make ~/Steam directory

  • You can see extra infor by using help command
help
  • Notice that you are in Steam prompt, there is Steam> in front of the line
Notice: Errors?

On certain Linux distributions you will see error message that something cannot be found etc, then try this instead

STEAMEXE=steamcmd ./steam.sh

if this still fails try:

export LD_LIBRARY_PATH=/home/unreal/steamcmd/linux32/
STEAMEXE=steamcmd ./steam.sh

It should update the Steam framework, then you should be able to run it in order to install games.

  • You can see extra info by using help command
help
  • Notice that you are in Steam prompt, there is Steam> in front of the line
  • Log in with your Steam Account created on the beginning
login username password

You should see something like this o successful login

Logging in user 'username ' to Steam Public...Success.
  • If you receive a Steam Guard error, check your e-mail for your access code and execute the following commands (you'll only need to do this once):
set_steam_guard_code yourcodehere
login username password

Installing KillingFloor server

  • Let's say your game server will be in /home/unreal/killingfloor (more about it in #force_install_dir Paths) , so we must say to the SteamCmd to force install game in that directory, remember, you're still in Steam prompt
force_install_dir /home/unreal/killingfloor
  • Now we install game server, if you selected the directory that already contains the game, it will be updated:
app_update 215360 validate
Notice: Error recieved

If you encountered "ERROR! Failed to request AppInfo update, not online or not logged into Steam" you must remove Steam folder from root directory

rm -rf ~/Steam


You should see progress of game server installation or update.

  • Once finished, type quit at the Steam> prompt to properly log off of the Steam servers.

Automation

To do.

force_install_dir Paths

You can specify installation directory in various ways:

Windows

  • Absolute Path:
force_install_dir c:\KFServer\
  • Up one folder:
force_install_dir ..\KFServer\
  • In the Steam Command folder:
force_install_dir .\KFServer\

Linux

  • Absolute Path:
force_install_dir /home/unreal/killingfloor/
  • Up one folder:
force_install_dir ../killingfloor/
  • In the Steam Command folder:
force_install_dir ./killingfloor/

Beta versions

If Tripwire is currently running a beta update of the dedicated server files:

app_update 215350 -beta "branch name"

Where "branch name" is the current beta branch. Currently there is not a live dedicated server beta branch.


Automating SteamCmd

There are two ways to automate SteamCmd.

1. Add commands to the command line. Example:
SteamCmd +login user password +force_install_dir ./kf_ds +app_update 215350 validate
2. Create a script.
a. Put your SteamCmd commands in a text file. Example:
// update_kf_ds.txt
//
login user password
force_install_dir ./kfserver
app_update 215350 validate
exit
b. Run SteamCmd with the +runscript option. Example:
SteamCmd +runscript kf_ds.txt

Starting the Server

Use the batch file downloaded with the server or create your own. To launch a server with default settings on BioticsLab use the following batch script:

ucc server KF-bioticslab.rom?game=KFmod.KFGameType?VACSecured=true?MaxPlayers=6