discovery_codex_category
Defines a discovery codex category — misc entry.
Entry Information
| Property | Value |
|---|---|
| Entry ID | discovery_codex_category |
| Type | Misc |
| Color | — |
| Icon | #A020F0 |
Description
GUI layout types supported by the Codex menu system. / enum class CodexGuiLayout { PAGINATED, SCROLLABLE, FRAME, SIMPLE } /* Manifest entry defining a discovery category and its menu layout.
Fields
| Field | Type | Description |
|---|---|---|
category | String | Unique identifier for this discovery category |
title | String | Title displayed at the top of the inventory |
rows | Int | Number of rows for the inventory (1-6) |
order | Int | Display order when listing categories |
icon | Item | Icon used when referencing this category |
iconName | String? | Optional custom name for the icon when displayed in menus. Placeholders: {unlocked}, {locked}, {total}, {percent} |
iconLore | List<String> | Optional lore lines for the icon when displayed in menus. Placeholders: {unlocked}, {locked}, {total}, {percent} |
lockedIconLore | List<String> | Lore to display for the icon when the category is locked. Placeholders: {unlocked}, {locked}, {total}, {percent} |
background | Item? | Optional background filler item |
itemSlotRange | String | Range of slots where discovery items will be displayed (e.g. '1-25') |
startSlot | Int | Slot index where items start (0-based) |
fillByRow | Boolean | If true, items fill row by row; otherwise column by column |
previousButton | Item? | Item used for the previous page button |
previousButtonSlot | Int | Slot for the previous page button |
previousButtonName | String? | Custom name for the previous page button. Placeholders: {page}, {max_page}, {unlocked}, {locked}, {total}, {percent} |
previousButtonLore | List<String> | Lore for the previous page button. Placeholders: {page}, {max_page}, {unlocked}, {locked}, {total}, {percent} |
nextButton | Item? | Item used for the next page button |
nextButtonSlot | Int | Slot for the next page button |
nextButtonName | String? | Custom name for the next page button. Placeholders: {page}, {max_page}, {unlocked}, {locked}, {total}, {percent} |
nextButtonLore | List<String> | Lore for the next page button. Placeholders: {page}, {max_page}, {unlocked}, {locked}, {total}, {percent} |
backButton | Item? | Item used for the back button |
backButtonSlot | Int | Slot for the back button (default: 44, bottom-right area) |
backButtonName | String? | Custom name for the back button |
backButtonLore | List<String> | Lore for the back button |
infoButton | Item? | Item used for the info button |
infoButtonSlot | Int | Slot for the info button |
infoButtonName | String? | Custom name for the info button. Placeholders: {unlocked}, {locked}, {total}, {percent} |
infoButtonLore | List<String> | Lore for the info button. Placeholders: {unlocked}, {locked}, {total}, {percent} |
parentCategory | String? | Optional parent category identifier; if set, this category becomes a sub category |
criteria | List<Criteria> | Criteria that must be met for this category to be unlocked |
items | List<DiscoveryItemConfig> | Items contained within this category |
guiLayout | CodexGuiLayout | GUI layout type for the codex menu |
onUnlockTriggers | List<Ref<TriggerableEntry>> | Triggers to fire when this category is unlocked by a player |
Usage Example
- entry: discovery_codex_category
name: "Defines a discovery codex category"
category: ""
title: ""
rows: 0
order: 0
icon: ""
iconName: ""
iconLore: []
lockedIconLore: []
background: ""
itemSlotRange: ""
startSlot: 0
fillByRow: false
previousButton: ""
previousButtonSlot: 0
previousButtonName: ""
previousButtonLore: []
nextButton: ""
nextButtonSlot: 0
nextButtonName: ""
nextButtonLore: []
backButton: ""
backButtonSlot: 0
backButtonName: ""
backButtonLore: []
infoButton: ""
infoButtonSlot: 0
infoButtonName: ""
infoButtonLore: []
parentCategory: ""
criteria: []
items: []
guiLayout: ""
onUnlockTriggers: []