Discovery Codex Category
Defines a discovery codex category
Manifest entry defining a discovery category and its menu layout.
フィールド
| フィールド | 型 | デフォルト | 説明 | ||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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 | ||||||||||||||||||||||||||||||||||||||||||||
items | List<DiscoveryItemConfig> | empty | Items contained within this category
|
| フィールド | 型 | デフォルト | 説明 |
|---|---|---|---|
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 |
guiLayoutCodexGuiLayoutPAGINATEDPAGINATEDSCROLLABLEFRAMESIMPLEonUnlockTriggersList<Ref<TriggerableEntry>>emptybaseMenuIdStringTypeWriter 共通フィールド(criteria)
| フィールド | 型 | デフォルト | 説明 |
|---|---|---|---|
criteria | List<Criteria> | empty | Criteria that must be met for this category to be unlocked |
How to use it
category is the identifier used by the command, the placeholders and parentCategory, so keep it short and unique. A category that other categories point to with parentCategory shows those sub-categories (and recipe categories) instead of its own items.
criteria— when not met, the category is locked: its icon useslockedIconLoreand cannot be opened from the parent menu or the global menu.items— each item has anentryId, anitemshown once unlocked and an optionallockedItem. Its owncriteriadecide whether it is unlocked; with none, it is always unlocked.overrideNameandlockedLore/unlockedLore/overrideLorechange the name and lore.itemSlotRange— a range such as10-16, counted from 1. Leave it empty to usestartSlotandfillByRow.onUnlockTriggers(category and item) — fire once per player when the category or item is first seen unlocked. They need a Codex Unlock artifact.baseMenuId— opens the category inside a shared GUI chassis; keeprowsat 3 or fewer.
overrideOrder on items sets the rank of an item. An item without a value takes the rank of its position in the list, so overrideOrder = n places the item as if it were at position n. When two items have the same rank, the one higher in the list comes first. With no overrideOrder at all, items appear in the order of the list.