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

Архитектура

Категории, квесты и меню независимы друг от друга и связываются только через записи.

Данные​

  • Quest Category задаёт идентичность группы: название, заголовок, значок, родителя, порядок и критерии.
  • Quest Assignment помещает квесты официального расширения Quest в категорию. Несколько назначений могут указывать на одну категорию, и их переопределения объединяются.
  • Quest Lore добавляет описание (lore) для каждого статуса одного квеста, в категории или везде.

Меню​

Когда игрок открывает меню, расширение находит его Category Menu, переписывает каждый маркер в раскладках simple указанного Open GUI в пронумерованный маркер, разбирает раскладку через движок GUI, а затем заменяет каждый видимый маркер n-м квестом или категорией. Маркеры без содержимого отображаются как пустые слоты, кроме TRACKED_QUEST_SLOT, который сохраняет настроенный вами предмет как своё пустое состояние. Кнопка сортировки рисуется как фиксированная накладка в позиции SORT_SLOT.

Отслеживание и восстановление​

Идентификаторы отслеживаемых квестов хранятся для каждого игрока, по порядку, в артефакте отслеживания. Официальное расширение Quest по-прежнему показывает на HUD один основной квест; Quest Codex хранит остальные и восстанавливает последний после повторного подключения. Восстановление работает так же для прерванного диалога или кинематики: краткоживущий снимок сохраняется асинхронно и восстанавливается через несколько тиков после возвращения игрока. Кинематика перезапускает свою страницу и переходит к сохранённому кадру.

Маршрутные точки​

Маршрутная точка определяет свою цель (фиксированная позиция, цель квеста, отслеживаемая цель или сущность), затем собирает слои текста, блока и маяка, существующие только в пакетах. Слои HUD следуют за камерой игрока; слои цели располагаются на самой цели. В мире не сохраняется ни одной сущности отображения.

Интеграции​

  • BlueMap — записи BlueMap Icon при запуске BlueMap превращаются в маркеры набора маркеров Quests. Маркеры статичны: они не следуют за прогрессом игрока.
  • Advancements — записи Advancement Definition при запуске записываются как датапак и выдаются действием.