Skip to content

Встроенные сервера

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

WARNING

После изменения любых настроек встроенных серверов нужно полностью перезагружать прокси!

Почему это вообще нужно?

Разворачивать сервер аутентификации вручную - дополнительная работа, особенно если вы сами будете ставить схематику, выбирать порт, оптимизировать конфиги.

Гораздо легче позволить BaronessAuth сделать это за вас - результат наверняка будет и работать стабильнее, и ресурсов меньше потреблять, и от вас ничего не будет требоваться.

Типы серверов / обзор

Вот сравнительная таблица всех доступных серверов:

ТипПоддержка клиентовФорматы схематикПотребление ОЗУКогда выбирать
nanolimbo1.7 - 1.21.9Не поддерживаютсяОт 70 МБСхематика не нужна, экономия
paper (1.12.2)1.9 - 1.21.9mceditОт 300 МБСтарая схематика, экономия
paper (1.16.5)1.9 - 1.21.9mcedit, sponge.1От 650 МББолее новая схематика, экономия
paper (latest)1.9 - 1.21.9всеОт 950 МБНовейшая схематика, не жалко ОЗУ

Ниже есть подробное описание каждого типа.

INFO

Всё это настраивается в файле BaronessAuth/config/general.yml, секция embedded-servers, там секция вашего сервера (скорее всего, auth).

Типы серверов / nanolimbo

Основанный на NanoLimbo, этот сервер самый лёгкий и быстрый.

✅ Плюсы

  • Поддерживает игроков от 1.7 до 1.21.9.
  • Требует от 70 МБ ОЗУ.
  • Тратит минимум процессорного времени.

❌ Минусы

  • Не поддерживает схематики - игроки просто висят в воздухе.
yml
  embedded-servers:
    'название-сервера': !<nanolimbo>
      enabled: true
      port: 0 # плагин сам подберёт порт
      dimension: 'overworld'
      game-mode: 'creative'
      java:
        xmx: '150 MiB' # лучше выделить с запасом

Типы серверов / paper (latest)

Полный сервер с максимальным урезанием настроек, последней версии. Регулярно обновляется вместе с обновлением самого BaronessAuth.

✅ Плюсы

  • Поддерживает игроков от 1.9 до 1.21.9.
  • Поддерживает все форматы схематик и все блоки.
  • Тратит довольно мало процессорного времени.

❌ Минусы

  • Требует от 950 МБ ОЗУ (зависит от размера схематики).
yml
  embedded-servers:
    'название-сервера': !<paper>
      enabled: true
      version: 'latest'
      port: 0 # плагин сам подберёт порт
      schematic: 'default-auth' # ниже написано про установку схематики
      time: 12040
      weather: true
      java:
        xmx: '1 GiB' # лучше выделить с запасом

Типы серверов / paper (1.16.5)

Полный сервер с максимальным урезанием настроек, версии 1.16.5.

✅ Плюсы

  • Поддерживает игроков от 1.9 до 1.21.9.
  • Поддерживает схематики формата mcedit и sponge v1.
  • Тратит довольно мало процессорного времени.

❌ Минусы

  • Требует от 650 МБ ОЗУ (зависит от размера схематики).
  • Не поддерживает более современные форматы схематик типа fast, sponge.2 и sponge.3.
  • Не поддерживает блоки, добавленные в 1.17 и позднее.
yml
  embedded-servers:
    'название-сервера': !<paper>
      enabled: true
      version: '1.16.5'
      port: 0 # плагин сам подберёт порт
      schematic: 'default-auth' # ниже написано про установку схематики
      time: 12040
      weather: true
      java:
        xmx: '1 GiB' # лучше выделить с запасом

Типы серверов / paper (1.12.2)

Полный сервер с максимальным урезанием настроек, версии 1.12.2.

✅ Плюсы

  • Поддерживает игроков от 1.9 до 1.21.9.
  • Поддерживает схематики формата mcedit.
  • Требует от 300 МБ ОЗУ (зависит от размера схематики).
  • Тратит довольно мало процессорного времени.

❌ Минусы

  • Не поддерживает более современные форматы схематик типа fast, sponge.1, sponge.2 и sponge.3 - вам доступны только старый .schematic формат (mcedit).
  • Не поддерживает блоки, добавленные в 1.13 и позднее.
yml
  embedded-servers:
    'название-сервера': !<paper>
      enabled: true
      version: '1.12.2'
      port: 0 # плагин сам подберёт порт
      schematic: 'default-auth' # ниже написано про установку схематики
      time: 12040
      weather: true
      java:
        xmx: '1 GiB' # лучше выделить с запасом

Установка схематики

WARNING

Помните, что разные сервера поддерживают разные блоки и форматы схематик! Выше, в описании каждого сервера, указано, что они поддерживают.

В плагине есть встроенные схематики - default-auth и default-lobby - их достаточно просто указать, плагин всё поймёт.

А если вы хотите добавить свою, это делается нехитрым способом:

  1. Зайдите на какой-нибудь сервер с правами админа и установленным WorldEdit.
  2. Выделите область через WorldEdit.
  3. Введите //copy, стоя на месте спавна игрока.
  4. Вы смотрите на север? А должны - игроки всегда спавнятся лицом на север. Используйте //rotate и //paste, чтобы развернуть выделение и подтвердить успех.
  5. Создайте файл схематики через //schem save (формат).
  6. Созданный файл переложите в plugins/BaronessAuth/, чтобы было, например, plugins/BaronessAuth/my-schematic.schem.
  7. Введите в секцию schematic название своего файла, например, my-schematic.schem.

Вот и всё - после рестарта прокси вы должны увидеть свою схематику!

Forwarding

Настройка Forwarding определяет то, как прокси и сервер общаются друг с другом.

Как правило, стандартной настройки, none, достаточно, но давайте рассмотрим, как можно это настраивать.

  1. Без forwarding:
yml
      forwarding: !<none> {}
  1. Legacy / BungeeCord:
yml
      forwarding: !<legacy> {}
  1. BungeeGuard:
yml
      forwarding: !<bungee-guard>
        tokens:
        - 'токен BungeeGuard'
  1. Modern / Velocity:
yml
      forwarding: !<velocity-modern>
        secret: 'секрет Velocity Modern'

Java / поставщик

Встроенные сервера типа full и minimal работают, запуская сторонний Java процесс, поэтому плагину нужна Java.

У BaronessAuth есть несколько способов получить её:

  1. automatic - плагин самостоятельно подготавливает Java, скачивая наиболее оптимальный дистрибутив, наиболее оптимальной версии. Он скачивает JDK и создаёт на её основе минимальный образ, используя jlink. Таким образом вы получаете 100% обновлённую и подходящую под ваши цели и систему Java, но на это уходит около 80 МБ диска. Это абсолютно стабильный вариант - версия JDK меняется только с обновлением самого плагина, так что нет риска, что плагин вдруг скачает какую-то нестабильную версию. Пока скачанная версия актуальна, плагин ничего не скачивает - достаточно один раз немного подождать:
yml
      java:
        provider: !<automatic> {}
  1. current - плагин использует Java, с которой запущен сам процесс прокси. Довольно быстро, но не очень "стабильно" ( плагин не может ничего гарантировать) - у вас может быть JRE 17, тогда как встроенному серверу нужна 21 - в таком случае сервер будет бесконечно перезагружаться. Этот способ также включается, если ваша ОС и архитектура не поддерживается методом automatic:
yml
      java:
        provider: !<current> {}
  1. custom - плагин запускает чётко тот исполняемый файл, который вы введёте. Тут уже вы решаете, запустится сервер сегодня или нет - всё в ваших руках:
yml
      java:
        provider: !<custom>
          path: '/home/admin/jdk-21/bin/java'

Java / флаги

Вам не нужно настраивать флаги самостоятельно - BaronessAuth уже "из коробки" старается подобрать самые лучшие и экономные варианты, совместимые с целевой версией Java.

Но вы можете определить свои флаги. Если вы укажите хотя бы один флаг, BaronessAuth подставит только ваши флаги. Не забудьте о базовых вещах, типа лимитов ОЗУ и EULA.

yml
      java:
        override-flags:
          - '-Xms128M'
          - '-XX:+UseG1GC'
          - '-XX:+UseStringDeduplication'
          - '-Dcom.mojang.eula.agree=true'
          - '-DPaper.IgnoreJavaVersion=true'