Creating Loot Boxes

Build tiered, randomized reward bundles — every concept demoed live in the page.

Creating Loot Boxes

A loot box bundles randomized rewards behind a single open action. The player pays a cost, the platform draws from a weighted pool of tiers, and the resulting elements land in the player's inventory. Loot boxes live under Game Data → Loot Boxes in The Leap, and the editor there is the source of truth for everything you'll see in this article.

Rather than describing the editor with screenshots, the sections below embed live components — the same ones the in-product editor uses, and the same simulator your designers and the public tools page run on. Play with the embeds; nothing you do here is saved.

Demo mode: every embed is interactive. Use the Reset button at the top-right of an embed to restore its starting state.

1. Tiers and weights

A loot box is a list of tiers — Common, Rare, Epic, Legendary by default — each with a relative drop weight and a pool of possible elements. When a box opens, The Leap picks a tier proportionally to its weight, then draws a uniform element from that tier's pool.

The table below shows the four default tiers. Try editing the weights — the % chance column normalizes automatically, and To collect all estimates how many opens an average player needs to see every element of that tier at least once.

``embed { "component": "RarityTable", "fixture": "default-four-tiers" } ``

A few things worth knowing:

  • Weights are relative. 60/30/9/1 and 600/300/90/10 produce identical probabilities. The editor shows you the normalized percentage but stores the raw weight.
  • Weights don't need to sum to 100. The platform normalizes them at draw time.
  • A tier with weight zero never drops. Designers occasionally use this as a "soft retire" — keep the tier defined so existing analytics keep their groupings, but stop it from rolling.

A spicier distribution

The example below flattens the distribution toward the rarer end — useful for a premium "event" box where the marketing copy promises better odds. Notice how the To collect all column shrinks for Epic and Legendary as their weights grow.

``embed { "component": "RarityTable", "fixture": "weighted-toward-legendary" } ``

2. Elements per box

A single open can produce more than one element. The Elements per box setting on a loot box controls how many draws each open resolves — useful for "5-card pack" or "starter bundle" boxes.

The simulator below has the four default tiers and 5 elements per box. Click Open a box to see five tiers drawn in one open. Set the value back to 1 and re-open to see the single-draw behaviour.

``embed { "component": "LootBoxSimulator", "fixture": "single-open-demo" } ``

Under the hood, the editor wires this to an inner draw loop — each open seeds a per-box extraction counter, and the engine draws one element per credit until the counter empties. You don't need to think about that machinery: the editor exposes only the Elements per box number, and the runtime takes care of the rest.

3. Acquisition cost

A loot box always has a cost — what the player spends to acquire one. The same Cost Editor you'll meet in the currency and item dialogs powers this section, and it accepts any combination of currencies, resources, and catalog items.

Alternative costs let you offer multiple payment paths: entries within an option are consumed together (AND), and options are alternatives the player picks one of (OR). The example below sets up a box that costs 250 gold + 5 wood OR 30 gems — exactly what the loot box editor's Acquisition card produces.

``embed { "component": "CostEditor", "fixture": "loot-box-acquisition" } ``

For a deeper look at the Cost Editor — including currency conversion and the full alternative-cost model — see Conditions and Costs.

4. Locking conditions

By default, a loot box is openable as soon as the player owns one. The "you have a box to open" rule is automatic — you don't write it. Locking conditions are extra gates layered on top: level requirements, progression checkpoints, event windows, and so on.

The example below requires the player to have reached Level 5 before they can open this box. Try adding a second condition to the same group (AND), or click Add Condition Group to model an alternative unlock path (OR).

``embed { "component": "ConditionsEditor", "fixture": "loot-box-level-gate" } ``

The Conditions Editor is the same one used by progression-step unlocks and reward gating — see Conditions and Costs for the full surface.

5. Putting it together

The simulator below is the one your designers use to balance boxes before they ship. Tune the weights, change Elements per box, and then click Run simulation to project what 200 players experience across 1,000 opens each. Use the resulting chart to ask the questions that matter — Does the distribution feel right? Is the long tail too long? Are duplicates inevitable at this point?

``embed { "component": "LootBoxSimulator", "fixture": "full-default" } ``

The same simulator is available without a login at the public loot box simulator — feel free to share that link with anyone who'd benefit from a sandbox.

Where to go next

  • For a deeper look at the building blocks under the hood, see Conditions and Costs.
  • To learn how loot box edits show up in workspace merges (they appear as a single "Loot box" rather than the underlying resources and progressions), see Working with Workspaces.
  • For balance-testing loot boxes alongside the rest of your economy, head to Introduction to Simulations.