category | String | — | Unique identifier for this discovery category |
title | String | — | Title displayed at the top of the inventory占位符 |
rows | Int | 6 | Number of rows for the inventory (1-6) |
order | Int | 0 | 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> | empty | Optional lore lines for the icon when displayed in menus. Placeholders: {unlocked}, {locked}, {total}, {percent}占位符多行 |
lockedIconLore | List<String> | empty | 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 | 0 | Slot index where items start (0-based) |
fillByRow | Boolean | true | If true, items fill row by row; otherwise column by column |
previousButton | Item? | — | Item used for the previous page button |
previousButtonSlot | Int | 0 | 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> | empty | 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 | 8 | 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> | empty | Lore for the next page button. Placeholders: {page}, {max_page}, {unlocked}, {locked}, {total}, {percent}占位符多行 |
backButton | Item? | — | Item used for the back button |
backButtonSlot | Int | 44 | Slot for the back button (default: 44, bottom-right area) |
backButtonName | String? | — | Custom name for the back button占位符 |
backButtonLore | List<String> | empty | Lore for the back button占位符多行 |
infoButton | Item? | — | Item used for the info button |
infoButtonSlot | Int | 4 | Slot for the info button |
infoButtonName | String? | — | Custom name for the info button. Placeholders: {unlocked}, {locked}, {total}, {percent}占位符 |
infoButtonLore | List<String> | empty | 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> | empty | Criteria that must be met for this category to be unlocked |
items | List<DiscoveryItemConfig> | empty | Items contained within this categoryDiscoveryItemConfig(10)
| 字段 | 类型 | 默认值 | 描述 |
|---|
entryId | String | — | Unique identifier for this discovery item | item | Item | — | Base item to display in the codex | overrideName | String? | — | Optional display name override. Placeholders: {unlocked}, {locked}, {total}, {percent}占位符 | overrideLore | List<String> | empty | Lore to override the item's default lore when unlocked. Placeholders: {unlocked}, {locked}, {total}, {percent}占位符多行 | overrideOrder | Int? | — | Display order override | lockedLore | List<String> | empty | Lore to display when the item is locked. Placeholders: {unlocked}, {locked}, {total}, {percent}占位符多行 | unlockedLore | List<String> | empty | Lore to append when the item is unlocked. Placeholders: {unlocked}, {locked}, {total}, {percent}占位符多行 | criteria | List<Criteria> | empty | Criteria that need to be met for the item to be unlocked (Typewriter facts) | lockedItem | Item? | — | Optional item to display when the entry is locked | onUnlockTriggers | List<Ref<TriggerableEntry>> | empty | Triggers to fire when this specific item is unlocked by a player |
|
guiLayout | CodexGuiLayout | PAGINATED | GUI layout type for the codex menu可选值:PAGINATEDSCROLLABLEFRAMESIMPLE |
onUnlockTriggers | List<Ref<TriggerableEntry>> | empty | Triggers to fire when this category is unlocked by a player |
baseMenuId | String | — | Entrée open_gui servant de châssis partagé (ex. menu_shell). Vide = la catégorie s'ouvre en inventaire autonome (comportement historique). Renseigné = la catégorie devient un écran du menu global : son propre plan de slots (itemSlotRange/boutons) doit alors tenir dans la zone de contenu du châssis (rows ≤ 3), pas l'inventaire entier. |