| Latest version | 0.2.1 |
|---|---|
| Minimum Core | 14 |
| Compatible Core | 14 |
| Last updated | 3 weeks ago |
| Created | 5 months ago |
| Authors | |
| Languages |
|
| Systems |
Daggerheart |
| Project source | Project URL |
Turn loot into an event!
Add a thrill of surprise to your Daggerheart sessions. The Mystery Box module lets GMs create item boxes — treasure chests, magical caches, lucky bags — that players open to reveal random rewards. Items land directly in the character's inventory, no manual work needed.
MysteryBox.Open();
MysteryBox.Manager();
When creating a Mystery Box, you choose how it decides what the player receives. There are two modes:
Each item in the box has its own independent chance of being given to the player.
When the player opens the box, the module rolls a 1–100 dice for each item separately:
This means the player can receive multiple items at once, just one, or even nothing — depending on how lucky the rolls are.
Example: A box contains three items:
- 🗡️ Rare Sword → 10% chance
- 🧪 Healing Potion → 80% chance
- 📜 Magic Scroll → 50% chance
Each one is rolled independently. The player could walk away with all three, only the Potion, or nothing at all.
Items set to 100% are always given — no dice roll needed.
The box draws a fixed number of items from the pool — like a raffle ticket. The player is guaranteed to receive exactly N items (or whatever range the GM configured).
Instead of each item fighting its own odds, all items compete against each other in a weighted draw:
A visible 1d100 dice is rolled first (its result seeds the random number generator), then the weighted draw happens behind the scenes.
Example: A box has 5 items, all with different weights, and is set to draw 2 items. The player will always get exactly 2, but which 2 depends on the weighted randomness.
Use this mode when you want to guarantee a fixed number of rewards but still want randomness in which rewards are given.
| Percentage | Raffle | |
|---|---|---|
| Items received | 0 to all | Fixed count (N) |
| Each item rolled? | Yes, independently | No — all compete together |
| Can get nothing? | Yes | No (unless pool is empty) |
| Best for | Loot drops with variable results | Prize boxes with guaranteed rewards |
When creating a Mystery Box, you can choose how the reveal is presented to the player.
A burst of colorful confetti fills the screen. Lightweight and festive — works for any occasion.
Plays a short animated video tied to the box's rarity before revealing the contents. The higher the rarity, the more dramatic the intro.
Plays the rarity sound effect without any visual animation. Good for a subtle reveal that doesn't interrupt the flow of play.
No animation or sound. The contents are revealed immediately and silently.
Tip: Use Video for dramatic high-rarity rewards, Confetti for a fun everyday feel, Sound Only when you want atmosphere without distraction, and None for a fast no-frills experience.
You can share your created Mystery Boxes with other worlds. When you import a Mystery Box item into a world, the module automatically configures the necessary settings for you. You can also drag items directly from a compendium onto a player's character sheet.
The Mystery Box Manager is the GM's control panel. Here you create new boxes, name them, set their rarity, choose the opening style (Confetti, Video, Sound, or None), and select the box mode (Percentage or Raffle). Once configured, the box is ready to be filled with items.
In Raffle Mode, items are listed with their relative weights instead of individual percentages. Items with higher weights are more likely to be drawn. The GM defines how many items the player is guaranteed to receive per opening — useful for prize boxes and structured rewards.
The Player View shows what happens when a character opens a Mystery Box. The reveal animation plays (confetti burst or rarity video), followed by the list of items won. All rewards are automatically transferred to the character's inventory — no manual work required.
The module ships with a collection of ready-to-use Mystery Boxes. These premade boxes cover a range of rarities and themes, so you can drop them straight into your session without any setup. They can also be used as templates for your own custom boxes.
| Module | Description |
|---|---|
| 💀 Adversary Manager | Scale adversaries instantly and build balanced encounters. |
| 🖼️ Art Mapper | Automatically assigns artwork to system compendiums, actors, tokens, and custom module content — keeping your visuals organized and up to date. |
| 🐉 Colossus | Manage massive multi-part boss encounters with independent HP per part and a single shared stress pool. |
| 📦 Containers | Group inventory items into collapsible containers — pouches, chests, backpacks — to declutter character sheets. |
| 💥 Critical | Animated criticals. |
| 💠 Custom Stat Tracker | Add custom trackers to actors. |
| ☠️ Death Moves | Enhances the Death Move moment with a dramatic interface and full automation. |
| 📏 Distances | Visualizes combat ranges with customizable rings and hover calculations. |
| 📦 Extra Content | Homebrew content pack. |
| 😱 Fear Tracker | Adds an animated slider bar with configurable fear tokens to the UI. |
| 🧟 Horde | Explode single horde tokens into dozens of individual tokens and manage their movement and stats automatically. |
| 🎁 Mystery Box | Introduces mystery box mechanics for random loot and surprises. |
| ⚡ Quick Actions | Quick access to common mechanics like Falling Damage, Downtime, etc. |
| 📜 Quick Rules | Fast and accessible reference guide for the core rules. |
| 🤖 Resource Macros | Automatically executes macros when the Fear or Hope resources change. |
| 🎲 Stats | Tracks dice rolls from GM and Players. |
| 🧠 Stats Toolbox | Import actors using a statblock. |
| 🛒 Store | A dynamic, interactive, and fully configurable in-game store. |
| 🔍 Unidentified | Obfuscates item names and descriptions until they are identified by the players. |
| 🌌 Void | Unofficial module that brings The Void playtesting content — experimental classes, subclasses, ancestries, communities, adversaries, loot, weapons, and more. |
| Adventure | Description |
|---|---|
| ✨ I Wish | A wealthy merchant is cursed; one final expedition may be the only hope. |
| 💣 Suicide Squad | Criminals forced to serve a ruthless master in a land on the brink of war. |
To install this package, open your Foundry Setup screen and navigate to your Module tab and click the Install Module button.
From there, you can either search for the package unique name: dh-mystery-box or copy its manifest URL:
And paste it to the input box at the bottom of your window.

You can install this package directly to your Forge account.