Procedurally generated score sheets for roll-and-write dice games. Every seed produces a unique, balanced sheet with randomized areas, scoring, and bonus connections.
Each turn, the active player rolls 6 dice and picks up to 3 to use on their sheet — but every die they skip goes onto the "silver platter" for all other players to pick from. So everyone is engaged on every turn, not just their own.
Your sheet has 5 colored areas, each with its own puzzle: some want ascending numbers, some alternating odd/even, some need two dice that sum to a target. Fill cells to score points, and chain bonuses across areas for big swings.
Foxes reward balanced play — each fox you collect multiplies your lowest area score, so neglecting any one color will drag your total down.
The app enforces all the rules automatically and includes a full How to Play reference. A good score is around 200–250 points; over 300 is excellent.
- Seeded generation — share a seed and everyone gets the exact same sheet
- 8 area types — threshold, ascending, descending, weighted, simple sum, odd/even, target grid, column grid
- 5 random colors per game — picked from 8 available, each with fixed rules
- Balance system — budget-aware scoring keeps all areas competitively viable
- Bonus cascades — interconnected bonuses across areas create chain reactions
- Built-in rules — full "How to Play" guide covering rounds, dice selection, silver platter, two-dice mechanics, and scoring
- PWA — installable, works offline
- Zero dependencies — single HTML file, inline CSS/JS, no build step
Open generator.html in any browser, or visit the live version.
- New — generate a random sheet
- Seed — enter a specific seed for a reproducible sheet
- Share — copy a link that reproduces your exact sheet
- How to Play — opens a comprehensive rules reference
- Tap cells to fill them in; the app enforces all area constraints automatically
No build step. Open generator.html directly or serve with any HTTP server:
python3 -m http.server 8000After changes, bump the CACHE version in sw.js so the service worker picks up updates.
MIT