Гайд на установку своей сборки

Материал из Википедия XLGAMES.PRO
Перейти к навигации Перейти к поиску

Вступление

Цель: Данное руководство создано с целью помочь в установке собственной сборки на сервер Space Station 14 (Далее SS14), а так же получения полных прав на сервере
Основные шаги: Установка необходимого программного обеспечения (Далее ПО), закачка сборки сервера, сборка в пакет файлов и отправка на сервер хостинга по FTP, получение прав
Дополнительная информация: Раздел "Получение прав" целиком построен на костылях, ибо "из коробки сервер не поддерживает RCON"XLGAMES Support. Раздел "Немного про конфиг и его настройку" повествует о файле конфигурации и что за что отвечает.

Необходимое ПО

Для работы со собственной сборкой необходимо установить следующие компоненты:
- Скачать и установить Git.
В данном случае нет возможности обойтись версиями с UI, только консоль. Заходите на сайт и находите свою систему, после ставите под вашу систему.

- Скачать и установить .NET 7. Заходите на сайт и находите свою систему, после ставите под вашу систему.

Nekodar-1.png

Сборка сервера

После установки всех зависимостей из прошлого пункта, пришла пора начать собирать сервер! Сначала создайте папку где вам удобно будет, а после правой кнопкой мыши в папке выбираем из выпадающего меню "Git Bash Here"
Далее мы находим ссылку на нужную нам сборку, в данном примере будет использоваться официальная сборка, копируем.

Nekodar-2.png
Nekodar-3.png

Возвращаемся к консоле. В ней пишем следующую команду "git clone (ВАША ссылка)". Должно получиться следующее. Нажимаем enter и ожидаем окончания.

Ошибка создания миниатюры: /bin/bash: /usr/bin/convert: No such file or directory Error code: 127

После завершения загрузки последовательно впишите следующие команды:
"cd (название папки которая создалась)"
"py RUN_THIS.py"
"dotnet build"
"py Tools/package_server_build.py --hybrid-acz" (Если не запускается, в диспетчере задач убивайте все задачи с именем ".NET Host").
После завершения последней команды вы получите новую папку с именем release. Там вам нужно забрать файл SS14.Server_win-x64.zip и скопировать его в отдельную папку (желательно чистую).

Далее распаковываем архив

После распаковки у вас появится туча файлов, но вам нужно лишь запустить только Robust.Server.exe. Далее в лаунчере прямым конектом подсоединяемся к localhost/
После подключения пишем в консоле такую команду "promotehost (ваш логин)", после "permissions" уже в вашем клиенте. Настраиваете себе полные права.

Nekodar-5.png
Nekodar-6.png

На втором скрине под цифрой 1 следующие права:
ADMIN - Позволяет использовать команды с флагом ADMIN, а так же говорить в админ чате
BAN - Тут и так ясно. Баним всё и вся
DEBUG - Функции дебага.
FUN - Функции веселья. На подобии кар, и пачки команду.
PERMISSIONS - Позволяет выдавать права. Ограничена правами которые уже есть.
SERVER - Команды перезапуска сервера, а так же уход в бункер.
SPAWN - Открывает доступ к меню спавна
VAREDIT - Позволяет менять компоненты
MAPPING - Открывает доступ к меню спавна тайлов и декалей
LOGS - Возможность просматривать логи
ROUND - Управление раундом
QUERY - Позволяет загружать прототипы и разные файлы на сервер
ADMINHELP - Доступ к админскому АХ
VIEWNOTES - Доступ к заметкам на игрока
EDITNOTES - Доступ к добавлению заметок на игрока
HOST - Возможность выполнять команды от лица сервера. НЕ ВЫДАВАТЬ ТЕМ КОМУ НЕ ЗНАЕТЕ!

Под цифрой 2 - можете вписать что хотите. Оно будет отображаться в adminwho если не сделать иначе отображение (ниже будет об этом сказано)
Нажали на save? Чудесно, теперь переходим во вкладку левее Admin Ranks (Admins) и добавляем себя со всеми правами

Nekodar-7.png

В самой верхней строчке прописываете свой логин в SS14, ниже можно задать кастомное название, которое будет отображаться через команду adminwho.
Добавили? Сохранили? Чудесно. Теперь прописываем shutdown в консоле сервера. Всё! Если не делать так, то ничего не сохраниться после перезапуска сервера!

Закидывание на сервер

После того, как вы сделали манипуляции ранее, у вас на руках есть распакованный архив с данными. Ваша задача теперь проста. Берёте логин и пароль с сайта, далее подключаетесь к серверу.

Nekodar-8.png
Nekodar-9.png

И вот мы подключились к серверу, но что дальше? Дальше проверяем выключен ли сервер, и сносим все файлы (да, абсолютно все). Помните, где оставили сервер? Теперь вам нужно перекинуть на сервер все файлы из той папки. Так же вам обязательно нужно перенести data (добавление: Нет не обязательно. Смотрите последний раздел), иначе не будет у вас прав. Запускаем сервер и всё! Вы поставили сервер со своей сборкой и вы со всеми правами!

Далее немного про файл конфигурации, из всего что вам может понадобиться на первом этапе, так это следующие вещи. Просьба не убирать [] и что в них написано.
То есть если написано:

[log]
path = "logs"
format = "log_%(date)s-%(time)s.txt"
level = 1
enabled = true

То вы так и копируете
Начнём:

[tips]
enabled = false

Позволяет отключить надоедливые подсказки

[ic]
flavor_text = true

Включает описание персонажей

[game]
hostname = "SERVER"
maxplayers = 8
soft_max_players = "50"
desc = "Тестовый сервер для персонала проекта"

Тут по подробнее. hostname и maxplayers меняются в консоле на хостинге, а desc вы можете задать сами. soft_max_players это кол-во игроков не администраторов. Т.Е. если у вас стоит так:

maxplayers = "100"
soft_max_players = "50"

То лишь 50 игроков смогут подключиться, а остальные 50 столов останутся резервными для администрации и для ваших нужд.

[hub]
advertise = true

Позволяет видеть сервер в хабе. Читайте правила хаба!

[database]
engine = "postgres"
pg_host = "Nope"
pg_database = "Nope"
pg_username = "Nope"
pg_password = "Nope"

Позволяет поменять БД сервера с sqlite на postgres.

Выдача прав на сервере

Данный блок пишется намного позже чем основной гайд и данный способ узнал совсем недавно. Просьба учитывать это.

Для получения доступа вам нужно:
- Зайти в файл server_config.toml
- Найти строку [console] (если такой нет то создайте
- Введите следующий текст под строкой [console]: login_host_user = "Ваш игровой ник в лаунчере игры".

Вот так в конечном у вас должно выглядеть:
[console]
login_host_user = "MynameisERROR123"

После сервер видит ваш ник и выдает вам права