Downloading Game Content to a Dedicated Server
To be able to install Episode 1 / 2 / Portal / Other content on a Garrysmod DS, there are a few requirements, these are:
- The game must be using the Steam Pipe format and be available on SteamCMD.
- You have access to a copy of the game legally via a Steam account.
For our example, we'll be using Half-Life 2: Episode Two
For content such as TF2, CSS and so on just Launch SteamCMD and type in login anonymous.
If you're after content such as EP2 or EP1 (Singleplayer Valve games in general), Launch SteamCMD and type in "login <username>'. Make sure that this Steam Account has the game on the account otherwise you will be greeted with a No Access error.
When you login with an actual username, it will ask for a password (which will appear as plain text in the console). If you have Steam Guard enabled, it will then ask for a verification code.
As you would with your typical SteamCMD server, perform the app_update command. For Episode Two this is 420, so "app_update 420".
Assuming all has gone well, the content will start downloading to the directory specified. The content will already be in Steampipe format so no converting has to be done.
Using the mount.cfg file we can then set content path with the appropriate tag. Once this is done, reboot the server and the content should be working and available for users.
GSP / Multiple Server tips
- If you install the content to a single location (such as C:\BaseContent) and then point all the mount files to that one location, every single server is able to mount from that one directory. No longer do you have to ship content with each server
- To upgrade any online content (CSS, TF2 etc) for Garrysmod, just have SteamCMD point to that folder each time and it will perform the incremental updates. That way you don't have to faff on each time.
- The user you are running your servers with only needs (R)ead permissions on those content folders.