Expected value is fixed at deploy time and immutable: v1 pools ship at EV = 0.85, meaning a bet with stake
B returns 0.85 × B in expectation (a 15% house edge). No owner or operator key can retune the odds of a live pool.A bet’s life
- Place — you call
placeStrike,placeRange, orplaceLadderwith your USDG stake, aclientSeed, and the current epoch’sexpectedCommitId. The pool escrows your stake and reserves the maximum payout against the bankroll. - Settle — entropy is derived from the epoch’s committed server seed plus your
clientSeedandbetId. Settlement is trustless: either a ZK proof of the entropy (settleWithProof) or the revealed seed after the epoch closes. No key can assert an outcome. See Provably fair. - Claim — winners call
claim/claimWithProofand pick USDG (paid from bankroll cash) or CHANCE (the full payout is spent buying CHANCE on the V4 pool, delivered to your wallet). See Claiming.
Bankroll and staking
The bankroll is staker capital. Everything that limits a bet — max stake, max liability, the effective payout multiplier — is derived fromavailableBankroll(), the pool’s free USDG after reserved liabilities and pending claims. When the house wins, proceeds (minus a 1% protocol fee on house-win amounts) flow to stakers; when a player nets a profit, the loss is socialized across staker positions. Details in Staking.
What’s in this section
- Bet modes — Strike, Range, and Ladder payout shapes
- Bet constraints — every gate a place call must pass
- Provably fair — the commit–reveal design and how to verify
- Contract methods — the player-path call surface
- Events — logs for indexing and debugging