Hidden Display
hidden_display decides what a player who has not unlocked the stage sees in place of the real
item. It changes nothing about whether the item is locked — only how it presents itself. Once the
stage is unlocked, everything displays normally again.
In the editor
Not a tab — it belongs to the stage rather than to one lock category. Stage Settings, the button on the stage's own screen, holds it as the Display card: the two modes as dropdowns, their replacement texts as fields, and the lock-hint switch.
Per-entry overrides are set where the entry is: right-click the item, tag, mod or fluid in its list and pick Text Override.
It only appears while this stage's name_mode or tooltip_mode is set to "replace" — with both
off or hidden there is no text for an entry to override, so the menu leaves it out rather than
offering something that would do nothing.
{
"hidden_display": {
"name_mode": "replace",
"name_text": "???",
"tooltip_mode": "replace",
"tooltip_text": "Unlock the Stone Age to reveal this item.",
"show_lock_hints": false
}
}
| Key | Type | Default | What it does |
|---|---|---|---|
name_mode | String | "off" | "off" — name unchanged. "hidden" — name is cleared. "replace" — name becomes name_text. |
name_text | String | "" | The replacement name, used when name_mode is "replace". |
tooltip_mode | String | "off" | "off" — tooltip unchanged. "hidden" — extra tooltip lines are stripped. "replace" — tooltip becomes tooltip_text. |
tooltip_text | String | "" | The replacement tooltip. \n starts a new line. |
show_lock_hints | Boolean | true | With false, the padlock icon and the "Locked" hint line are left off the tooltip. |
Taking full control of the tooltip
show_lock_hints on its own does very little — turning it off simply removes the padlock line and
leaves whatever the item would otherwise show. It earns its place in combination with
tooltip_mode: "replace", which together is the only way to decide every line a locked player reads:
{
"hidden_display": {
"name_mode": "replace",
"name_text": "Ancient Relic",
"tooltip_mode": "replace",
"tooltip_text": "Recovered from the ruins.\nIts purpose is not yet clear.",
"show_lock_hints": false
}
}
Without show_lock_hints: false, the mod's own "requires stage X" line is appended underneath and
gives the answer away.
Overriding it for a single entry
Entries in items and tags can carry their own name_text and tooltip_text, which take
precedence over the stage-wide ones:
{
"hidden_display": {
"name_mode": "replace",
"name_text": "???",
"tooltip_mode": "replace",
"tooltip_text": "Not yet discovered."
},
"items": [
"minecraft:iron_ingot",
{
"id": "minecraft:netherite_ingot",
"name_text": "A Heavy Metal",
"tooltip_text": "Heavier than gold, and it does not burn."
}
]
}
Only the text is overridden, never the mode. name_mode and tooltip_mode in hidden_display
still decide whether replacing happens at all — an entry with a name_text and a stage whose
name_mode is "off" shows the real name.
??? is the mod's own word for "unknown"
hidden_display is off by default, so nothing is renamed until a stage asks for it. But if you want
a replacement name that matches the rest of the mod, use ??? — that is what the built-in lock
messages ("??? This item is still unknown to you ???") and the Stage Graph's hidden-stage node
already say. It is a deliberate house style rather than an unfinished placeholder.
What hidden display does not cover
An item whose entry narrows the lock down to a single action — say
recipe alone — still shows as hidden and still
carries the "requires stage X" tooltip. Both statements describe that the item belongs to a stage,
which stays true however narrow the gate is. Everything that actually refuses an action reads the
action list; the two display surfaces deliberately do not.
See also
- Unlock Actions — narrowing which interactions a lock covers.
- visual.toml — the server-wide defaults for lock messages, tooltips and the padlock overlay, which apply to every stage that does not override them.