Поддерживаемые ядра серверов

Протестированные ядра: Sponge, Thermos, KCaldron, UltraMine, Waterfall/BungeeCoed, Spigot/Bukkit. Некоторые можно скачать тут: mirror.gravit.pro

Непротестированы: Atom и другие

Скрипт развертывания ServerWrapper
Это просто

В 5.0.0 введен новый способ установки ServerWrapper'а - с помощью скрипта установки. Для его запуска выполните:

    java -jar ServerWrapper.jar setup

И следуйте инструкции по установке

Основы привязки лаунчера к серверу

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

Class-Path - путь, где JVM будет искать классы. Его можно найти открыв jar файл ядра и посмотрев содержимое манифеста, либо скопировать из старого скрипта запуска

Profile title - имя профиля клиента, его можно посмотреть открыв в лаунчсервере папку profiles, открыв файл своего профиля и посмотрев на поле title. title в конфигурации ServerWrapper и title в профиле должны совпадать на 100%

Аккаунт сервера - полноценный аккаунт с логином и паролем, который будет использоватья для авторизации сервера

Указание Main-Class в строке запуска

java -cp ServerWrapper.jar:{ClassPath вашего сервера} pro.gravit.launcher.server.ServerWrapper {ваш MainClass}

Указание Main-Class в конфигурации

Можно указать Main-Class в ServerWrapperConfig.json , тогда строка запуска будет выглядеть так:

java -cp ServerWrapper.jar:{ClassPath вашего сервера} pro.gravit.launcher.server.ServerWrapper

Конфигурация ServerWrapperConfig.json

Необходимо скопировать public.key из директории лаунчсервера в директорию ServerWrapper

Для успешной авторизации сервера необходимо наличие в базе данных специального аккаунта, от имени которого будет совершен вход

Для 5.0.10 и ниже аккаунт сервера обязан обладать правом canServer, см ниже как прописать права

{
  "title": "Action1.12", //Заголовок профиля, к которому привязывается сервер
  "projectname": "MineCraft", //Название вашего проекта
  "address": "localhost", //Адрес лаунчсервера(LEGACY)
  "port": 7240, // Порт лаунчсервера(LEGACY)
  "reconnectCount": 10, //максимальное число переподключений(LEGACY)
  "reconnectSleep": 1000, //Время ожидания перед новым подключением(LEGACY)
  "customClassPath": false, //Указание кастомного classPath в конфигурации
  "autoloadLibraries": false, //Автозагрузка библиотек из папки librariesDir
  "stopOnError": true, //Останавливать запуск при возникновении исключения
  "syncAuth": true, //Синхронность авторизации
  "mainclass": "org.bukkit.craftbukkit.Main", //Ваш Main-Class
  "login": "ServerBot", //Логин аккаунта, от имени котого будет совершен вход
  "password": "1111", //Пароль от аккаунта
  "auth_id": "std", //Тип авторизации
  "websocket":
  {
    "enabled": true,
    "address": "ws://localhost:9274/api" //Адрес лаунчсервера
  },
  "env": "STD" //Окружение
}

Добавление права canServer в jsonPermissionsHandler
Устаревшее

Для 5.0.11 и 5.1.0+ это делать не требуется

Добавьте это в permissions.json

{
    "ServerBot": {
      "canAdmin": false,
      "canServer": true
    }
}

После внесения изменений нужно перезапустить лаунчсервер или выполнить команду reload permissionsHandler