Maxwell Cadman Melbourne
← Selected work

App Store review · Android testing

Riverboat Zilch

Push-your-luck dice done as a polished modern classic. Keep the scorers, build the pot, and decide when to bank — solo against distinct rivals, around one phone, or on connected tables for two to six players.

The Riverboat Zilch title screen Riverboat Zilch gameplay: six dice on felt with Roll and Bank buttons
Role
Design, engineering, online service and release — independent, end to end
Surfaces
iOS 15+ · Android 8+ · Online tables
Status
App Store review · Android closed testing
Stack
Unity 6 · C# · Server-authoritative multiplayer · Android AAB · iOS TestFlight

01

The design problem

A familiar game has nowhere to hide.

Everyone who plays a 10,000-style dice game already knows the rules, so the product cannot win on novelty. It has to win on feel, fairness and the quality of the table — and any scoring mistake is immediately obvious to the player.

Scoring you can trust

Every combination — ones, fives, triples, straights and specials — resolves deterministically, and the in-game rules screen lets a player check any result against the dice they kept.

Rivals worth meeting

Four AI regulars with distinct risk appetites turn the solo voyage into a series of opponents rather than a string of score targets.

Tension in the hand

Flick, settle, select, bank. The whole interface exists to make one question — stop or roll again — feel physical.

Fair by construction

Cosmetic dice and felts never affect odds, and connected tables use preset reactions instead of free-form chat.

02

Engineering and release

Exhaustively verified, then made to survive a bad connection.

Because the scoring rules are finite, they can be proven rather than sampled. Every possible roll of six dice — all 46,656 of them — is evaluated against the scoring table in test, so a scoring regression cannot reach a build.

Exhaustive scoring tests

All 46,656 six-dice outcomes are verified against the expected scoring result, making the rules engine provably correct rather than spot-checked.

Server-authoritative online

Match state lives on the service, not the client. A dropped connection reconnects into the same match instead of forfeiting it.

Recoverable guest profiles

Online play needs no account: a pseudonymous installation identity carries ratings and history, stored as a hash rather than personal data.

Offline is the default

Career, Quick Match, Daily Roll and Pass & Play all run with no connection and no account at all.

Unity 6C#Server-authoritative stateWebsockets Exhaustive rule testsAndroid AABiOS TestFlight
Riverboat Zilch key art: ivory dice on green felt inside a brass riverboat table

Verified delivery

Production-ready, with store release in progress.

46,656dice outcomes verified in test
11river ports in the career
2–6players on connected tables
Freecosmetic-only, no paid advantage

Production builds and store submissions are complete. The iOS release is waiting for App Store review and the Android release remains in closed testing; the figures above describe product scope rather than estimated audience or revenue.

iOSWaiting for App Store review
AndroidClosed testing