Main Menu

Source engine gameservers on SteamPipe

What do gameserver operators need to know about the Steampipe conversion?

Q. What’s happening?

We are upgrading TF2, DoD:S, CS:S, and HL2:MP to be delivered through SteamPipe, Steam’s new content distribution. This FAQ concerns issues particular to gameservers. Please see the general FAQ for more info

Q. How do I get the dedicated server?

SteamPipe does not use the HLDSUpdatetool executable. The new tool is steamcmd.exe. Many server operators are probably already familiar with this tool, since it’s used by CS:GO. You can download the tool and read instructions on how to use it here.

All of the Source engine games will allow anonymous login for the dedicated server. Below is an example SteamCMD script you could use to download the dedicated server. Replace [app_id] with the appropriate number from this table, and [base_install_path] with the directory where you want to install the server.

@ShutdownOnFailedCommand 1
@NoPromptForPassword 1
login anonymous
force_install_dir [base_install_path]
app_update [app_id]
quit

The directory structure created will look something like this:

[base_install_path]/srcds.exe
[base_install_path]/dod/
[base_install_path]/dod/gameinfo.txt
[base_install_path]/dod/materials/
[base_install_path]/dod/models/
[base_install_path]/dod/custom/
[base_install_path]/hl2/materials/
[base_install_path]/hl2/models/
etc.

There is no automated conversion process for the dedicated server. It will be a full re-download.

The Source engine games do not use the "mod" feature of SteamCMD. Each game has its own AppID and is a seperate installation with no shared content.

Q. How can I test the TF beta if my favorite server plugin isn't compatible?

All server plugins should be compatible between TF Release and TF Beta. The two branches of the game might be slightly out of sync with each other, but other than the app ID and a few version numbers, they are identical. (Previously, the beta used a different gamedir, “tf_beta”, which was a source of incompatibility. This is no longer the case. The beta directory structure is identical to the release game.) If a server plugin doesn’t work on the new TF Beta, it should only be for reasons related to the SteamPipe changes, not for reasons peculiar to the beta. There should be no work required to port between the beta and release version of the game. So if a server plugin works with the beta, then it *should* work when we convert the release game to SteamPipe.

Q. How does the new dod/downloads directory work for gameservers?

The dod/download folder is only used on the receiving side of a file transfer. When a file is uploaded (almost always from a gameserver to a client) it can originate from any search path visible to the engine.

The only class of file that typically are sent from clients to gameservers are user sprays. They go in the dod/download/user_custom directory. They are no longer stored in a flat directory structure, so the OS filesystem won’t get stressed out so quickly if you have a lot of visitors and accumulate a lot of sprays.

Problem with Steam?

Help Me With My Issue