Docs Smart Contracts

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

LimitValue
Minimum bet0.001 BNB
Maximum betDepends 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).

MoonDoom (game)

0x34942821ba5b6B06D7CFFbC9317667480401EC34

View on BscScan ↗

MoonDoomVault (liquidity)

0xC2d56C3E4C1996b4AB8dB33AF77b102b79823602

View on BscScan ↗