Half-Life Dedicated Server

From Valve Developer Community
Jump to: navigation, search
English (en)español (es)
Edit

Half-Life Dedicated Server (HLDS) is an application used to run a dedicated server without the clientside component.

Limitations/Bugs

Warning.pngWarning:HLDS is no-longer actively updated, and only receives occasional engine and security updates.
PlacementTip.pngWorkaround: ReHLDS is highly recommended for additional security and bugfixes. This is a server-side executable replacement; clients do not need to modify their installation to connect to severs running ReHLDS.

Use GitHub in order to prevent duplicate or outdated bug reports at the wiki.

GoldSrc GoldSrc games

Blank image.pngTodo:

  1. Half-Life Half-Life
  2. Counter-Strike Counter-Strike
  3. Counter-Strike: Condition Zero Counter-Strike: Condition Zero (If game is installed)
  4. Deathmatch Classic Deathmatch Classic (If game is installed)
  5. Day of Defeat Day of Defeat (If game is installed)
  6. Half-Life: Opposing Force Half-Life: Opposing Force (If game is installed)
  7. Ricochet Ricochet (If game is installed)
  8. Team Fortress Classic Team Fortress Classic (If game is installed)

Hardware Requirements

Clarify: the system requirements vary depending on how many players you have on your server.

CPU - Depends on the number of clients. At least P2 266 for hosting a full game, the more the better. 400MHz recommended.

RAM - Minimum 64 MB, 128 MB recommended.

Clarify: bandwidth also depends on the number of clients. At least 512kbps upstream recommended.

Connectivity

No matter which type of server you are using, your computer must be able to receive unsolicited incoming connections. This is exactly what routers and software firewalls exist to prevent, so if you are using either you will have to reconfigure. Refer to the manufacturer instructions for how to do this.

The ports HLDS officially requires are:

  1. 27015 UDP (game transmission, pings)
  2. 27015 TCP (RCON)
  3. 27020 UDP (HLTV transmission)
  4. 26900 UDP (VAC service) -- automatically increments if used in case of additional server processes

HLDS has also been spotted opening connections on 27005 to 27030 UDP/TCP, but some of these may be outbound only.

Tip.pngTip:Pinging your own server will fail with some routers and/or ISPs. The most reliable way to test whether your connection is open is either to get a friend to try connecting, or to install the Microsoft Network Monitor (apply the filter Udp.Port == 27015) and watch for requests coming in from random people around the world. Note that the heartbeats you will see being sent to the two master servers do not mean that the connection is open.
Note.pngNote:A residential internet connections may not have the upload capacity to support large games.

Installation

See SteamCMD for most games. See HLDSUpdateTool for games that haven't been updated in a long time.

Configuring and running the server

Navigate to the folder you just installed your server in. There should be a bunch of files and folders, including a directory with the name of the game you have just installed, e.g. cstrike for Counter-Strike (1.6). The configuration files are located in the <game>/cfg/ e.g. cstrike/cfg/ directory.

Edit the main configuration file: <game>/cfg/server.cfg. Change the hostname line (this is the name people will see in the server browser) and other options to your liking.

Windows

Open the directory where you have installed the server and start the server by double click at hlds.exe or by batch command:

hlds.exe -console -game <game> +maxplayers X +map <map>

For example:

hlds.exe -console -game cstrike +maxplayers 8 +map de_dust

Linux

Open a terminal where you have installed the server and start the server:

./hlds_run -game <game> +maxplayers X +map <map>

For example:

./hlds_run -game cstrike +maxplayers 8 +map de_dust

See also

External links