# Roulette

## Introduction

Celestium Roulette is a fully on-chain implementation of European roulette. Players place bets on where the ball will land on a 37-pocket wheel (numbers 0–36), and the winning pocket is selected by Chainlink VRF — a verifiable random function that produces a number along with a cryptographic proof the contract checks before paying out.

Payouts are settled directly from the dynamic staking pool. This is a **dynamic game** — the pool is the counterparty, not the other players.

## How It Works

1. **Place your bet** — pick one or more bet types from the table below and stake CELT against each.
2. **Wheel spin** — once the round is sealed, the contract requests a random number from Chainlink VRF.
3. **Settlement** — the winning pocket is computed from the VRF result, the contract validates every bet against it, and payouts are transferred to winning Pass NFTs in the same transaction.

## Bet Types and Payouts

European roulette payouts are deterministic and identical across rounds. Pick the row that matches the bet you want to place.

| Bet type                 | Payout | Coverage                               | RTP\* |
| ------------------------ | ------ | -------------------------------------- | ----- |
| Straight (single number) | 35 : 1 | 1 number                               | 97.3% |
| Split                    | 17 : 1 | 2 adjacent numbers                     | 97.3% |
| Row (Street)             | 11 : 1 | 3 numbers in a row                     | 97.3% |
| Top Line                 | 8 : 1  | 0, 1, 2, 3 (four numbers)              | 97.3% |
| Corner                   | 8 : 1  | 4 numbers meeting at a corner          | 97.3% |
| Column (1–3)             | 2 : 1  | 12 numbers in one column               | 97.3% |
| Dozen (1–3)              | 2 : 1  | 12 numbers in one dozen                | 97.3% |
| High–Low                 | 1 : 1  | 1–18 or 19–36                          | 97.3% |
| Even–Odd                 | 1 : 1  | even or odd numbers                    | 97.3% |
| Red–Black                | 1 : 1  | red or black colour                    | 97.3% |
| Hi-zero                  | varies | combined zero coverage with high range | 97.3% |
| Lo-zero                  | varies | combined zero coverage with low range  | 97.3% |

\* RTP (Return to Player) is **97.3%** across all bet types — the mathematical edge is the same single zero (1/37 = 2.7%), funded by the protocol from the dynamic staking pool. This 2.7% revenue is what funds dynamic stakers in the long run.

### Bet type details

<details>

<summary>Straight (0–36)</summary>

A bet on a single number, including zero. **Payout 35 : 1** — a winning straight bet returns 36× the stake (35 in profit + 1 stake). Coverage is exactly one pocket out of 37.

<figure><img src="/files/zAIWcOSLpU8qoCnTQFjk" alt=""><figcaption><p>Straight bet — single number coverage including 0</p></figcaption></figure>

</details>

<details>

<summary>Split</summary>

A bet on two numbers that share an edge on the betting table. **Payout 17 : 1**. Coverage is 2 of 37 pockets.

<figure><img src="/files/qvSsPJvoSga5PHqmX3Z5" alt=""><figcaption><p>Split bet — two adjacent numbers</p></figcaption></figure>

</details>

<details>

<summary>Row (Street)</summary>

A bet on three numbers in a single horizontal row of the table (for example 1-2-3 or 4-5-6). **Payout 11 : 1**. Coverage is 3 of 37 pockets.

<figure><img src="/files/QJg5DvqcKvEBHNhVEk5V" alt=""><figcaption><p>Row bet — three numbers in a horizontal row</p></figcaption></figure>

</details>

<details>

<summary>Top Line</summary>

A bet covering 0, 1, 2, and 3 — the only four-number bet on the European wheel. **Payout 8 : 1**. Coverage is 4 of 37 pockets.

<figure><img src="/files/OJ8a94LLXmvWsgLZntZD" alt=""><figcaption><p>Top Line bet — 0, 1, 2, 3</p></figcaption></figure>

</details>

<details>

<summary>Corner</summary>

A bet on four numbers that meet at a single corner of the betting table (for example 1-2-4-5). **Payout 8 : 1**. Coverage is 4 of 37 pockets.

<figure><img src="/files/1OcKgbXpE9U5CLxlDZnb" alt=""><figcaption><p>Corner bet — four numbers meeting at a corner</p></figcaption></figure>

</details>

<details>

<summary>Column (1–3)</summary>

A bet on one of the three vertical columns of the betting table (1, 4, 7, …, 34 or 2, 5, 8, …, 35 or 3, 6, 9, …, 36). **Payout 2 : 1**. Coverage is 12 of 37 pockets — zero is excluded.

<figure><img src="/files/LHpF312ABBIpWa7urbuu" alt=""><figcaption><p>Column bet — one of the three 12-number columns</p></figcaption></figure>

</details>

<details>

<summary>Dozen (1–3)</summary>

A bet on one of three 12-number groups: 1–12, 13–24, or 25–36. **Payout 2 : 1**. Coverage is 12 of 37 pockets — zero is excluded.

<figure><img src="/files/qwkJuSDleTmbJyld1Wea" alt=""><figcaption><p>Dozen bet — 1–12, 13–24, or 25–36</p></figcaption></figure>

</details>

<details>

<summary>High–Low</summary>

A bet on whether the result will be in the **low** half (1–18) or the **high** half (19–36). **Payout 1 : 1**. Coverage is 18 of 37 pockets — zero loses both sides.

<figure><img src="/files/7lcASTr6lNKuu7wX6DMR" alt=""><figcaption><p>High–Low — low half (1–18) vs high half (19–36)</p></figcaption></figure>

</details>

<details>

<summary>Even–Odd</summary>

A bet on whether the winning number is even or odd. **Payout 1 : 1**. Coverage is 18 of 37 pockets — zero loses both sides.

<figure><img src="/files/dg063qMDbLeHuUYDMNFy" alt=""><figcaption><p>Even–Odd bet — even or odd numbers, zero excluded</p></figcaption></figure>

</details>

<details>

<summary>Red–Black</summary>

A bet on whether the winning pocket is red or black. **Payout 1 : 1**. Coverage is 18 of 37 pockets — zero is green and loses both sides.

<figure><img src="/files/MLV5KWpF30CEueUfjJrd" alt=""><figcaption><p>Red–Black colour bet — zero is green</p></figcaption></figure>

</details>

<details>

<summary>Hi-zero</summary>

A combination bet that pairs the high range with zero coverage, hedging against the most common edge case. Effective payout is computed from the underlying coverage; see the contract for the precise multiplier on the round you are betting in.

<figure><img src="/files/FJcjF0Ptmvnuhux0JeAr" alt=""><figcaption><p>Hi-zero — high range combined with zero coverage</p></figcaption></figure>

</details>

<details>

<summary>Lo-zero</summary>

The mirror of Hi-zero — pairs the low range with zero coverage. Effective payout is computed from the underlying coverage; see the contract for the precise multiplier on the round you are betting in.

<figure><img src="/files/AUIOM4Cy51zXKdDBgAqf" alt=""><figcaption><p>Lo-zero — low range combined with zero coverage</p></figcaption></figure>

</details>

## Fairness

Every spin's random number is generated by Chainlink VRF and accompanied by a cryptographic proof. The roulette contract validates the proof on-chain before applying the result, so no party — not the operator, not the validator, not Chainlink — can substitute a different number. See [Random Number Generation](/dexgames/proof-of-fairness/random-number-generation.md) for the full flow.

## Strategy

* **Bankroll management** matters more than bet selection. The 2.7% house edge applies equally to every bet type; what changes is variance.
* Combining low-payout (Red-Black, Even-Odd) and high-payout (Straight, Split) bets is a personal preference, not a mathematical advantage.
* See [General Strategy](/dexgames/games-strategies/general-strategy.md) for the protocol-level guidance on responsible play.

## Remember

Celestium Roulette is **dynamic** — the dynamic staking pool is the counterparty to every bet. You are not playing against other users; you are playing against the pool's balance. See [Conservative vs Dynamic Games](/dexgames/games-terms/conservative-vs-dynamic-games.md) for the full distinction.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.celestium.digital/dexgames/games-guide/roulette.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
