Magic Vault 5×3 — Game Design Document

draft-v0.1 — DEV ONLY. NOT FOR PRODUCTION. NOT FOR CERTIFICATION.

1. Document control

FieldValue
Game IDmagic-vault-5x3
Document versiondraft-v0.1
Date2026-08-10
Design spec2026-08-10-magic-vault-5x3-design.md
Math Spec../math/magic-vault-5x3-math-spec.md
Presentation flowmagic-vault-5x3-presentation-flow.md
Canonical configlibs/mathengine/games/magic_vault_5x3/magic-vault-5x3.yaml
Config SHA-256a42ae35875e200728a8bc9178b18c1ca19d4af1fdb92d96e3d775cb6556e7873
Backend commiteb4cd2dfb4b176ebeab18a5c74212124b76fc7b9
ApprovalDesign approved 2026-08-10. Draft math approved 2026-08-10 — version stays in draft; not a freeze, not a Final, not a release.

Every RTP or frequency figure in this document is a math result, not a player-facing promise, and none of them is a session guarantee.

2. High concept

A fantasy vault of heroes, gems and prize coins. The base game is a deliberately plain 5×3 / 10-line slot; almost all of the game's value sits in a Hold & Win that fires roughly once in eighty paid rounds. The player's attention is meant to be on coins landing, not on line wins.

Intended volatility: high / feature-heavy.

3. Game summary

FieldValue
Layout5 reels × 3 rows
Win evaluation10 fixed paylines, left to right, beginning on reel 1
Winning combinationconsecutive matching symbols from reel 1
Minimum combination3 of a kind
Additional wagernone — the feature costs nothing extra
Round cap500× total bet, applied once
Free spinsnone in Draft v0.1
Feature buynone in Draft v0.1
Gamblenone

4. Symbols

SymbolRoleArtPays on lines
WILDsubstitutes for H1–H4 and L1–L4symbol_wild.pngyes — 5 of a kind only, see §6
COINHold & Win trigger and locked prize cellsymbol_coin.pngnever, at any count
H1highsymbol_high_01.png3 / 4 / 5
H2highsymbol_high_02.png3 / 4 / 5
H3highsymbol_high_03.png3 / 4 / 5
H4highsymbol_high_04.png3 / 4 / 5
L1lowsymbol_low_01.png3 / 4 / 5
L2lowsymbol_low_02.png3 / 4 / 5
L3lowsymbol_low_03.png3 / 4 / 5
L4lowsymbol_low_04.png3 / 4 / 5

There is no BONUS symbol. COIN appears on the base reels and is the only trigger source. symbol_bonus.png is not used in Draft v0.1.

Wild rules

  • WILD substitutes for H1–H4 and L1–L4.
  • WILD does not substitute for COIN, and no arrangement of wilds makes a COIN line pay.
  • WILD does not itself trigger, block or alter the Hold & Win.

5. Paylines

Row indexes are 0 = top, 1 = middle, 2 = bottom. Positions[i] is the row on reel i.

#PositionsShape
1[1,1,1,1,1]middle row
2[0,0,0,0,0]top row
3[2,2,2,2,2]bottom row
4[0,1,2,1,0]V down
5[2,1,0,1,2]V up
6[0,0,1,2,2]diagonal down
7[2,2,1,0,0]diagonal up
8[1,0,0,0,1]top arch
9[1,2,2,2,1]bottom arch
10[0,1,0,1,0]zigzag

6. Paytable

Values are line-bet multipliers. The engine divides each line win by the number of paylines, so a 10-line round staking 1.00 total pays payout / 10 per winning line. Feature awards are total-bet multipliers and are not divided.

Symbol345
WILD250
H130110250
H22285190
H31870160
H41555140
L183085
L262370
L352060
L441545
COIN

Why WILD has no 3- or 4-of-a-kind row

This is a deliberate, tested consequence of the engine, recorded rather than worked around.

mathengine's LinesEvaluator takes the first non-wild symbol on the line as the match symbol. Leading wilds therefore always fold into the run behind them: WILD, WILD, WILD, H2, L1 pays H2 four of a kind, not WILD three of a kind. WILD is the match symbol only when every position on the line is wild — which is exactly five. Publishing WILD 3- and 4-of-a-kind rows would advertise combinations no grid can produce.

Pinned by TestWildThreeAndFourAreStructurallyUnreachable. Changing this would require a change to the shared evaluator, which is outside this game's scope.

7. Base-game rules

  1. Each reel makes one weighted draw and shows a three-symbol window (see the Math Spec §4).
  2. Each of the 10 paylines is evaluated left to right from reel 1.
  3. A line pays its longest run of matching symbols, with WILD substituting.
  4. A line pays at most once; the 10 line results are summed.
  5. COIN never contributes a line win. A COIN on reel 1 ends that payline's run.
  6. Visible COIN symbols are counted across the whole 5×3 grid.
  7. If 6 or more COIN are visible, the Hold & Win begins.
  8. The round total is capped once at 500× total bet.

8. Hold & Win

Mechanic hold_and_win/v1, reused unchanged. The only adaptation is the layout.

Trigger and carry-over

  • 6 or more visible COIN anywhere on the 5×3 grid.
  • Those exact cells become the initial locked cells in their own positions.
  • The feature never redraws, relocates or replaces a triggering coin.
  • Each initially locked cell is immediately assigned exactly one prize.

Cell index is column * 3 + row, columns left to right, rows top to bottom. Cell 0 is the top of reel 1; cell 14 is the bottom of reel 5.

Respin loop

respins := 3
repeat:
    for each EMPTY cell, in cell-index order:
        with probability 4.3% (43,000 PPM) the cell locks and receives one prize
    if at least one cell locked this step:  respins := 3        (reset)
    else:                                   respins := respins - 1
until respins == 0 or all 15 cells are locked

Locked cells are never redrawn and consume no randomness. The feature charges no additional wager. Background art switches to bonus-background.png.

Prizes

Each locked cell receives one prize drawn as kind first, then value if the kind is regular.

Prize kindValueWeight
regulardrawn from the coin table below1000
Mini10× total bet20
Minor25× total bet5
Major100× total bet1
Regular coin10×20×
Weight30251815102

E[regular] = 3.49×, E[prize] ≈ 3.815789×.

Settlement

  • Ordinary: the sum of all locked prizes, capped once at 500× total bet.
  • Full grid: exactly Grand = 500× total bet, which replaces the prize sum rather than adding to it. A grid worth 1,400× in coins still pays 500×; a grid worth 15× still pays 500×.
  • There is no landed "Grand" prize kind. The Grand exists only as the full-grid award.

9. Maximum win

500× total bet, and it is reachable rather than merely advertised: a full grid settles at exactly 500×. Witnessed deterministically at seed magic-vault-golden, round index 62574, and by direct settlement of a constructed full grid at three different per-cell values.

The base game alone can reach at most 64× across all ten lines, so the round cap can only ever bind on a feature round.

10. Player-facing figures

FigureValueMethod
Return to player96.00%reconciled: exact base + exact trigger × measured feature mean
Feature frequencyabout 1 in 80 paid roundsexact (1 in 79.0555)
Base-game hit frequencyabout 29.4%exact
Maximum win500× total betwitnessed

These are long-run mathematical properties of the model. They are not a promise about any session, and none of them has been externally certified.

11. Not in Draft v0.1

Free spins, feature buy, Mystery, Scatter, collectors, additional multipliers, additional wagers, gamble, any change to hold_and_win/v1, new art, live routing, deployment, frontend E2E, Final / Freeze / Handoff.