Как создать игровой сервер на VPS для American Truck Simulator
Аренда сервера
Для начала вам нужно арендовать сам сервер. Можете это сделать на любом сервисе по их предоставлению, я лично использовал Perfect Quality Hosting (отчасти потому что у них есть сервис, где вы можете со своего компьютера пропинговать на страны и выбрать сервер, к которому у вас будет наименьшая задержка).
Вся настройка у меня на ОС Ubuntu 22.04.
Настройка VPS
Если вы на виндовсе, то открывайте powershell, в нём прописываете соединение к серверу:
ssh root@ip_вашего_сервера, далее yes, затем указываете пароль от рута и попадете на свой сервер.
Если вы на линуксе, то вам не надо ничего объяснять.
По классике обновляем сервер, вводим последовательно команды:
sudo apt upgrade
sudo apt dist-upgrade
Далее добавляем необходимый репозиторий и скачиваем нужные библиотеки:
dpkg --add-architecture i386
apt-get update
apt-get install ia32-libs
apt-get install -y libatomic1
Далее устанавливаем необходимую утилиту стима для создания сервера:
sudo apt install steamcmd
Запускаем эту утилиту командой:
steamcmd
После того как она запустилась закрываем её:
quit
Также необходимо добавить утилиту, которая позволит установить наш сервер АТС на автозапуск:
sudo apt install cron
sudo systemctl start cron
sudo systemctl enable cron
С первичной настройкой сервера в этом разделе всё
Настройка сервера игры
Задаём пользователя для стима, будет аноним (ATS —2239530, для ETS 2 номер будет 1948160) :
cd ~ && steamcmd +login anonymous +app_update 2239530 validate +quit
Переходим в директорию, где были установлены файлы сервера (если выбрали ETS 2, то папка будет называться Euro Truck Simulator 2 Dedicated Server):
cd "Steam/steamapps/common/American Truck Simulator Dedicated Server"
Запускаем сам сервер, чтобы он создал рабочую папку:
cd bin/linux_x64 && ./server_launch.sh
Сервер выдаст ошибку, что серверные файлы не были найдены, это нормально.
Для удобства создаём ссылку на рабочую папку:
cd ~ && ln -s ".local/share/American Truck Simulator" ATS_Server
Для дальнейших действий нам понадобится в файле игры уже на локальном компьютере изменить несколько параметров для включения командной строки. В папке мои документы на диске С найдите папку с игрой, далее в ней необходимо отредактировать в файле config две строчки:
uset g_developer "0"
на
uset g_developer "1"
uset g_console "0"
на
uset g_console "1"
export_server_packages
Продолжим. Понадобится программа WinSCP, чтобы скопировать файлы на виртуальный сервер.
Далее в своей рабочей папке откройте файл настройки сервера:
nano server_config.sii
Описание параметров:
lobby_name – название сессии (макс. 63 символа)
description – описание сессии (макс. 63 символа)
welcome_message – приветственное сообщение сессии, которое будет приходить игроку в чат, после подключения (макс. 127 символов)
Обратите внимание: в этих параметрах можно использовать русские символы, но после запуска сервера, эти символы в конфиге будут заменены на шестнадцатеричные значения байтов UTF-8 символов. Также следует помнить, что сервера с русскими названиями в списке будут отображаться ниже всех серверов, имеющих английское название (но если написать капсом, то будет выше).
password – пароль сессии, если нужен (макс. 63 символа)
max_players – максимум игроков, пока лимит 8
server_logon_token – токен Steam авторизации, в целом не обязателен, но лучше сделайте и пропишите, токен получаем здесь , номер игры 227300 для ETS или 270880 для ATS
player_damage – столкновения между игроками
traffic – трафик
hide_in_company – скрывать игроков в зонах компаний
hide_colliding – скрывать столкнувшееся ТС после телепортации
force_speed_limiter – принудительное ограничение скорости
mods_optioning – позволить модам, помеченным как необязательные, быть действительно необязательными
timezones – принимает значения от 0 до 2
service_no_collision – выключить коллизии в зонах сервиса
in_menu_ghosting – столкновения при нахождении в меню
name_tags – показывать теги имен игроков над их ТС
Если вам не нужны модераторы в сессии, то оставьте значение параметра moderator_list по умолчанию. Если модераторы все же нужны, измените значение на 1 и добавьте на новой строке еще один параметр, в котором нужно указать SteamID64 модератора (можно узнать здесь [findsteamid.com]). Вы можете добавить несколько модераторов, увеличивая число в квадратных скобках. В итоге это может выглядеть вот так:
moderator_list: 1
moderator_list[0]: 76567645898707676
moderator_list[1]: 76468674574869865
Далее открываем файл утилиты крон и в конце устанавливаем в ней автозапуск скрипта игрового сервера при перезапуске VPS:
crontab -e
@reboot cd "Steam/steamapps/common/American Truck Simulator Dedicated Server/bin/linux_x64" && /server_launch.sh &
Обязательно открываем порты:
sudo iptables -A INPUT -p tcp -m multiport --dports 27015,27016 -j ACCEPT
sudo iptables -A INPUT -p udp -m multiport --dports 27015,27016 -j ACCEPT
Всё! Теперь можете написать reboot, и при перезагрузке сервера он будет запущен с вашими настройками
Источник
This guide was created by its original author on the Steam Community. Are you the author and want it removed? Request removal.