Перейти к содержимому

Что делает Server API

Какие данные предоставляет BDEngine и где начинается работа вашей интеграции.

Какие данные выдаёт API

Server API позволяет получить модель или анимацию, опубликованную из редактора через Export to Minecraft Server. Редактор подготавливает экспорт, сервис сохраняет его на 10 минут, а ваша программа получает данные по шестизначному ID.

Успешный ответ содержит объект content с экспортом. В зависимости от проекта в нём находятся визуальные части модели, кадры анимации, звуковые события, команды создания хитбоксов и дополнительные метаданные. Данные уже подготовлены под выбранную при экспорте версию Minecraft.

Граница ответственности

BDEngine Ваша интеграция
Подготавливает экспорт в редакторе Запрашивает и при необходимости сохраняет данные
Выдаёт ID публикации Выбирает, где и когда использовать модель
Возвращает JSON и подставляет указанный tag Создаёт сущности, обрабатывает команды и воспроизводит события
Описывает формат и ограничения Управляет экземплярами модели и их жизненным циклом

Для получения JSON не нужен сервер Minecraft. Для появления модели в игре нужен серверный плагин или другая интеграция, которая применит эти данные. Официального серверного плагина BDEngine нет.

Отличие от датапака и плагина редактора

Датапак содержит игровые функции и файлы, которые обеспечивают работу экспорта в Minecraft. Server API передаёт данные для внешней обработки. Даже type: "full" не означает, что ответ содержит все файлы датапака или автоматически запускает анимацию. Поддерживаемый состав описан в статье Поддержка экспорта и ограничения.

Плагин редактора работает внутри BDEngine и обращается к editorAPI. Серверная интеграция получает данные по HTTP и использует их вне редактора. Это разные способы расширения BDEngine.

ID, быстрая команда и первый запрос

После публикации редактор показывает ID и готовую быструю команду, например /bde spawn 123456. Здесь 123456 приведён для примера: в окне будет ID вашего экспорта.

Через «Изменить быструю команду» можно задать свой префикс команды; редактор добавит к нему ID. Настройка меняет копируемый текст, а выполнение команды обеспечивает ваш серверный плагин. Это не отдельный HTTP-метод API.

Настройка быстрой команды в редакторе.

Чтобы получить JSON напрямую, используйте ID в HTTP-запросе. Пошаговый маршрут: Первый запрос и получение JSON.

Другие способы получить JSON

Экспорт можно получить и без публикации:

Эти способы используют экспортёр редактора, но возвращают сам объект экспорта, без внешней HTTP-оболочки content. В локальных данных сохраняется маркер [BDESERVERTAG]; HTTP API заменяет его значением tag при получении публикации.

Это экспорт для внешней обработки. Редактируемый проект сохраняется отдельно в .bdengine. Форма трёх вариантов показана в статье Структура JSON.