
Game Configuration: Steam Installer
This is Part 10 of the Game Configuration series. The Steam Installer automates downloading and updating game server files using SteamCMD.
What Is the Steam Installer?
Many game servers are distributed through Steam via SteamCMD — a command-line tool for downloading and updating Steam game files. GameCP's Steam Installer section automates this process so game servers can install and update themselves without manual commands.
When enabled, GameCP runs SteamCMD inside a Docker container during the installation phase, downloading the game files to the server's data directory.
Enabling the Steam Installer
Toggle Enable Steam Installer to activate this section. Once enabled, you'll see the full configuration.
Steam App ID
The most important field. Every game on Steam has a unique App ID that identifies it. Examples:
| Game | App ID |
|---|---|
| Counter-Strike 2 | 730 |
| Team Fortress 2 | 232250 |
| Rust | 258550 |
| Valheim | 896660 |
| ARK: Survival Evolved | 376030 |
You can find the App ID on the Steam Store URL or on SteamDB.
Force Platform Type
Override the platform detection if needed:
- Auto-detect (default) — uses the node's OS
- Linux — force download Linux binaries
- Windows — force download Windows binaries
- macOS — force download macOS binaries
Useful when running a Linux node but the game only ships Windows server binaries (common with Wine-based setups).
Authentication
Anonymous Login
Most dedicated server downloads are available with anonymous login — leave the username and password empty.
Authenticated Login
Some games require a valid Steam account to download. Fill in:
- Steam Username — your Steam account name
- Steam Password — your account password
- Steam Auth Code — Steam Guard 2FA code (if enabled)
Games requiring authentication are less common and typically marked as such on SteamDB.
Advanced Options
Beta Branches
Access pre-release or experimental builds:
- Beta Branch — the branch name (e.g.,
beta,experimental,unstable) - Beta Password — password if the beta is private
Docker Image
The Docker image used to run SteamCMD. Default is a Debian-based installer image. You typically don't need to change this unless your setup requires a specific SteamCMD version.
Extra Flags
Additional flags passed directly to SteamCMD for edge cases.
Validate Files
When enabled (default), SteamCMD validates the integrity of downloaded files. This catches corrupted downloads but adds time to the installation. Recommended to keep enabled.
Tips
- Always test with a single server before deploying a new App ID at scale
- The App ID field supports variable substitution — use
${STEAM_APP_ID}if you want users to be able to override it - If a game requires authentication, consider using a dedicated Steam account rather than your personal one
- SteamCMD caches downloads, so subsequent updates are much faster than the initial install