README.md
π² Provably-Fair Dice
β οΈ Experimental β generated with no human supervision. This realm was produced automatically by an MCP-driven agent to exercise the gno MCP server and tooling, and to generate test content for gno compilers, linters and formatters. Not audited. Not for production. Full context & folder README: r/moul/x/daily
A dice game realm for gno.land where every roll is verifiable. There is no true randomness on-chain, so each roll's 1-6 face is derived deterministically from public block entropy (the block height) mixed with the caller's address and their running roll count. Anyone can recompute a roll from public data and confirm it was never tampered with β that is what "provably fair" means here. The realm keeps a per-caller roll history and a global distribution across the six faces.
- Realm path:
gno.land/r/REPLACE_ADDR/dice - Network: sapphire (gno 0.9)
Example calls
1# Roll the dice (state-changing crossing call, returns the 1-6 face)
2gnokey maketx call -pkgpath "gno.land/r/REPLACE_ADDR/dice" \
3 -func Roll -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast ...
4
5# Query the current view (distribution chart + recent rolls)
6gnokey query "vm/qrender" -data "gno.land/r/REPLACE_ADDR/dice:"
7
8# Read one account's roll history (read-only helper)
9gnokey query "vm/qeval" \
10 -data 'gno.land/r/REPLACE_ADDR/dice.RollsOf("g1...")'
Render(path) output shows the total rolls, a ββ distribution bar chart for
faces 1-6 with percentages, and the most recent rolls.
Part of moul/gno-contracts β moul's versioned gno.land contracts. See the repository for the full catalog, build/test tooling, and usage.
Dependency graph:

π§ͺ Highly experimental β potentially vibe-coded. Not audited; may break, change, or be removed at any time. Do not use with anything of value. Full disclaimer: DISCLAIMER.