Downloading Game Content
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
If you're after content such as EP2 or EP1 (Singleplayer Valve games in general), Launch SteamCMD and type in
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 you would type
However, make sure that wherever piece of content it is that you're installing (Episode Two, in this case) is not pointed towards the server directory that you run your server from. Doing so will forcibly install game content to the root folder itself and can cause mass overwrites and issues usually resulting in having you start over from scratch.
It's a good idea to make a single folder from within your server folder (such as C:\BaseContent) where you can point all of your app_update commands to prevent this from happening and overwriting all of your server files (such as replacing the Garrysmod 'bin' folder with Episode Two's, which in turn breaks the server and forces you to start over)
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.
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.