Статусы квестов и задач¶
У квеста и его задач есть небольшой набор состояний: квест выдают, его проходят, он завершается одним из трёх исходов. Эта страница — про саму модель состояний и про словарь, которым их называют: что значит каждый статус и как его прочитать командой.
Жизненный цикл квеста¶
Как только квест выдан игроку, он отслеживается (tracked) — попадает в книгу и числится за игроком. Отслеживаемый квест проходит две фазы:
- активен (
active) — ещё не завершён, прогресс считается; - завершён (
complete) — есть итог, прогресс больше не меняется.
tracked — квест выдан игроку
├── active — проходится, прогресс считается
│ └── pinned — закреплён в HUD
└── complete — есть итог, прогресс заморожен
├── success — успех
└── failure — провал
Завершённый квест заморожен. Его статус и прогресс больше не меняются, и правки самого квеста на него не действуют — у того, кто уже его прошёл, он остаётся таким, каким завершился. Почему правка квеста меняет тех, кто проходит сейчас, но не тех, кто завершил, — в Активный этап.
Два исхода¶
Завершённый квест всегда в одном из двух итогов:
- success — успех: все обязательные задачи завершены (успешно или пропущены).
- failure — провал: хотя бы одна обязательная задача провалена. Квест завершается немедленно, не дожидаясь остальных.
Пропуск всех обязательных задач командой
/quest complete ... skipтоже даётsuccess, а не отдельный статус. Пропуск описывает исход конкретной задачи, но не квеста целиком.
Итог считается по обязательным задачам этапов — необязательные на него не влияют. Как из этапов и задач складывается прохождение — в Структура квеста.
Закрепление — отдельное измерение¶
pinned — не фаза жизненного цикла, а пометка видимости поверх неё: закреплённый квест показан в HUD на экране. Закрепить можно только активный квест; при завершении он из HUD уходит. На то, как считаются условия, закрепление не влияет — только на то, что игрок видит перед собой. Подробно — в Закрепление.
Статусы задачи¶
У задачи тот же набор состояний, что у квеста. Задача активна (active), пока она в активном этапе и ещё не выполнена; задачи будущих и пройденных этапов не активны. Когда задача выполняется, она становится завершённой с тем же исходом — success, failure или skipped. Закрепить (pinned) можно активную задачу — в HUD она поднимается наверх блока.
Как прочитать статус командой¶
Статус — это читаемое состояние: его проверяют командой (quest test, /execute if quest) и фильтруют им список квестов игрока (quest list trackedby). Что каждая команда принимает и возвращает — в Справочник команд; как вплести статус в командную логику — в Интеграция с командами.
Проверке доступны пять статусов:
| Статус | Значит |
|---|---|
active |
Выдан и ещё не завершён. |
complete |
Завершён любым исходом. |
succeeded |
Завершён успехом (исход success). |
failed |
Завершён провалом (исход failure). |
pinned |
Закреплён в HUD (бывает только у активного). |
Два набора слов про статус — не путай. Исход задаёшь одними словами, статус проверяешь другими:
- задать исход (
quest complete):success·failure·skip;- проверить статус (
test,execute if,list):active·complete·succeeded·failed·pinned.Проверочные
succeeded/failed— в прошедшем времени, в отличие от исходныхsuccess/failure. Словоskipзадаёт исход задачи, но не создаёт отдельного статуса квеста.
Квест без этапов¶
Квест без этапов остаётся
activeбесконечно: у него нет обязательных задач, по которым считается итог, поэтому сам он не завершается. Так делают нарративные записи — слухи, заметки, фрагменты лора. Готовый рецепт — Квест-заметка.
См. также¶
- Структура квеста — как из этапов и задач складывается итог квеста.
- Активный этап — почему правка квеста меняет проходящих, но не завершивших.
- Закрепление — что делает
pinnedна стороне игрока. - Справочник команд — точный синтаксис
quest test,execute if quest,quest list trackedby. - Интеграция с командами — как читать состояние квеста из командных блоков и функций.