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

Ручной импорт и внутриигровое управление

Плагины, управляемые Nightbreak, теперь предпочитают внутриигровую настройку и управление контентом, но ручной импорт по-прежнему существует как запасной вариант.

Рекомендуется: Внутриигровое управление

Используйте меню настройки с привязанным токеном Nightbreak, когда вам нужны:

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

Это предпочтительный путь для:

  • EliteMobs
  • BetterStructures
  • FreeMinecraftModels
  • EternalTD
  • ResurrectionChest
  • WorldCannon

Все шесть используют общий импортёр, поэтому все шесть также принимают описанный ниже ручной запасной вариант.

Запасной вариант: Ручной импорт

Ручной импорт по-прежнему полезен, когда:

  • у вас уже есть загруженные zip-файлы пакетов
  • вы перемещаете файлы между серверами
  • вы хотите работать автономно от Nightbreak во время тестирования
  • пакет намеренно распространяется вне пути загрузки в игре

Массовые загрузки Nightbreak также попадают в папку imports плагина. Разница в том, что внутриигровой путь выполняет проверки доступа и шаг загрузки за вас.

Карта папок импорта

ПлагинПапка импорта
EliteMobsplugins/EliteMobs/imports
BetterStructuresplugins/BetterStructures/imports
FreeMinecraftModelsplugins/FreeMinecraftModels/imports
EternalTDplugins/EternalTD/imports
ResurrectionChestplugins/ResurrectionChest/imports
WorldCannonplugins/CannonRTP/imports

Папка плагина WorldCannon называется CannonRTP — это внутреннее имя плагина, и именно там находятся как его папка imports, так и установленный контент.

Правила ручного импорта

  • Сохраняйте загруженный пакет в сжатом виде, если документация конкретного плагина не указывает иное.
  • Поместите пакет в правильную папку imports.
  • Перезагрузите или перезапустите плагин, если документация конкретного плагина этого требует.
  • Снова откройте меню настройки после этого, чтобы подтвердить состояние установки.

Общий импортёр может обрабатывать:

  • пакеты .zip, помещённые в imports
  • определённые уже распакованные папки, если они содержат pack.meta
  • файлы .bbmodel для FreeMinecraftModels

Архивы распаковываются в скрытую промежуточную папку внутри imports и устанавливаются только оттуда. FMM очищает эту промежуточную папку и после успеха, и после сбоя, поэтому обычный неудавшийся импорт оставляет исходный zip готовым к повторной попытке, а не видимый наполовину распакованный пакет рядом с ним.

Что принимает импортёр

pack.meta решает, куда попадает контент

Пакет может поставлять файл pack.meta на верхнем уровне, называющий целевую платформу плагина — elitemobs, betterstructures, freeminecraftmodels, eternaltd, extractioncraft, resurrectionchest, megablocksurvivors или worldcannon (также принимаются cannonrtp и world_cannon). Это имя сопоставляется без учёта регистра, а окружающие пробелы, символы конца строки и ведущая метка порядка байтов игнорируются, поэтому файл, сохранённый Windows-редактором, работает нормально.

Если в архиве нет pack.meta, он считается пакетом для того плагина, в чью папку imports его положили.

Если pack.meta называет что-то, чего импортёр не знает, пакет отклоняется, а zip остаётся в imports, чтобы вы могли исправить это и попробовать снова.

Имена папок верхнего уровня должны распознаваться

Импортёр направляет каждую папку верхнего уровня пакета по назначению исходя из её имени. Некоторые имена работают для всех платформ:

ПапкаКуда попадает
worldcontainerКонтейнер миров сервера (каждая подпапка становится миром)
models или modelengineПапка моделей FreeMinecraftModels или папка blueprints ModelEngine, если установлен только ModelEngine
scriptsplugins/FreeMinecraftModels/scripts
pack.metaИгнорируется — это метаданные, а не контент

Всё остальное разрешается для каждой платформы отдельно (например, custombosses, customitems и content_packages для EliteMobs; schematics, spawn_pools и components для BetterStructures).

Папка верхнего уровня, которую импортёр не распознаёт для этой платформы, приводит к отклонению всего пакета, а не к частичной установке, и архив сохраняется. Если ваш пакет не импортируется, консоль называет проблемную папку.

Неудавшиеся импорты откатываются

Импорт применяется как одна транзакция. Существующие файлы резервируются перед заменой, заменяемые папки миров отодвигаются в сторону, а не удаляются, и сбой на полпути запускает откат каждого места назначения, которого коснулся пакет. Zip остаётся в imports, поэтому повторная попытка безопасна. Если во время самого отката возникнет ошибка файловой системы, консоль явно сообщит, что откат был неполным, и предложит проверить записанные в лог места назначения перед повторной попыткой.

Архив удаляется только после того, как импорт полностью зафиксирован. Если после перезагрузки пакет всё ещё лежит в imports — так импортёр сообщает вам, что он не установился; проверьте консоль на предмет причины.

Важные различия

Внутриигровой путь

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

Ручной путь

  • работает без внутриигрового доступа к загрузкам
  • требует самостоятельного управления zip-файлами
  • может потребовать перезагрузки плагина
  • может оставить контент в состоянии «загружен, но не включён» в зависимости от плагина
  • может выявить проблемы со структурой пакета, которые внутриигровой путь доступа обычно скрывает до момента установки