Docs
How it works
European roulette on Solana. Every bet is settled by a program on-chain, every spin uses verifiable randomness, and the players who lose end up owning the house.
This is real money. Bets are in USDC and losses are permanent. The house has a 2.70% edge, so over time players lose. Only play with what you can afford to lose, and read the terms and the risks first.
Quick start
- Open Play and connect a Solana wallet (Phantom, Backpack, Solflare…). It needs a little SOL for network fees and the USDC you want to play with.
- Deposit USDC into your seat. The balance sits in the program's player pool, under your wallet; withdraw it any time.
- Pick a chip, click the table to place bets, then Spin.
Keys: Space spin, U undo, D double, C clear, R rebet, A all in, 1–6 chip size.
The game
A single-zero European wheel: 37 pockets, 0 plus 1–36. Every bet pays as if zero didn't exist, which gives the house its edge of 2.70% (1 in 37) on every bet type. That edge is how the house, and through CHIP its stakers, make money: in the long run the house wins.
| Bet | Covers | Pays |
|---|---|---|
| Straight | one number | 35:1 |
| Split | two neighbours | 17:1 |
| Street | a row of three | 11:1 |
| Trio | 0 with 1-2 or 2-3 | 11:1 |
| Corner | four numbers | 8:1 |
| First four | 0, 1, 2, 3 | 8:1 |
| Six line | two rows | 5:1 |
| Column / dozen | twelve numbers | 2:1 |
| Red, black, odd, even, 1–18, 19–36 | eighteen numbers | 1:1 |
You can place up to 16 bets per spin. Your stake is locked when you spin and released when it settles.
Fair spins
When you spin, the program asks MagicBlock's verifiable random function (VRF) for a random number. The oracle answers with a value and a cryptographic proof, and the proof is checked on-chain before the number is accepted. Nobody can pick the number: not the oracle, not the house, not you.
The winning pocket is derived from that number by a fixed public formula, and anyone can settle the spin. Each result has a verify link to the spin's transactions on the Solana explorer, including the proof.
If the randomness never arrives, the spin can be refunded after about 20 minutes. Once randomness is stored, it can only settle. The oracle can't choose a result, but it could in theory withhold one; a withheld spin is refunded, never lost.
Table limit
The largest amount a single spin can win is 5% of the house's free money (money not already set aside for other spins). It grows as the house grows. The slip shows your spin's max win next to the current limit, and a spin over the limit can't be placed.
The payout queue
Every spin sets aside its maximum possible win before the ball drops, from money the house already holds, so every win is paid in full the moment it settles. If the house can't back a bet it is refused, never queued. The program also has a payout-queue mode for deployments that choose it; this one doesn't use it.
CHIP
Every dollar you lose on a spin earns you CHIP, the house's ownership token. CHIP builds up in your account; claim it to your wallet whenever you like. There is no team allocation and no presale: all CHIP comes from play.
The rate steps down as the house's all-time profit grows and never goes back up, so early players earn the most.
For now CHIP can only be staked, not transferred, so it can’t be bought or sold.
CHIP is not an investment. It carries no rights beyond staking, no promise of value, and its only source of yield is a casino's profit, which can be zero. The operator can change the economics through timelocked parameters (see below).
Staking
Stake CHIP on the Stake page to earn USDC from the house's profit. Rewards come only from new all-time highs: when the house is below its previous high, profit first refills the vault.
Each dollar of profit above the high is split:
- 10% to the operator;
- of the rest, stakers get 1% while the vault is under $5,000, and 95% once it's above (that is 0.9% and 85.5% of the whole);
- whatever is left stays in the vault, so the table limit keeps growing.
Rewards are shared in proportion to stake. Nothing is paid while winners are in the payout queue; it catches up once the queue clears. There's no lockup: unstake and claim any time.
Fees
There's no fee on wins: the zero is the house's only edge. You pay Solana's network fees and a 0.0005 SOL randomness fee per spin, so very small bets are mostly fees.
The operator
What the operator (the admin key) can and can't do is enforced by the program, not by policy:
- Can't touch your money. Player balances and staker rewards sit in pools the admin has no instruction to move. Withdrawals work even while betting is paused.
- Can pause betting at once (an emergency brake). Settling, refunds, withdrawals and unstaking keep working.
- Can change the economics (table limit, fees up to 10%, the staker split, the operator cut up to 25%, the mint schedule only downwards) after a 24 hours timelock. Every proposal is public on-chain the moment it's made, so you can leave before it applies.
- Can withdraw its own treasury cut once earned, and its own principal after the same timelock, only from free money and never while winners are queued.
- Holds the upgrade key. The programs are upgradeable. Whoever controls the upgrade authority could deploy new code, which is the one power nothing on-chain limits. See Risks for the current custody of that key.
Settings
The gear in the header holds the theme (Paper, Riso, Space, Medieval, Vegas, Spooky), sound, vibration, and the cinematic all-in: the spotlight and heartbeat when you bet (nearly) everything on one spin. It only plays for stakes of $1 or more, and you can turn it off.
FAQ
Why does a spin take a few seconds? It waits for the randomness to arrive on-chain, usually a second or two.
What if I close the tab mid-spin? Nothing is lost. The spin settles on its own (anyone can settle it) and your balance updates.
Can the house refuse to pay? No. A win is paid from money set aside before the spin. Nobody can move player balances.
Where is my money? Your balance sits in the program's player pool, separate from the house. Withdraw it to your wallet any time.
Is this real money? Yes. Deposits are USDC on Solana mainnet, and what you lose is gone. See Terms.
Risks
Read this before you deposit.
- No independent audit. The programs were reviewed by their author and tested extensively, but no third-party security firm has audited them. A bug could lose funds. The internal review is published in the repository as
docs/AUDIT.md. - Upgradeable programs. The upgrade authority can change the code. Until it is held by a multisig or burned, you are trusting the person who holds that key.
- Third-party randomness. Spins depend on MagicBlock's oracle being online. If it stops, spins are refunded after the timeout; no new results can be produced until it returns.
- You will lose money over time. The house edge is 2.70% on every bet. Nothing about CHIP changes that for the bettor.
- CHIP can be worth nothing. Its only yield is a share of house profit above the all-time high, which may never come. The operator can lower staker terms after the timelock.
- Your wallet, your keys. We never hold your keys. Lose them and the balance under them is unreachable.
- Law. Online gambling is restricted or illegal in many places. It is your responsibility to know whether you may play where you are.