Gone 2 Grandma's
In developmentA mobile card game with nine- or eighteen-hole courses, changing grid rules, hidden information, attacks, powers, and low-score wins.
At a glance
- Outcome: Runs low-score card games versus a computer across changing grids, using hidden information, positional pairs, locked cards, wilds, obstructions, attacks and three once-per-match powers.
- Status: Implements the offline MVP in pure Dart and Flutter. Standard and Dealer’s Choice eighteen-hole courses, local save and resume, deterministic replay, fair-information AI, semantic labels, large-text layouts, widget tests, golden images and automated gates are complete.
- Role: Solo.
- Stack & libraries: Uses Flutter/Dart for iOS/Android with a headless pure-Dart core, Nix toolchain and CI-pinned Flutter version.
- Source: Private. KnownBetter Studios publishes the suite Gone 2 Grandma’s; the repository uses Grandma’s Games and calls its first game Golf at Grandma’s, working title Dealer’s Choice Golf.
- Limitations: Playtesting is 0 of 6–8 people. A signed release installed, launched and rendered the home screen on a physical iPhone SE; debug integration passed save/resume and complete-hole smoke, but release gameplay, VoiceOver and Android-device checks remain open, leaving accessibility evidence limited to widget tests and goldens. Only eighteen-hole runs are selectable, though nine-hole content/tests/simulation exist; the offline single-player MVP excludes online multiplayer.
Game rules
Changes grids, information, replacement rules, turn pressure and scoring hazards between holes while retaining the lowest cumulative score as the objective. Equal ranks cancel only when orthogonally adjacent. Bigger holes intentionally allow larger disclosed swings; attacks usually affect a card, row or column that remains pairable. Dealer’s Choice lets the loser select the next hole from a seeded shortlist of three.
Hole packages
Defines each hole as a complete ruleset, not a modifier bundle; no hole ID appears in the engine or app. A finite registry accepts exactly eight effect types, five event-card identities and three power effects. Load validation checks deck capacity, peeks against hidden cells, position overlap, effect-card matches and duplicate gameplay signatures, so new holes require data instead of code.
Match state and AI
Advances immutable matches through four commands: begin a hole, route its command, advance the match and commit a Dealer’s Choice pick. Saves keep and replay the seed and command log instead of trusting derived state, rejecting disagreement with stored state; the same interface supports crash recovery, reproducible bug reports and AI simulation.
Built the written specification and headless engine before widgets. Exhaustive scoring resolves interacting adjacency, wilds and multipliers; a greedy solver cannot. The opponent uses only player-visible information.