SteamCMD: Difference between revisions
Jump to navigation
Jump to search
Line 20: | Line 20: | ||
:: If you receive a Steam Guard error, check your e-mail for your access code and login using the following command (you'll only need to do this once per computer): | :: If you receive a Steam Guard error, check your e-mail for your access code and login using the following command (you'll only need to do this once per computer): | ||
login <username> <password> <steam guard code> | login <username> <password> <steam guard code> | ||
::3. | ::3. You should see a message stating that you have successfully logged in with your account. | ||
::4. SteamCMD caches your credentials, the next time you log in you can simply type | |||
login <username> | |||
== Downloading an app == | == Downloading an app == |
Revision as of 13:00, 18 August 2012
SteamCMD is a new tool to install and update dedicated servers using a command line interface.
Downloading and Running SteamCMD
- 1. Download the SteamCMD Update Tool
- 2. Extract the contents to a directory
Note:Do not extract the contents of the updater tool to the regular Steam Client folder or to a folder that has the older HLDSUpdateTool program.
- Linux: type tar xvfz steamcmd.tar.gz
- 3. Launch SteamCMD for the first time
- 1. Open a command prompt in that directory and start SteamCmd
- Windows: type steamcmd
- Linux: type STEAMEXE=steamcmd ./steam.sh
- The program will automatically update and enter you in to a Steam> prompt. Type help for more information.
- 2. Log in with your Steam Account
Note:You must log out of the regular Steam client in order to properly log in to SteamCMD Update Tool.
- 1. Open a command prompt in that directory and start SteamCmd
login <username> <password>
- If you receive a Steam Guard error, check your e-mail for your access code and login using the following command (you'll only need to do this once per computer):
login <username> <password> <steam guard code>
- 3. You should see a message stating that you have successfully logged in with your account.
- 4. SteamCMD caches your credentials, the next time you log in you can simply type
login <username>
Downloading an app
- 1. Start SteamCMD and set your app install directory.
Note:On some Linux distributions the path cannot contain any capital letters - see #Known issues
- Examples:
- Windows:
force_install_dir c:\csgo-ds\ force_install_dir .\csgo-ds\
- Linux:
force_install_dir ~/csgo-ds/ force_install_dir ./csgo-ds/
- 2. Install or update the app.
app_update <app_id>
- To also validate the app:
app_update <app_id> validate
- Example:
- To install and validate CS:GO:
- Example:
app_update 740 validate
- 3. Once finished, type quit to properly log off of the Steam servers.
Automating SteamCmd
There are two ways to automate SteamCmd.
- 1. Add commands to the command line. Example:
SteamCmd +login user password +force_install_dir ../csgo_ds +app_update 740 validate
- 2. Create a script.
- a. Put your SteamCmd commands in a text file. Example:
// update_csgo_ds.txt // login user password force_install_dir ../csgo_ds app_update 740 validate exit
- b. Run SteamCmd with the +runscript option. Example:
SteamCmd +runscript csgo_ds.txt
Protect your AccountLogin with gpg under Linux
Write your loginscript like the example and save the file as update_csgo_ds.txt. You have to encrypt with gpg the textfile with a symmetric encryption:
gpg -c --force-mdc update_csgo_ds.txt # enter your password # the new encrypted file update_csgo_ds.txt.gpg will be created # delete the original file with # rm update_csgo_ds.txt
You can check the decryption with:
gpg -d update_csgo_ds.txt.gpg # enter you password # the text will be written to stdout, when your password is ok
When everything is ok, you can use a little shell script to pipe the stdout from gpg to steam.sh:
#!/bin/sh read -p "Enter your password: " -s pass gpg --passphrase $pass -d login.gpg 2>/dev/null | STEAMEXE=steamcmd ./steam.sh pass=""
Known issues
I was able to download or update the server package with steamcmd, but the server fails to start
Common causes:
- Linux: Uppercase letters in directory/filenames