Skip to main content
The Discovery Codex Definition defines a category of unlockable items (e.g., “Fishing Log”, “Monster Bestiary”). It controls the menu layout and the criteria for unlocking the category itself.

Configuration

category
String
required
Unique identifier for this discovery category.
title
String
required
Title displayed at the top of the GUI.
rows
Int
default:"6"
Number of rows for the inventory GUI (1-6).
parentCategory
String
Optional ID of a parent category, creating a hierarchy.

Display & Icon

icon
Item
required
Icon used when referencing this category in a main menu.
iconName
String
Custom display name for the icon.
iconLore
List<String>
Lore lines for the icon.
lockedIconLore
List<String>
Lore displayed if the category itself is locked for the player.
criteria
List<Criteria>
Conditions required for the player to access this category.

Layout Settings

background
Item
Optional filler item for empty slots.
itemSlotRange
List<Int>
Specific slots where items can appear.
fillByRow
Boolean
default:"true"
If true, items fill row-by-row. If false, column-by-column.
navigationButtons
NavigationConfig
Configuration for Previous, Next, Back, and Info buttons.

Items Configuration

The items list defines what can be unlocked in this category.
entryId
String
required
Unique ID for this discovery entry.
item
Item
required
The item to display when unlocked.
criteria
List<Criteria>
The conditions that trigger the unlock (e.g. has_item, killed_mob).
lockedItem
Item
Item to display when not yet discovered (e.g. bedrock or question mark).
unlockedLore
List<String>
Lore appended when unlocked.
lockedLore
List<String>
Lore displayed when locked.