Smart Contracts
The game runs on two on-chain contracts on BNB Smart Chain: the game contract (MoonDoom) and the vault (MoonDoomVault), which holds the liquidity that backs your payouts.
Game contract (MoonDoom)
The game contract handles everything you do as a player: it accepts your BNB when you place a bet (TICK or TOK), records the round result using the Pyth BTC/USD price feed, and sends you your winnings when you claim.
What you do on-chain
- Place a bet: You send BNB and choose TICK (price up) or TOK (price down) for a round. The app calls the contract for you.
- Claim winnings: After a round ends, if you won (or pushed), you must click Claim in the app. The contract then sends your payout (stake × 1.9 for a win, or your stake back for a push) to your wallet.
Bet limits
| Limit | Value |
|---|---|
| Minimum bet | 0.001 BNB |
| Maximum bet | Depends on vault liquidity (shown in the app) |
Vault (MoonDoomVault)
The vault holds the house’s BNB liquidity that backs your payouts. Players cannot stake or deposit into the vault — liquidity is provided by the team. When you win, your payout is paid from the game contract (backed by this vault). When you lose, your stake is sent to the vault. You never interact with the vault directly; the game contract does that in the background.
Contract addresses
You can verify the contracts and transactions on BscScan. The app uses these addresses on BSC Mainnet (Chain ID 56).