The Quest module provides a compact quest runtime built around QuestConfig, QuestManager, runtime QuestState, and a UnityEvent-friendly no-code bridge component.
QuestConfigstores quest id, title, description, objectives, start conditions, and next quest ids.QuestManageraccepts quests, tracks runtime state, completes objectives, and raises UnityEvents or C# events.QuestStatestores per-quest runtime progress and status.QuestNoCodeActionlets you trigger quest actions from Inspector events (Accept,CompleteObjective,Fail,Restart,Reset,ResetAll).QuestContextmarks the object used as condition evaluation context for quest start conditions.
| Page | Description |
|---|---|
| QuestConfig | Quest asset structure, objectives, and start conditions |
| QuestManager | Scene runtime manager, events, and main API |
| QuestState | Runtime quest state, progress, and UI-facing data |
| Quest NoCode Action | UnityEvent bridge for inspector-driven quest actions |
| Russian Quest docs | Full Russian module documentation |
CustomConditionKillCountCollectCountReachPointTalk
- Create one or more
QuestConfigassets. - Add
QuestManagerto the scene and register configs inKnown Quests. - Assign
Condition Contextif start conditions should be evaluated against a player or world object. - Accept quests via
AcceptQuest(...),QuestNoCodeAction(Accept), or UI events. - Progress objectives through
CompleteObjective(...),NotifyKill(...),NotifyCollect(...), orQuestNoCodeAction(CompleteObjective).
AcceptQuest(string questId)andAcceptQuest(QuestConfig quest)TryAcceptQuest(string questId, out string failReason)CompleteObjective(string questId, int objectiveIndex)NotifyKill(string enemyId)NotifyCollect(string itemId)GetState(string questId)andGetState(QuestConfig quest)FailQuest(...)AllQuests,ActiveQuests
QuestManager exposes both Inspector-facing UnityEvent callbacks and C# events:
OnQuestAcceptedOnObjectiveProgressOnObjectiveCompletedOnQuestCompletedOnQuestFailedOnAnyQuestAcceptedOnAnyQuestCompleted
The current module does not ship with a built-in save/load restoration API for quest states. QuestState is serializable, but restoring a saved list still requires project-level integration.
- Russian docs:
../../Docs/Quest/README.md - Condition
- Save