Успей заказать VPS-сервер со скидкой 15%
Акция завершится через
00Дней
:
00Часов
:
00Минут
:
00Секунд

Установка связки серверов Minecraft через BungeeCord

У многих возникает вопрос: "Как же все-таки создать собственную связку серверов?". Давайте разберемся!

Перед началом установки сервера рекомендуем ознакомиться с данными статьями:

В этой инструкции приводится пример установки BungeeCord-сервера на версии Minecraft 1.17. Мы покажем 2 варианта установки с использованием sFTP или только SSH.

Установка серверов

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

sFTP

Создаем новый каталог с любым названием.

Диалог создания каталога myservers в sFTP-клиенте
Создаем каталог /root/myservers.

Переходим в него.

Пустой каталог myservers
Каталог пуст и готов к загрузке файлов.

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

BungeeCord.jar в каталоге myservers
Ядро BungeeCord загружено в каталог.

Переходим в папку нашего сервера через SSH.

Переход в каталог myservers через SSH
Текущий каталог - myservers.

Используем команду для создания нового окна Screen:

Окно создано.

Пустой терминал в новом окне Screen
Новое окно Screen с именем bungeecord открыто.

Теперь давайте запустим сам сервер. Вы можете это сделать при помощи SH-скрипта, либо ручного запуска через аргументы Java.

  • - минимальное кол-во ОЗУ, выделяемого для игрового сервера.
  • - максимальное кол-во ОЗУ, которое будет доступно серверу в процессе работы.
  • - тип файла, запуск которого следует произвести.
  • - название самого ядра игрового сервера.
  • - аргумент для отмены запуска графического интерфейса, поскольку он нам не нужен.

Сервер успешно запустился на порте 25577.

Лог запуска BungeeCord на порту 25577
BungeeCord слушает порт 25577.

Используем сочетание клавиш для выхода из окна Screen.

Отлично, создадим новую папку для игрового сервера, где смогут играть пользователи:

Диалог создания каталога survival
Создаем каталог /root/myservers/survival.

Переходим в нее. Отлично!

Пустой каталог survival
Каталог survival пуст.

Следом давайте скачаем последний билд ядра Paper 1.17. Загружаем ядро в наш новый каталог:

Загрузка paper-1.17-71.jar в каталог survival
paper-1.17-71.jar загружается в каталог.

Готово!

Файл paper-1.17-71.jar в каталоге
Ядро Paper 1.17 build 71 в каталоге.

Создадим новое окно Screen под этот сервер:

Пустой терминал в каталоге myservers
Окно Screen с именем survival открыто.

Переходим в каталог сервера:

Переход в каталог myservers/survival
Текущий каталог - myservers/survival.

Также используем скрипт SH или команду для ручного запуска сервера:

Как обычно, подтверждаем eula, указав в файле , и запускаем сервер снова:

Сообщение Paper о необходимости принять EULA
Paper останавливается с просьбой подтвердить EULA.

Сервер успешно запущен.

Лог запуска Paper-сервера
Survival-сервер запущен на порту 25565.

Используем сочетание для скрытия окна.

SSH

Теперь рассмотрим вариант установки серверов полностью через консоль SSH. Создаем каталог в корневой папке для наших серверов, а затем переходим в него:

Скачиваем ядро BungeeCord.

Готово.

Загрузка BungeeCord.jar через wget
BungeeCord.jar скачан в каталог myservers.

Создаем новое окно Screen для запуска сервера:

Пустой терминал в окне Screen для BungeeCord
Окно Screen с именем bungeecord открыто.

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

Сервер запущен.

Лог запуска BungeeCord на порту 25577
BungeeCord слушает порт 25577.

Выходим из окна при помощи сочетания клавиш .

Сообщение detached from bungeecord
Мы отсоединились от окна Screen.

Создадим новый каталог для игрового сервера, на котором смогут играть пользователи, переходим в него:

Скачиваем последний билд ядра Paper 1.17.

Ядро загружено.

Загрузка paper-1.17-71.jar через wget
paper-1.17-71.jar скачан в каталог survival.

Создаем еще одно окно Screen для нового сервера.

Пустой терминал в окне Screen для survival
Окно Screen с именем survival открыто.

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

Как обычно, подтверждаем eula, указав в файле , и запускаем сервер еще раз:

Лог запуска Paper после подтверждения EULA
Survival-сервер запущен на порту 25565.

Используем сочетание клавиш для выхода из окна.

Сообщение detached from survival
Мы отсоединились от окна Screen.

Подключение серверов

Для начала давайте рассмотрим файл в папке с BungeeCord.

Содержимое config.yml BungeeCord
Стандартное содержимое config.yml.
  • server_connect_timeout - время, в течение которого игрок должен присоединится к серверу, в противном случае пользователь будет отключен.
  • remote_ping_cache - позволяет установить время в миллисекундах, в течение которого BungeeCord будет хэшировать количество игроков на сервере, по умолчанию этот параметр выключен.
  • forge_support - отвечает за работу Forge на серверах BungeeCord.
  • player_limit - настоящее количество слотов на BungeeCord-сервере. Стандартное значение -1 - бесконечно.
  • permissions - утверждает стандартные права для различных групп на серверах.
  • timeout - как долго сервер BungeeCord должен не отвечать, прежде чем отключать всех игроков.
  • log_commands - если настройка включена, то когда игрок использует BungeeCord-команду, действие будет отображаться в консоли.
  • network_compression_threshold - настраивает порог сжатия сети, обычно настраивается, если хостинг находится далеко от центральной аудитории сервера.
  • online_mode - отвечает за возможность подключения через лицензионную версию игры. Отключите, если хотите сделать сервер пиратским.
  • disabled_commands - здесь Вы можете указать запрещенные команды.
  • servers - в данной категории настраиваются серверы, которые взаимодействуют с BungeeCord, это мы рассмотрим подробнее чуть позже. Если параметр restricted включен, то к серверу смогут подключиться только игроки, у которых есть право bungeecord.server.[имя сервера].
  • query_port - позволяет указать порт при помощи которого можно получать информацию о сервере.
  • motd - описание сервера в основном списке.
  • tab_list - настройка меню TAB на сервере позволяет выбрать несколько значений:
    • - отображает в табе всех игроков, обновляя их пинг.
    • - также показывает игроков, но без проверки пинга.
    • - показывает локальных игроков на сервере.
  • query_enabled - активирует службу GameSpy4, которая позволяет получать информацию о сервере. Настройка порта для использования производится в строке query.port.
  • proxy_protocol - активирует протокол HAProxy PROXY для всех подключаемых игроков.
  • forced_hosts - перенаправляет поддомены на игровые сервера BungeeCord.
  • ping_passthrough - позволяет query-соединениям получать MOTD и количество игроков на сервере.
  • priorities - позволяет указать приоритетные серверы для подключения игроков.
  • bind_local_address - будет ли используемый IPv4-адрес указывать на localhost-сервера? Эта функция бесполезна, если Ваш сервер не имеет нескольких IP-адресов.
  • host - хост сервера с учетом порта. Обычно установлен локальный адрес.
  • max_players - это "поддельное" количество слотов на сервере. То есть, если Вы оставите значение 0, как сейчас, или установите любое другое количество слотов, то игроки в любом случае смогут зайти.
  • tab_size - максимальное количество игроков, которые могут отображатся в TAB сервера.
  • force_default_server - связан с настройкой priorities. Если установлено значение true, то игрок будет подключаться к приоритетным серверам. В случае false игрок будет возвращен на последний сервер.
  • ip_forward - настройка перенаправления игроков с реального адреса сервера на Proxy.
  • remote_ping_timeout - как долго сервер BungeeCord должен не отвечать на query-запросы, перед отключением соединения.
  • prevent_proxy_connections - если параметр включен, то игроки не смогут подключиться к серверу, используя Proxy.
  • groups - позволяет указать игроков и группу, которая будет присвоена по умолчанию.
  • connection_throttle - количество времени в миллисекундах, которое должно пройти, прежде, чем игрок сможет подключиться к серверу снова.
  • stats - случайно сгенерированный код для проверки статистики на сайте MCStats. Не изменяйте это значение, чтобы не утерять статистику.
  • connection_throttle_limit - количество входов на сервер, которые игрок может сделать в течение времени, указанного в параметре connection_throttle.
  • log_pings - отправляет в консоль информацию о пингах сервера пользователями.

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

В конфиге мы указываем название сервера, описание и адрес с портом.

Блок servers в config.yml
В блоке servers указано имя сервера, MOTD и адрес с портом.

Также указываем приоритетный сервер.

Блок priorities в config.yml
В блоке priorities указан survival.

Это необязательно, если у Вас всего один сервер. Это все, что нам нужно для обыкновенного подключения.

Сохраняем файл и отправляем на сервер.

Диалог sFTP о возврате изменений на сервер
sFTP предлагает загрузить изменения config.yml обратно.

Хорошо, теперь переходим в папку с нашим сервером для игроков (survival).

Список файлов сервера survival
В каталоге survival находится server.properties.

Открываем файл и устанавливаем значение .

Параметр online-mode=false в server.properties
В server.properties выставлено online-mode=false.

Обратите внимание, что конкретно эта настройка никак не влияет на подключение к серверу при помощи лицензии или пиратской версии игры. Данный параметр в нашем случае используется для правильного подключения к BungeeCord. Настройка подключения через лицензию осуществляется в BungeeCord-конфиге .

Сохраняем и отправляем файл в каталог.

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

Давайте вернемся к нашему окну BungeeCord при помощи команды:

Мы вернулись в консоль BungeeCord. Останавливаем сервер при помощи команды и запускаем снова:

Сервер запущен.

Лог BungeeCord после перезапуска
BungeeCord снова слушает порт 25577.

Выходим из окна при помощи сочетания .

Сообщение detached from bungeecord
Мы отсоединились от окна Screen.

Используем команду для подключения к окну сервера Survival:

Мы также видим консоль запущенного сервера.

Лог survival-сервера
В окне survival виден лог уже запущенного сервера.

Используем команду для остановки.

Лог остановки сервера survival
Сервер выключен.

Запускаем его снова:

Мы запустили сервер.

Лог запуска survival-сервера
Survival-сервер снова запущен.

Давайте проверим работу BungeeCord. Добавляем стандартный адрес с портом 25577 (который по умолчанию используется в BungeeCord).

Сервер SpaceCore BungeeCord в списке Minecraft
Сервер отображается в списке.

Пробуем зайти.

Игрок на сервере Survival версии 1.17
Отлично, мы подключились к нашему новому серверу на версии Minecraft 1.17!

В консоли BungeeCord отображается момент пинга сервера через сетевой список Minecraft, процесс подключения к самому BungeeCord и перенаправление на сервер Survival.

Лог BungeeCord с InitialHandler и ServerConnector
BungeeCord логирует пинг, подключение и редирект на survival.

Благодарим Вас за ознакомление с нашей статьей. Таким образом Вы можете добавить неограниченное количество серверов в связку BungeeCord.

Ваша команда SpaceCore.