LIVE GAMES
DEMO STAKESPLAY-MONEY RUSDMAINNET · ARBITRUM ONEPRE-AUDIT
🃏 BLACKJACK — ENHC / S17
Rules: European No-Hole-Card (dealer's hole card genuinely does not exist until the player finishes acting — the property the dispute system leans on), dealer stands on soft 17, blackjack pays 3:2, double on any two cards, split once (split aces receive one card each and auto-stand), no insurance or surrender, infinite continuous shuffle (% 52 with replacement). ENHC natural beats all including doubled/split gross; naturals push each other. The ~0.11% ENHC house-edge increase vs peek is disclosed and priced in.
| OUTCOME | PAYS (ON GROSS AT RISK g) |
|---|---|
| Win | 2g back (1:1) |
| Natural blackjack (single, un-split hand) | 2.5g back (3:2) |
| Push | g refunded |
| Loss | 0 — lost gross to house minus the 1.25% protocol fee |
Current table limit: 3,125 RUSD/hand (bond-limited; see limits derivation). Worst-case hand exposure: 8 × unit stake (split + double both hands, win both), enforced by the ChannelManager. Measured mainnet latency: ~300 ms average per action over WSS.
🎡 ROULETTE — EUROPEAN SINGLE-ZERO
One wheel, 37 pockets (0–36), exact casino payouts. Bets are batched (≤40 per spin), dual-signed before any randomness is exchanged, then a single mutual reveal pair produces the number: keccak(pRev, hRev, sessionSeed, channelId, k) % 37.
| BET TYPE | COVERS | PAYS |
|---|---|---|
| Straight up | 1 number | 35:1 |
| Split | 2 adjacent numbers (incl. 0-splits 0|1, 0|2, 0|3) | 17:1 |
| Street | 3 numbers (row) | 11:1 |
| Corner | 4 numbers | 8:1 |
| Six line | 6 numbers (two rows) | 5:1 |
| Dozen (1st/2nd/3rd) | 12 numbers | 2:1 |
| Column | 12 numbers | 2:1 |
| Red / Black · Odd / Even · 1–18 / 19–36 | 18 numbers | 1:1 |
Per-spin solvency is verified on-chain at bet time (worst-case payout over all 37 numbers + max fee ≤ gross + house balance), and the house node caps worst-case payout at 8 × maxUnitStake — one spin can never risk more house funds than one blackjack hand. Racetrack/neighbours and call bets are available in the UI (Voisins/Tiers/Orphelins as straight-up approximations — disclosed in-app). VRF fallback mode supports straight and outside bets only (the legacy contract has no split/street/six-line types; the UI blocks them with an explanation).
FAIRNESS — HOW TO CHECK IT YOURSELF
- Both games derive every outcome from mutual commit-reveal hash chains fixed at channel open + a Pyth Entropy session seed requested on-chain at open. Neither the player, the house, nor the RAIN foundation can predict or choose an outcome unless the counterparty colludes.
- The SDK verifies every house reveal against the pre-committed chain root in O(1); a bad reveal is on-chain provable and forfeits the cheater.
- Statistical fairness is transparency-only in v1: session logs are verifiable, but there is no on-chain statistical slashing yet. Stated plainly in the accepted risks.
- The honest claim: "neither we nor anyone else can know or choose your next card — and if anyone stops playing, the chain pays you what you're owed." "Fully trustless" would be false and we don't claim it (spec §1.2).
