Quest Category
Defines a quest category — a logical group of quests in the codex. Categories can be nested via the parent field to create sub-category hierarchies.
To add quests to this category, use Quest Assignment. To configure the menu layout for this category, use Category Menu.
Fields
| Field | Type | Default | Description |
|---|---|---|---|
category | String | "" | Unique category identifier — lowercase, no spaces. Used to reference this category in other entries. |
title | String @Placeholder @Colored | "" | Display title shown in the codex menu. Supports MiniMessage. |
icon | Item @ContentEditor | (empty) | Item used as the category icon in parent menus. |
parent | String | "" | Parent category name. Leave empty for a top-level (root) category. |
order | Int | 0 | Display order — lower numbers appear first. Same-order categories sort alphabetically. |
activeCriteria | List<Criteria> | [] | Criteria that must be met for this category to appear. |
completedCriteria | List<Criteria> | [] | Criteria that mark this category as completed. |
blockedMessage | String @Placeholder @Colored @MultiLine | "" | Message shown when the category is locked. |
activeMessage | String @Placeholder @Colored @MultiLine | "" | Message shown when the category is in progress. |
completedMessage | String @Placeholder @Colored @MultiLine | "" | Message shown when the category is completed. |
hideWhenLocked | Boolean | false | If true, hide this category entirely when locked. If false, show it greyed out with blockedMessage. |
Nesting Categories
Categories support parent/child relationships through the parent field:
# Top-level category
quest_category:
category: "main_quests"
title: "<gold>Main Story"
icon: GOLDEN_SWORD
order: 0
# Sub-category nested under main_quests
quest_category:
category: "dungeons"
title: "<dark_red>Dungeons"
icon: IRON_SWORD
parent: "main_quests"
order: 0
A sub-category inherits visibility from its parent. If the parent is locked, the sub-category is also hidden regardless of its own criteria.
Category Status
Each category has a status determined by its criteria:
| Status | Condition | Appearance |
|---|---|---|
| Blocked | activeCriteria not met | Greyed out or hidden (see hideWhenLocked). Shows blockedMessage. |
| Active | activeCriteria met, completedCriteria not met | Clickable. Shows activeMessage if set. |
| Completed | completedCriteria met | Shows completedMessage if set. |
Example
{
"type": "quest_category",
"id": "cat_main",
"name": "Main Story Category",
"category": "main_quests",
"title": "<gold><bold>✦ Main Story ✦",
"icon": {
"case": "custom_item",
"value": {
"components": [
{ "case": "material", "value": { "material": "NETHER_STAR" } }
]
}
},
"parent": "",
"order": 0,
"activeCriteria": [],
"completedCriteria": [],
"blockedMessage": "<red>Complete previous quests to unlock.",
"hideWhenLocked": false
}