Это старая версия документа!
Содержание
Установка SteamCMD на Debian 12
Не рекомендуется запускать steamcmd от root!
Необходимые пакеты и зависимости
dpkg --add-architecture i386 apt-get install lib32gcc-s1 lib32z1
Установка SteamCMD
Создать каталог для steamcmd и перейти в нее.
Далее будут команды от обычного пользователя!
mkdir ~/steamcmd cd ~/steamcmd
Скачать и распаковать steamcmd
wget http://media.steampowered.com/client/steamcmd_linux.tar.gz tar xvfz steamcmd_linux.tar.gz
Запуск steamcmd
При запуске приложение обновится
cd ~/steamcmd ./steamcmd.sh
После запуска отобразится Steam>
можно вводить команды steamcmd
Команды SteamCMD
Залогиниться анонимно
login anonymous
Залогиниться под аккаунтом Steam
login <login_steam>
Полный путь к каталогу установки сервера игры
force_install_dir <full_path>
Установить/обновить сервер игры по ID
Списки ID:
https://developer.valvesoftware.com/wiki/Dedicated_Servers_List
https://github.com/dgibbs64/SteamCMD-AppID-List-Servers/blob/main/steamcmd_appid_servers.csv
app_update <app_id>
Проверка целостности
app_update <app_id> validate
Проверка целостности всех файлов
validate
Загрузка beta-версий
app_update <app_id> -beta <beta_name>
Выход из steamcmd
quit
Автоматизация SteamCMD - примеры
Вводить команды в командной строке необходимо с символом плюс в качестве префикса, например:
./steamcmd.sh +login anonymous +force_install_dir ../csgo_ds +app_update 740 +quit
Чтобы установить определённый мод для HL1, таких как Counter-Strike: Condition Zero:
./steamcmd.sh +login anonymous +force_install_dir ../czero +app_set_config 90 mod czero +app_update 90 +quit
Для игры которая требует авторизацию, такой как Killing Floor:
./steamcmd.sh +login <username> <password> +force_install_dir c:\KFServer\ +app_update 215350 +quit
Параметр +@sSteamCmdForcePlatformType позволяет выбрать платформу
+@sSteamCmdForcePlatformType linux
+@sSteamCmdForcePlatformType windows
+@sSteamCmdForcePlatformType macos
Сценарии SteamCMD - примеры
1. Введите ваши команды SteamCMD в текстовом файле.
Комментарии начинаются с //
// update_csgo_ds.txt // @ShutdownOnFailedCommand 1 //поставьте 0 при одновременном обновлении нескольких серверов @NoPromptForPassword 1 login <username> <password> //for servers which don't need a login //login anonymous force_install_dir ../csgo_ds app_update 740 validate quit
2. Запустите SteamCMD с опцией +runscript, ссылаясь на файл который вы только что создали.
steamcmd +runscript csgo_ds.txt
SteamCMD - примеры
Запуск Valheim
Дополнительные пакеты и зависимости
apt-get install libpulse-dev libatomic1 libc6 lib32stdc++6 libsdl2-2.0-0 libsdl2-2.0-0:i386
Установка
./steamcmd.sh +@sSteamCmdForcePlatformType linux +force_install_dir /path/to/server/valheim +login anonymous +app_update 896660 validate +quit
Запуск сервера по умолчанию
cd /path/to/server/valheim ./start_server.sh
Можно скопировать скрипт запуска и изменить конфигурацию
Оригинал:
#!/bin/bash export templdpath=$LD_LIBRARY_PATH export LD_LIBRARY_PATH=./linux64:$LD_LIBRARY_PATH export SteamAppId=892970 echo "Starting server PRESS CTRL-C to exit" # Tip: Make a local copy of this script to avoid it being overwritten by steam. # NOTE: Minimum password length is 5 characters & Password cant be in the server name. # NOTE: You need to make sure the ports 2456-2458 is being forwarded to your server through your local router & firewall. ./valheim_server.x86_64 -name "My server" -port 2456 -world "Dedicated" -password "secret" -crossplay export LD_LIBRARY_PATH=$templdpath
Пример:
export templdpath=$LD_LIBRARY_PATH export LD_LIBRARY_PATH=./linux64:$LD_LIBRARY_PATH export SteamAppId=892970 echo "Starting server PRESS CTRL-C to exit" # Tip: Make a local copy of this script to avoid it being overwritten by steam. # NOTE: Minimum password length is 5 characters & Password cant be in the server name. # NOTE: You need to make sure the ports 2456-2458 is being forwarded to your server through your local router & firewall. /home/gameserver/steamcmd/steamcmd.sh +login anonymous +force_install_dir /home/gameserver/valheim +app_update 896660 +quit ./valheim_server.x86_64 -nographics -batchmode -name "[RU] MyArena" -port 2456 -world "Underworld" -password "qwerty" -public "1" -savedir "/home/gameserver/valheim/" export LD_LIBRARY_PATH=$templdpath