Steam Support Wiki
 
 

Guide: Setting up a Standalone Dedicated Server:da

 
 

The content of this page is moderated by both Steam Support and the Steam user community - any links to outside sites should be treated with caution.

Steam Support will not request your Steam account password for any reason, nor will you ever be asked to enter your Steam account password into a website form.

Interested in assisting with translation? Apply to become a Steam Support Wiki Translator
English content to translate (START)

Standalone dedicated servers are the best choice for experienced users. Please see the Overview: Types of Game Servers:da topic if you would like more information to determine which type of game server is the best choice for you.

Download and Install HldsUpdateTool

  1. Download the HldsUpdateTool Installer (approximately 700 KB)
  2. Run the installer and select an installation folder
    Note: Do not use a path within any existing Steam folders
  3. Select the region which most closely matches your region (this value will be used to position your server in users' server browser lists)
  4. Upon completing the guided installation, navigate to the HldsUpdateTool installation folder and execute HldsUpdateTool.exe to download updates for the tool


HldsUpdateTool Parameters and Flags

Use these parameters and flags when running HldsUpdateTool program from the command line:

Format: hldsupdatetool -command <command> [parameters] [flags]

  • Commands
    • -command version - View installed versions
    • -command list - View available games
  • Parameters
    • -game <game> - Install a game where <tt<game></tt> is the desired game's code
    • -dir <installdir> - Specify the absolute path to the desired installation directory with <installdir> (the tool will install to the last directory used if no directory is specified)
    • -username <username> - Steam account username (only needed to access limited content)
    • -password <password> - Steam account password (only needed to access limited content)
  • Flags
    • -remember_password - Remember password (if a Steam account username and password are supplied)
    • -verify_all - Verify that all HLDS files have been updated
    • -retry - Automatically retry every 30 seconds if the Steam Network is busy


Install Game Content

Once HldsUpdateTool has been installed, you may begin installing game content:

  1. Open a command prompt (Start > Run > cmd)
  2. Navigate to the HldsUpdateTool installation directory
  3. Use the following command install a game:
    hldsupdatetool -command update -game <game> -dir <installdir>
    (Where <game> is one of the game codes listed below and <installdir> is the absolute path to the folder where you wish to store the content)
  • Source-engine Games
    • Counter-Strike Source - Counter-Strike Source
    • dods - Day of Defeat: Source
    • hl2mp - Half-Life 2: Deathmatch
  • GoldSrc-engine Games
    • cstrike - Counter-Strike 1.6
    • czero - Counters-Strike: Condition Zero
    • dmc - Deathmatch: Classic
    • dod - Day of Defeat
    • gearbox - Opposing Force
    • ricochet - Ricochet
    • tfc - Team Fortress Classic
    • valve - Half-Life Deathmatch
  • Third-party Game Content
    • redorchestra - Red Orchestra
    • ship - The Ship
    • sin - Sin Episodes
    • darkmessiah - Dark Messiah
    • garrysmod - Garry’s Mod


Third-party Mods

You must install the third-party mod files under the dedicated server folder. Please refer to the third-party mod support site for additional information on specific mods.


Configure the Server

These configuration procedures apply to both GoldSrc-engine servers (hlds.exe) and Source-engine servers (srcds.exe).


Launch Switches

Launch switches may be entered at the command prompt or saved with the hlds.exe or srcds.exe Windows shortcut. You may use as many launch switches as you would like, however, the switches must be entered correctly or your dedicated server will not start.

  • -autoupdate - Automatically updates the server whenever updates are released
  • -console - Starts the server in console mode (no GUI)
  • -game <game name> - Indicates which game server to launch
  • -ip <ipaddress> - Sets the server IP if multiple IPs are available
  • -port <port number> - Sets the port which the server will accept connections through (port 27015 will be used by default if no port is specified)
  • +maxplayers <number of players> - Sets the maximum number of players allowed on the server
  • +map <map name> - Sets the starting map


server.cfg Settings

A game server config file can be used to automatically execute set server console variables (CVARs) whenever the server is started.


Each game's server.cfg file can be found under the game's installation directory (this will be a subfolder named after the game's code under the installation directory specified when running HldsUpdateTool).


  • hostname "yourhostname" - Enter yourhostname as the server name which you would like to appear players' server browser
  • rcon_password "yourpassword" - Enter yourpassword as the secure password you would like to use to authenticate so you may change the server's configuration while logged in to play as a client
  • sv_aim # - Set auto-aiming for players where # is 1 for "on" and 0 for "off"
  • sv_cheats # - Set single-player cheat options where # is 1 for "enabled" and 0 for "disabled"
  • sv_contact "admin@yourdomain.com" - Sets the administrative contact e-mail address
  • sv_maxrate # - Set the maximum rate of bytes per second which the server is allowed to transmit where # is at minimum: 1000 / at default: 10000 / at maximum 25000
  • sv_region # - Sets the region which your server will report as its location where # is:
    • -1 - World
    • 0 - US East Coast
    • 1 - US West Coast
    • 2 - South America
    • 3 - Europe
    • 4 - Asia
    • 5 - Australia
    • 6 - Middle East
    • 7 - Africa

Please see the Server Settings:da topic for an extensive list of server commands.


HLDS Resource Management CVARS

Use the following CVARs to control how the HLDS/SRCDS manages resources.

  • sv_allowdownload # - Set to 1 to load content on the client (maps, sprays, and related materials) and 0 to disable
  • sv_allowupload # - Set to 1 to allow clients to upload custom sprays to the server and 0 to disable custom sprays
  • hpk_maxsize # - Limits the file size of spray uploads from clients (range: .1 MB to 1.5 MB - set to 0 to allow any file size)
  • sv_downloadurl <url> - Use this setting to allow clients to use a different server to download content (this reduces the server load associated with clients downloading content) - set your <url> in the format http://www.<domain>.com/<filepath> as directed in the Fast HTTP Downloading:da instructions
  • sv_filetransfercompression # - Set to 1 to enable file compression on files sent from the gameserver to the client and 0 to disable
  • sv_send_logos # - Set to 1 to allow the server to send custom sprays back to all players (sv_allowdownload must also be enabled) and 0 to disable sprays
  • sv_send_resources # - Set to 1 to enforce the sending of secure resources (models) to clients and 0 to disable


Game Settings

You may also create custom config files and load them by using the exec <filename> CVAR (where <filename is the name of a file located in the game installation folder).

  • Counter-Strike
    • mp_timelimit <minutes> - Use <minutes> to set the number of minutes spent on each map
    • mp_buytime <minutes> - Use <minutes> to set the amount of time players are allowed to buy/rebuy weapons before the round starts
    • mp_startmoney <amount> - Use <amount> to set the amount of money players start the round with
    • mp_c4timer <seconds> - Use <seconds> to set the detonation timer for C4 which has been planted
    • mp_freezetime <seconds> - Use <seconds> to set how long players are frozen before being able to move at the beginning of each round


motd.txt

This file contains your servers "Message of the Day". You may include your contact information and website address in this file if you wish.

HTML code is allowed in this file.

Example motd.txt:

 MESSAGE OF THE DAY
Welcome to my Counterstrike Server
Map Rotation For This Server:
de_dust2
cs_assault
de_train
cs_Havana


mapcycle.txt

This file contains the list of maps your server cycles through.

Example mapcycle.txt:

de_dust2
cs_assault
de_train
cs_Havana


Fast HTTP Downloading

Users may download custom content from a web server over HTTP to reduce the resources and bandwidth required by your dedicated server. Fast HTTP downloading allows the SRCDS or HLDS to use all the available resources and bandwidth for hosted games.

  1. Make a list of all the custom files (bsp, wav, mdl, etc) used on your server
  2. Upload the files to a web server while keeping the directory structure intact
  3. Optional: To display a banner image (for example, an image with the message "Content Hosting Provided By ...") upload a 340x56 pixel image to <custom content directory>/gfx/banner.gif
  4. Use the sv_downloadurl <url> CVAR and set <url> to http://<domain>/<custom_content_directory>/ (where <domain> is the domain name which points to your web server and <custom_content_directory> is the name of the directory which mirrors the custom content directory under your HLDS or SRCDS game installation folder)

    If your web server is secured with Basic HTTP Authentication, use the format http://<username>:<password>@<domain>/<custom_content_directory> to add your HTTP username and password for authentication where <username> and <password> is the username and password combination for a web server account with read privileges for the content files


Additional Dedicated Server Configuration Resources


Dedicated Server Assistance

Join the dedicated server discussion list for your operating system and review the mailing list archives to find solutions for dedicated server issues:




(END) English content to translate
Interested in assisting with translation? Apply to become a Steam Support Wiki Translator
 
 
  link: Valve Software MediaWiki Logo