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

Пакеты контента EternalTD

EternalTD теперь отслеживает официальный контент через набор конфигурации content_packages и предоставляет доступ к этим пакетам через /etd setup.

Категории пакетов

Текущий код использует три категории пакетов:

  • FREE
  • PREMIUM
  • RESOURCES

Меню настройки в настоящее время отображает их как:

  • Free Content
  • Premium Packs
  • Resources

Проверенные готовые пакеты

Это готовые пакеты, определённые в текущем репозитории:

ПакетКатегорияПереключаемый в /etd setupОтслеживаемые ресурсы
EternalTD Hub WorldFreeНетПапка контейнера миров сервера etd_spawn
EternalTD TutorialFreeДаtutorial.yml, tutorial_waves.yml, tutorial_npc.yml, etd_tutorial
Towers of the Grassy LandsFreeДа5 файлов уровней, 1 файл волн, 1 файл NPC, 5 миров
Towers from the DepthsPremiumДа5 файлов уровней, 1 файл волн, 1 файл NPC, 5 миров
Towers of the Rising SunPremiumДа5 файлов уровней, 1 файл волн, 1 файл NPC, 5 миров
EternalTD Custom ModelsResourcesНетТолько файл-маркер, плюс импортированный контент FreeMinecraftModels при наличии

Жизненный цикл пакета

Браузер пакетов в настоящее время различает:

  • не загружен
  • не установлен
  • установлен
  • частично установлен
  • устарел и доступен для обновления
  • устарел, но недоступен
  • требуется доступ

Это состояние вычисляется из отслеживаемых ресурсов на диске, флагов isEnabled внутри отслеживаемых файлов конфигурации и проверок доступа/обновления Nightbreak.

Переключаемые и общие пакеты

Переключаемые пакеты работают путём переключения isEnabled внутри отслеживаемых файлов конфигурации в:

plugins/EternalTD/levels/
plugins/EternalTD/waves/
plugins/EternalTD/npcs/

Общие пакеты не работают как обычные переключатели:

  • Мир хаба рассматривается как общий установленный контент.
  • Пакет пользовательских моделей рассматривается как общий ресурсный контент.

Для этих пакетов меню настройки предлагает удалить файлы вручную, а затем выполнить /etd reload.

Массовые операции

В настоящее время реализованы две массовые операции:

  • /etd downloadall
  • /etd updatecontent

Обе команды:

  • требуют привязанный токен Nightbreak
  • загружают в plugins/EternalTD/imports
  • пропускают пакеты, которые недоступны или уже актуальны
  • автоматически перезагружают EternalTD после успешных загрузок

Практические замечания

  • Проверки пакетов выполняют дедупликацию по slug Nightbreak перед массовой загрузкой/обновлением.
  • Интерфейс настройки обновляет информацию о контенте и доступе с задержкой вместо обращения к Nightbreak при каждом открытии.
  • Пакет пользовательских моделей записывает маркер в plugins/EternalTD/content_markers/, чтобы EternalTD мог отслеживать, что общий ресурсный пакет был загружен.