Встановлення зв'язки серверів Minecraft через BungeeCord
У багатьох виникає питання: "Як же все-таки створити власну зв'язку серверів?". Давайте розберемося!
Перед початком встановлення сервера рекомендуємо ознайомитися з такими статтями:
- Встановлення сервера Minecraft Java
- Встановлення Screen
- Встановлення Java: Ubuntu / Debian
У цій інструкції наведено приклад встановлення BungeeCord-сервера на версії Minecraft 1.17. Ми покажемо 2 варіанти встановлення - через sFTP або тільки через SSH.
Встановлення серверів
Після того як усе потрібне програмне забезпечення встановлене, переходимо до завантаження сервера.
sFTP
Створюємо новий каталог з довільною назвою.

Заходимо до нього.

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

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

Створюємо нове вікно Screen командою:
Вікно створено.

Тепер запустимо сам сервер. Це можна зробити SH-скриптом або вручну через аргументи Java.
- - мінімальна кількість ОЗП, що виділяється ігровому серверу.
- - максимальна кількість ОЗП, доступна серверу під час роботи.
- - тип файлу, який треба запустити.
- - назва самого ядра ігрового сервера.
- - аргумент, що вимикає графічний інтерфейс, оскільки він нам не потрібен.
Сервер успішно запустився на порту 25577.

Натискаємо , щоб вийти з вікна Screen.
Чудово, створимо нову папку для ігрового сервера, на якому гратимуть користувачі:

Заходимо в нього. Чудово!

Далі завантажуємо останній білд ядра Paper 1.17. Завантажуємо ядро у наш новий каталог:

Готово!

Створимо нове вікно Screen під цей сервер:

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

Так само використовуємо SH-скрипт або команду для ручного запуску сервера:
Як зазвичай, підтверджуємо eula, вказавши у файлі , і запускаємо сервер знову:

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

Натискаємо , щоб приховати вікно.
SSH
Тепер розглянемо варіант установлення серверів повністю через консоль SSH. Створюємо каталог у кореневій папці для наших серверів і переходимо до нього:
Завантажуємо ядро BungeeCord.
Готово.

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

Запускаємо сервер:
Сервер запущений.

Виходимо з вікна сполученням клавіш .

Створимо новий каталог для ігрового сервера, на якому зможуть грати користувачі, і переходимо до нього:
Завантажуємо останній білд ядра Paper 1.17.
Ядро завантажене.

Створюємо ще одне вікно Screen для нового сервера.

Запускаємо сервер.
Як зазвичай, підтверджуємо eula, вказавши у файлі , і запускаємо сервер ще раз:

Натискаємо , щоб вийти з вікна.

Підключення серверів
Спочатку розглянемо файл у папці з BungeeCord.

- 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 - надсилає в консоль інформацію про пінги сервера від користувачів.
Налаштування серверів
У конфізі вказуємо назву сервера, опис та адресу з портом.

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

Це необов'язково, якщо у Вас лише один сервер. Це все, що потрібно для звичайного підключення.
Зберігаємо файл і відправляємо на сервер.

Тепер переходимо в папку нашого сервера для гравців (survival).

Відкриваємо файл і встановлюємо значення .

Зверніть увагу, що це налаштування ніяк не впливає на підключення через ліцензію або піратську версію гри. Ми вимикаємо його лише для коректної роботи з BungeeCord. Налаштування ліцензійного підключення проксі здійснюється у BungeeCord-конфізі .
Зберігаємо і відправляємо файл у каталог.
Запуск серверів
Повертаємося до вікна BungeeCord командою:
Ми повернулися у консоль BungeeCord. Зупиняємо сервер командою і запускаємо знову:
Сервер запущений.

Виходимо з вікна сполученням .

Підключаємося до вікна сервера Survival:
Бачимо консоль уже запущеного сервера.

Використовуємо команду для зупинки.

Запускаємо його знову:
Ми запустили сервер.

Перевіримо роботу BungeeCord. Додаємо стандартну адресу з портом 25577 (який BungeeCord використовує за замовчуванням).

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

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

Дякуємо, що ознайомилися з нашою статтею. Так Ви можете додати необмежену кількість серверів у зв'язку BungeeCord.
Ваша команда SpaceCore.