Замовляйте 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. Докладніше розглянемо нижче. Якщо параметр увімкнено, до сервера зможуть підключитися лише гравці з правом .
  • query_port - порт, через який можна отримувати інформацію про сервер.
  • motd - опис сервера в основному списку.
  • tab_list - налаштування меню TAB на сервері, підтримує кілька значень:
    • - показує у табі усіх гравців і оновлює їхній пінг.
    • - також показує гравців, але без оновлення пінгу.
    • - показує лише локальних гравців на сервері.
  • query_enabled - вмикає службу GameSpy4, що дозволяє отримувати інформацію про сервер. Порт задається у .
  • 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 - пов'язаний з . Якщо true - гравець завжди підключається до пріоритетних серверів. Якщо false - повертається на останній сервер.
  • ip_forward - пересилання реальної адреси гравця через Proxy.
  • remote_ping_timeout - як довго сервер BungeeCord може не відповідати на query-запити, перш ніж з'єднання буде розірвано.
  • prevent_proxy_connections - якщо увімкнено, гравці не зможуть підключатися через Proxy.
  • groups - дозволяє вказати гравців і групу, яку вони отримають за замовчуванням.
  • connection_throttle - час у мілісекундах, який має минути, перш ніж гравець зможе підключитися знову.
  • stats - випадково згенерований код для перевірки статистики на сайті MCStats. Не змінюйте його, щоб не втратити статистику.
  • connection_throttle_limit - скільки входів може зробити гравець протягом часу, заданого у .
  • 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.