Back to 9Minecraft
Wiki 9Minecraft Wiki 9Minecraft
Revelationary Wiki › Guides › How to Set Up Your First Revelation Datapack

How to Set Up Your First Revelation Datapack

Creating the Folder Structure

Revelationary reads revelations from data/<your_namespace>/revelations/. Create that folder inside your datapack's data directory. Each revelation is its own JSON file, and the filename becomes its identifier, so name it something meaningful like reveal_diamond_ore.json. The namespace must match the one you use elsewhere in your pack.

Writing a Revelation File

Inside the JSON you declare which block states and items are disguised and what they map to. You provide a block_states (or equivalent) mapping of the fake block to the real block, an items mapping for inventory disguises, and a pointer to the advancement that gates visibility. The advancement is the trigger: when a player earns it, the revelation fires for that player. Keep the fake block and the real block visually distinct enough that players notice the change.

Testing In-Game

Load the datapack with /reload, then check that the disguised blocks appear as intended. Grant yourself the linked advancement with /advancement grant @s only <advancement_id> and confirm the blocks swap to their real forms. If nothing changes, verify the advancement ID, the namespace, and that the JSON parses without errors in the log.