Skip to content

Начало разработки интеграций ​

Что такое разработка интеграций? ​

Разработка интеграций позволяет создавать бесшовные соединения между сторонними плагинами Minecraft и веб-платформой Pano. Используя классы Pano MC Plugin, вы можете:

  • Синхронизировать данные между игрой и вебом.
  • Отправлять запросы из вашего плагина Minecraft на веб-платформу Pano.
  • Получать ответы Pano на эти запросы.
  • Запускать веб-действия на основе игровых событий.
  • Создавать единый пользовательский опыт на обеих платформах.

Предварительные требования ​

Перед началом разработки интеграций убедитесь, что у вас есть:

  1. Java Development Kit (JDK 11+) — общий код Pano MC Plugin собирается под Java 11 (его модулю Velocity нужна Java 17).
  2. Знание Kotlin — API написан на Kotlin; ожидание ответа — это suspend-функция.
  3. Опыт разработки плагинов Minecraft — понимание Spigot/Paper/Bukkit API.
  4. Pano MC Plugin — репозиторий GitHub.
  5. Запущенный экземпляр Pano — для тестирования вашей интеграции.
  6. Тестовый сервер Minecraft — сервер Spigot, Paper или Folia для разработки.

Примечание: Все примеры в этом руководстве приведены на Kotlin.

Обзор архитектуры ​

Система интеграции Pano состоит из трех основных компонентов:

┌─────────────────────┐         ┌──────────────────────┐         ┌─────────────────┐
│  Ваш MC плагин      │ ◄─────► │  Pano MC Plugin      │ ◄─────► │  Бэкенд Pano    │
│  (Интеграция)       │         │  (API связи)         │         │  (Веб-платформа)│
└─────────────────────┘         └──────────────────────┘         └─────────────────┘
    (Хуки плагина)              (Безопасный WebSocket API)        (API платформы)

Поток данных ​

  1. Ваш плагин → Pano MC Plugin: Вы отправляете запрос через его PlatformManager.
  2. Pano MC Plugin → Бэкенд Pano: Одно зашифрованное WebSocket-соединение (обмен ключом по RSA при подключении сервера, AES-256-GCM для каждого сообщения).
  3. Бэкенд Pano → Ваш плагин: Запрос обрабатывает серверное событие вашего плагина Pano; ответ возвращается по тому же соединению.
  4. Бэкенд Pano → Веб: Данные сохраняются и отображаются на веб-сайте.

Важно: НЕ делайте форк Pano MC Plugin. Вместо этого создайте свой отдельный плагин, который зависит от него. Ваш плагин не открывает второе соединение и не требует вторых учётных данных.