Kaspa Forge
Documentation · Arena Dice · Public mainnet beta

Provably fair Dice on Kaspa

KaspaForge Dice combines two committed seeds into one verifiable 16-bit roll. Your Desk wallet signs locally, Kaspa L1 covenants constrain the money, and the interface shows a result only after it can verify the settlement evidence.

KaspaForge Dice lobby banner showing house and player seeds committed before one verified roll
Quick answer. Choose 5, 10 or 15 KAS and a 2×, 5× or 10× payout. The house commitment exists first; your browser creates a fresh player seed and commitment; JOIN fixes it; PLAYER_REVEAL opens it; settlement reveals the house seed and pays the covenant-defined outputs. No verified settlement means no displayed roll.

Current rooms, chances and fees

Gross payoutWin thresholdDisplayed chanceWinner service fee
32,112 / 65,53648.9990%0.90% of gross payout
12,845 / 65,53619.5999%0.90% of gross payout
10×6,422 / 65,5369.7992%0.90% of gross payout

Each mode is published at 5, 10 and 15 KAS. A winning 5 KAS bet therefore returns 9.91 KAS at 2×, 24.775 KAS at 5× or 49.55 KAS at 10× after the 0.90% winner service fee. The combined probability and fee produce an effective house edge of about 2.88–2.89%, depending on the threshold. Network fees are separate, dynamic and shown by Desk before signing.

One roll in four on-chain stages

  1. Room. The house funds a single-use Room UTXO with the stake-specific reserve, rules and house seed commitment.
  2. JOIN. Your browser selects wallet inputs, creates fresh randomness, verifies the exact room and signs locally. JOIN fixes your commitment and creates the first Game state.
  3. PLAYER_REVEAL. Desk signs the reveal that matches your earlier commitment. The UI keeps the roll hidden until Kaspa L1 evidence shows the reveal state.
  4. Settlement. The house reveals its precommitted seed. Both seeds plus the game identity derive the 16-bit roll; the covenant pays the exact branch, and Desk verifies the receipt before animation.

What you can verify

The result drawer and All settled rolls expose the game ID, commitments, both revealed seeds, threshold, outcome, Room/JOIN/reveal/settlement transaction IDs and exact returned amount. Selecting VERIFY reconstructs the result from the archived evidence instead of trusting a cached label.

The honest beta boundary

Settled rolls are independently verifiable; relay availability is operator-trusted. KaspaForge runs the house and the current reveal relay through its own Kaspa nodes. The public beta does not claim protection against the operator withholding settlement. If PLAYER_REVEAL does not win the L1 race, the timeout branch returns the exact player stake and no random result is shown. This is an availability limitation, not permission to alter a settled roll.

Before you play

  1. Keep enough available Desk balance for the selected stake plus wallet preparation and network fees.
  2. Read the exact return and fee on the confirmation screen.
  3. Do not close the tab while JOIN or PLAYER_REVEAL is being signed or observed.
  4. After settlement, open Verify roll or the shared history and inspect the linked transactions.
Real KAS, beta software. Start with the smallest published stake, keep your encrypted Desk backup current and never enter your Desk password anywhere except the KaspaForge Desk origin.

Open Dice Arena architecture Read the launch story