Skip to content

Latest commit

 

History

History
99 lines (62 loc) · 9.78 KB

installation.md

File metadata and controls

99 lines (62 loc) · 9.78 KB

Установка SierraBay

Содержание

Скачивание кода

Самый простой способ получить код - использовать GitHub функцию скачивания .zip.

Нажми сюда чтобы получить последнюю версию кода в виде .zip файла, а затем разархивируй его куда захочешь.

Более сложный в скачивании, но более простой в обновлении метод - использование git. Тебе нужно скачать git или клиент отсюда. Когда он установится, нажми правой кнопкой мыши в любой папке правую кнопку мыши и выбери "Git Bash". Когда окно откроется, пиши в него:

git clone https://github.com/SierraBay/SierraBay12.git

(Подсказка: чтобы вставить в git bash можно нажать ПКМ по окну, или использовать Ctrl+Insert)

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


Установка

Первая установка должна быть довольно простой. Во-первых, тебе надо установить BYOND. Его можно скачать здесь.

Ты скачал только исходный код, поэтому его нужно скомпилировать. Открой baystation12.dme двойным кликом, слева сверху выбери вкладку Build и там нажми Compile. Не пугайся того что почти ничего в консоли долго не происходит, просто жди, это нормально. Это займёт время, но по итогу внизу ты должен увидеть такое сообщение:

saving baystation12.dmb (DEBUG mode)

baystation12.dmb - 0 errors, 0 warnings

Если ты видишь какие-то ошибки или предупреждения - что-то однозанчно пошло не по плану. Скорее всего либо повреждена загрузка, либо файлы извлечены неправильно, либо мы допустили ошибку в коде. Спросить можно в дискорде, указанном в README


Конфигурация

Копируй всё из папки /config/examples в папку /config. Теперь ты работаешь со всем, что содержится внутри /config.

Отредактируй config.txt, чтобы установить вероятности для различных режимов игры в режиме "Secret" или указать адрес вашего сервера таким образом, чтобы все ваши игроки не отключались в конце каждого раунда. Не рекомендуется включать игровые режимы с вероятностью 0, ибо в них могут быть различные проблемы и эти режимы в настоящее время не тестируются - повсюду могут быть неизвестные и неестественные ошибки.

Отредактируй admins.txt чтобы удалить администраторов по умолчанию и добавить своих собственных. "Game Master" это самый высокий уровень доступа. Также, рекомендуемые уровни администратора - "Game Admin" и "Moderator". Формат ввода:

byondkey - Rank

Сикей должен быть в нижнем регистре, а в ранге администратора заглавные буквы должны быть правильно указаны. Есть еще несколько рангов администратора, но этих двух должно быть достаточно для большинства серверов, при условии, что у тебя есть заслуживающие доверия администраторы.

Чтобы запустить сервер, запусти Dream Daemon и введи путь к твоему скомпилированному baystation12.dmb файлу. Убедись, что ты выставил порт, который указан в config.txt, а также установи в ячейке "Security" значение 'Trusted', чтобы не приходилось подтверждать доступ к каждому отдельному файлу конфигурации и данных сервера. Затем просто жми GO, и сервер должен запуститься, готовым к подключению.


Вебхуки

Если хочешь использовать вебхуки Discord, которые являются способом передачи информации с сервера в канал Discord, нужно будет скопировать webhooks.json в папку config/ из config/example/ и прописать определения, указывающие на желаемый Discord webhook URL. Действительными ID вебхука на момент написания статьи являются следующие:

  • webhook_roundend: Раунд закончился. Будет указано название режима и краткое описание выживших и призраков.
  • webhook_roundstart: Мастер контроллер завершил инициализацию, и раунд скоро начнется.
  • webhook_submap_loaded: Авейка была загружена и размещена, и к ней могут присоединиться пользователи. Включает название авейки.
  • webhook_submap_vox: Была загружена и размещена авейка воксов. Это необходимо для того, чтобы отдельно пингануть игроков-воксов с помощью @упоминания.
  • webhook_submap_skrell: Была загружена и размещена авейка скреллов. Это необходимо для того, чтобы отдельно пингануть игроков-скреллов с помощью @упоминания.
  • webhook_custom_event: Текст ивента раунда был установлен или изменен.

Каждое определение может включать массив ролей, которые нужно упомянуть при вызове вебхука. Роли должны быть записаны с помощью их ID (например: <@&555231866735689749>), который можно узнать, написав \@роль в чате, чтобы пинги работали правильно.

Вебхуки дополнительно требуют HTTP POST библиотеку, которая называется byhttp. Скомпилированная библиотека, byhttp.dll на Windows или libbyhttp.so на Linux, должны быть в папке lib, чтобы вебхуки могли функционировать. Расположение DLL файла может быть настроено путем установки WINDOWS_HTTP_POST_DLL_LOCATION, UNIX_HTTP_POST_DLL_LOCATION, or HTTP_POST_DLL_LOCATION как макросов препроцессора, содержащих желаемый путь.


Обновление

Перед обновлением, лучше всего создать резервную копию папок /config и /data, так как в них хранятся конфигурация вашего сервера, предпочтения игроков и банлист.

Если ты использовал метод zip, то тебе нужно снова скачать zip-файл и распаковать его в другом месте, а затем скопировать туда папки /config и /data.

Если ты использовал метод git, нужно просто ввести это в git bash:

git pull

Когда команда выполнится, скопируй поверх твоих /data и /config резервно скопированные папки, на всякий случай.

После этого нужно лишь вновь скомпилировать код и всё должно работать прекрасно.


Установка базы данных

Серверная часть для SQL /library/stats и банов требуют наличие MySQL сервера. Конфигурация сведений о сервере находится в /config/dbconfig.txt.