The CasinoBack to the game

Everything below is enforced by immutable contracts on Robinhood Chain, not by promises. Where a number can move, this page says who can move it and how far. Where it cannot move, it says physics.

The game

You are not the gambler. You own the Casino. Burn $CHIPS to spin. A hit lands three-of-a-kind and mints that slot Symbol to your wallet; a miss lands mismatched reels and mints nothing, exactly like the real thing. Symbols carry Edge: your share of a fixed emission stream that pays holders forever. Spin, collect, Cash Out or Let It Ride. Win or miss, every spin is automatically a ticket in the night's Pot drawing and progress on your Player's Card.

$CHIPS: supply and emissions

100,000,000 CHIPS will ever exist. 95,000,000 (95%) stream to Symbol holders pro-rata to Edge. The 5,000,000 premine is 4,000,000 of pool liquidity and 1,000,000 of treasury (the Let It Ride bankroll seed and operations).

Emissions follow a hard-coded halving curve: the rate halves every 14 days, starting at about 39.27 CHIPS/sec (roughly 3.39M per day). About 47.5M emits by day 14, 71.25M by day 28, 83.1M by day 42, with a geometric tail after. There is no emission dial: the only control that exists is a one-time, irreversible startEmissions(). Meanwhile 75% of every spin burns forever, so once daily burn passes daily emission, supply peaks and then falls. The machine eats the supply it printed.

epoch k rate = (95M / 2^(k+1)) / 14 days  ·  emitted(t) is closed-form onchain  ·  cap 100M enforced at mint

The split: 75 / 20 / 5

Every spin price splits the same way, executed at settlement, hit or miss, no exceptions: 75% burned (destroyed forever), 20% to the Rake (the treasury that funds the bankroll and operations), 5% to the Pot (that night's drawing). The percentages are constants in the contract. No setter exists.

Stakes and odds

Four tiers. Odds, hit rates, and Edge values are immutable per series: rebalancing them requires deploying a new machine, publicly. Prices are posted and adjustable only through a guarded onchain setter (strictly ascending, bounded 5x step, the Edge-per-CHIP ladder must survive, and every change emits a public event). Higher tiers unlock by lifetime CHIPS burned, and higher rooms hit more often.

TierPriceHit rateEdge per CHIP777 oddsUnlock burn
Penny Slots2549.71%1.071 in 10,000open
Quarter Slots10058.34%1.091 in 2,000open
VIP Room50073.45%1.121 in 12510,000
High Roller2,50091.1%1.181 in 7100,000

Launch values shown; the live machine posts its own. Launch values: 25 / 100 / 500 / 2,500 CHIPS, unlock at 10,000 and 100,000 lifetime burn.

Every winning spin also draws the Multiplier from an independent slice of the same random word: 94% single, 5% double, 1% triple: uniform across tiers, so it raises every tier's yield by exactly 1.07x and distorts nothing.

SymbolEdgePennyQuarterVIPHigh
Cherry1022%18%5%0.5%
Lemon2515%14%8%1%
Orange608%10.5%1%2%
Bell1503.35%7%12%5%
BAR4001%4.5%14%1%
BAR BAR1,0000.31%3.55%16.65%22.6%
Seven2,8000.04%0.75%7%35%
77710,0000.01%0.05%0.8%15%
No hit050.29%41.66%26.55%8.9%

Probabilities are per spin, in percent, and every column sums to 100 including the miss band. The same table lives in the contract as cumulative thresholds and in the repo's odds oracle; all of them must match or the build fails its checks.

The Pot

5% of every spin accrues to the current UTC day's pot, and every spin, hit or miss, is automatically a ticket weighted by the CHIPS it burned. No purchase, no opt-in. After midnight, one beacon round fixed by the calendar (never by whoever calls the draw) picks the winner, weight-proportionally, and pays the full pot in CHIPS. Spin count buys nothing: weight is burn.

Let It Ride

Yes, at heart it is the oldest bet in the building: an even-money flip, the same shape as red-or-black, except the odds are posted onchain and the edge burns for every holder instead of feeding a pit boss. You stake CHIPS, 48.5% doubles, 51.5% busts, and 3% of the stake burns every flip. The product is the ladder: chain wins and press the whole pile again, x2, x4, x8... seven straight is 128x at 5.5% odds, all posted. The bankroll is structurally solvent because the expected bankroll change per flip is exactly zero:

485,000 x 1.03 = 515,000 x 0.97 = 499,550  (win outflow equals loss inflow)

Max ride is capped at 1% of the free bankroll, so variance cannot drain it. It is a minus-3%-EV bet, priced openly: you are buying variance, the oldest product in the building.

The Casino Hook

$CHIPS trades in a Uniswap v4 pool with the Casino Hook attached: a fixed 3% fee on every swap, both currencies accruing to the Rake. The rate and recipient are constants; the hook has no owner functions, no pause, no upgrade path, and its permissions are frozen into its address at deployment. Every trade pays the Casino, forever, and everyone can see it.

Provably fair: the mathematics

Every random outcome comes from the drand quicknet beacon, a 3-second randomness beacon run by the League of Entropy (about twenty independent operators including Cloudflare, EPFL and Kudelski), and the contract verifies the beacon's BLS signature itself, onchain, through the chain's BLS12-381 precompiles, before a single CHIP moves.

One spin, one possible outcome. A spin pins a beacon round at request. BLS signatures are unique: for quicknet's public key and that round there is exactly one valid signature, and the verifier accepts exactly one canonical encoding of it (wrong lengths, doctored points, and the negated point all fail). The outcome word is keccak256(signature, requestId, player), so no settler, bot, or miner has any freedom: whether the spin hits, what it mints, and the Multiplier are all fixed the moment the spin exists. Settlement merely reveals them.

Nobody can know it in advance. The pinned round publishes at least 12 seconds after the spin is sequenced. Computing its signature early requires either corrupting a threshold coalition of the League of Entropy or forging BLS, and grinding your address or timing does not help: inputs chosen before the signature exists cannot bias a hash of it.

The odds are exactly as posted. Modeling keccak256 as a random oracle, each spin's roll is uniform, independent across spins, and the modulo step deviates from the posted tables by at most

10^6 / 2^128 ≈ 2.9 x 10^-33  (total variation, per spin)

The best Symbols cannot be farmed. With no refunds and outcomes fixed at purchase, every strategy is a stopping rule over independent draws, and stopping rules do not change per-draw odds. Hitting 777 is Binomial in the number of spins: the only way to more jackpots is more spins, each paying its full burn. Settlement is also permissionless: anyone can settle any spin, so the Casino cannot sit on a win.

Check it on any settled spin: fetch the round's signature from any drand mirror, recompute the keccak, walk the tables above, and you land on exactly the outcome that settled. The verifier contract on Blockscout will accept the real signature and reject a doctored one.

Assumptions and risks, stated honestly

The proof stands on stated assumptions, and breaking the game means breaking one of them: a threshold collusion of the League of Entropy (the same trust class as any oracle committee, spread across ~20 organizations, with a public signature history where bias would be visible); the sequencer keeping its clock within 12 seconds of real time (publicly auditable from block timestamps); and the verifier implementation being correct (adapted from drand's own reference, tested against real beacon rounds, audit planned before scale). If the beacon ever halted, pending spins would simply wait: nobody can win unfairly, and there are no refunds, the same as a coin already dropped into a real slot.

The contracts, on Blockscout

Every rule on this page is code at these addresses on Robinhood Chain (chain id 4663). Read the source, call the views, replay any settled spin.