Что делает 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
Экспорт можно получить и без публикации:
- Файл > Экспорт > JSON (.json) сохраняет данные локально с выбранной версией Minecraft.
- editorAPI.exportToJSON() возвращает объект экспорта плагину редактора.
Эти способы используют экспортёр редактора, но возвращают сам объект экспорта,
без внешней HTTP-оболочки content. В локальных данных сохраняется маркер
[BDESERVERTAG]; HTTP API заменяет его значением tag при получении публикации.
Это экспорт для внешней обработки. Редактируемый проект сохраняется отдельно в .bdengine.
Форма трёх вариантов показана в статье Структура JSON.