FortressCraft Evolved Guide

Сервер FortressCraft Evolved на Linux for FortressCraft Evolved

Сервер FortressCraft Evolved на Linux

Overview

Это руководство – результат четырехчасового копания в различных источниках, сбора информации по крупицам и проверка их на практике. Оно не претендует на полноту и тщательность – воспринимайте его как краткий рецепт по получению работающего сервера FCE на удаленном сервере под управлением Ubuntu

Развертывание сервера

GLIBC

Проверяем версию GLIBC, должна быть не ниже 2.15:

ldd –version

Если ниже, обновляем дистрибутив

sudo apt-get update sudo apt-get upgrade

Если не помогло – обновляем или просто устанавливаем более свежий дистрибутив Ubuntu

SteamCMD

Ставим command-line оболочку для Steam: [link] (на этой же странице можно найти более подробную информацию об SteamCMD.

Далее запускаем SteamCMD

cd ~/steamcmd ./steamcmd.sh

Логинимся в учетную запись, в которой куплена FortressCraft

login username password

Проходим двухфакторную факторизацию, если она запрашивается.

Указываем директорию и устанавливаем игру, после чего выходим из SteamCMD

force_install_dir FCE app_update 254200 quit

Xvfb и библиотеки

Серверу для запуска требуется виртуальный X-сервер, ставим Xvfb

sudo apt-get install xvfb

Также сервер не запустится без некоторого количества библиотек, ставим

sudo apt-get install libxcursor1 libxrandr2

Настройки сервера

Редактируем файлы конфигурации:

nano ~/FCE/Default/firstrun.ini nano ~/FCE/Default/serveroverrides.ini

Параметры в них самоочевидны, меняем по вкусу, но в любом случае меняем Password на более сложный пароль.

Создаем .sh скрипт для упрощения запуска сервера (я кладу скрипт в ту же папку, где находится сервер)

cd ~/FCE cat > fce-start.sh << “EOF” #!/bin/sh cd ~/FCE xvfb-run -a -s “-screen 0 1024x768x24” ./FC_Linux_Universal.x86_64 -batchmode EOF chmod +x ./fce-start.sh

Проброс портов

Если сервер находится за NAT’ом, на роутере пробрасываем порты RCONPort (управление сервером) и ServerPort (доступ к серверу игрокам).
Важный нюанс: у меня заработало только когда я пробросил по этим портам и TCP, и UDP, не смотря на то что я встречал заявления что сервер работает ТОЛЬКО по UDP.

Управление сервером

Запуск сервера

Ставим screen, если по каким-то причинам у вас не установлен – ставим

sudo apt-get install screen

Если это первый запуск, создаем screen

screen -R fce

Если screen уже создан – переключаемся

screen -r fce

Переходим в каталог, куда положили скрипт и запускаем его

cd ~/FCE ./fce-start.sh

Сервер запущен. Спустя несколько минут он будет готов принимать игроков.

Сделать detach (выйти из screen, не завершая его работы) можно комбинацией Ctrl+A и затем D.

Управление и остановка сервера

Для управления используем клиент RCON, идущий в комплекте с Windows-версией игры и находящийся в [ПУТЬ_ДО_ПАПКИ_STEAM]steamappscommonFortressCraft64DefaultToolsPicoRCON.zip
Распаковываем архив, запускаем PicoRCON.exe и заходим на сервер:

connect IP_СЕРВЕРА:RCON_ПОРТ RCON_ПАРОЛЬ

Наиболее полный список команд я нашел здесь: [link]

Нас прежде всего интересует, как остановить сервер

Exit

или

FCQuit

Результат работы остальных команд вы не увидите в PicoRCON, но его можно увидеть в файле лога, расположенного ~/.config/unity3d/ProjectorGames/FortressCraft/Player.log
Этот файл можно просматривать в режиме реального времени

tail -f ~/.config/unity3d/ProjectorGames/FortressCraft/Player.log

Следите за его размером, файл со временем может разрастись до гигабайтов.

Читателям

Если вы горите желанием сделать этот гайд лучше (ну вдруг?) – пишите, организуем.

SteamSolo.com