I've always wanted to have a tool to quickly prototype various grid-based puzzle games like Crosswords, Sudoku, Hashiwokakero, etc. Sure, pen-and-paper can get you pretty far, and we used it extensively for our last Ludum Dare entry Skyland, but it is a bit clunky to share when your playtesters are located remotely.
After looking at many examples of such games (krazydad has been an amazing resource), I think they all use a very similar vocabulary:
- A grid of fixed size (but possibly with irregular shape)
- A fixed set cell types (with numbers, symbols, lines)
- On-the-border or around-the-border hint system (using numbers or colors)
- Solution can be fully expressed on the grid as a static snapshot (unlike many videogames like Sokoban or Snakebird where you need to record a sequence of actions)
So I decided to build the Grid Game Toolkit, a framework for building such games with the following goals:
- Adding new games should be easy with minimal programming skills (e.g. with scripting or Rust trait implementation)
- Should work well both on desktops and on touch-based devices (I really want it to work on my Android-based e-reader)
- Can import puzzles from major providers like crossword newsletters and sites like https://www.nonograms.org/ as well as from PDF-based sources
- Have built-in puzzle editor with a programmatic solution finder
It's a perfect opportunity to learn Rust better, so I will be using Bevy game engine that worked well for our previous game jam.
The MVP will support Japanese Crosswords, Sudoku and one more puzzle type. I hope this will be diverse enough to expose important design decisions, but also small enough to implement over the winter holidays.
If you want to stay in the loop, I will be posting regular development updates on Mastodon and will be using this blog for longer posts.
Till the next time!