Puzzles  ·  Heather Cafe

A growing set of logic puzzles,
one hint engine under all of them.

Logic puzzles on square and hexagonal grids, with a new game joining the collection regularly. Generated by mystify, an active research project: every level it ships is proven to have exactly one solution. And every hint comes from Demystify, an open-source solver running in your browser the whole time you play — if you're stuck, it works out the next deduction on the spot and shows you why.

Beta

8 games

Ready to play: each has a tutorial, a solver-grounded hint, and enough levels to stay for. Still beta — nothing here is polished, and we would like to hear what breaks.

1 2
Mauve
Two-colour Light Up. Place red and blue bulbs so every cell is lit by both — without two same-colour bulbs in sight.
Square 2-colour Akari-like
Duotone
Two-colour hex grid where no three same-colour hexes sit in a line, along any direction.
Hex 2-colour Binairo-like
Trichrome
Three colours on a square grid: never three the same in a row, with each colour appearing equally often in every row and column.
Square 3-colour Binairo-like
Oil & Water
An aquarium puzzle where connected tanks fill bottom-up with water, oil, and air.
Square Cages Aquarium-like
Gamut
Colour-mixing Light Up on a hex grid. Place R/G/B bulbs so every target is lit just right.
Hex 3-colour Akari-like
4 2 2 5
Allotments
Divide the grid into numbered rectangles — each number sets its rectangle's area.
Square Regions Shikaku-like
4 2 2 1 1 3 1
Patchwork
Tile the grid with coloured patches — each holds one clue, a number sets its area, and no two same-colour patches may touch.
Square Regions 4-colour Shikaku-like
Campfire
Pitch a tent beside every tree, and warm each numbered fire with the right count of surrounding tents.
Square Counting Tents-like

Alpha

5 games

Playable, and the hint works, but each is missing something — usually the tutorial. Dive in if you already like this kind of puzzle.

Bloomsweeper
Deduce which herb hides in each cell from the neighbour-count clues around revealed ones.
Square Counting Minesweeper-like
3 2
Sashes
Allotments on a hex grid: numbered clues anchor ribbon-shaped regions that each hold one clue.
Hex Regions Shikaku-like
Permutation
Place pieces on a hex grid — beams fire in six directions. Never let a piece cross another's colour.
Hex Drag Combination-like
Rivers
Numbered heights on a hex grid, with springs, sinkholes, and rivers flowing downhill across the landscape.
Hex Counting Original
Munro
Assign heights to hexes with peaks, valleys, and flats, so neighbouring tiles rise or fall by exactly one level.
Hex Counting Original

The dumping ground

2 games

Tiny demos and failed experiments — sometimes a game doesn't work out! Kept here because they are more interesting to look at than to hide.

Poly-Pic
Arrange coloured polyomino pieces on the board to match the hidden picture, revealed cell by cell.
Square Drag Polyomino-like
Celestial
Two suns and a moon in every row, column and region — and none of them may touch, even diagonally.
Square Regions Star Battle-like

From the archive

1 game

Combination came first, years before mystify — but its levels were generated too, by an earlier constraint-based system (Jefferson, Moncur & Petrie, SAC 2011). It was released on the iPhone and has long since vanished from the App Store; this is a modernised web version, playable again. The rest of the collection grew out of it.

It is the one game here with no Where? or Why? button. Those are driven by demystify, which explains a move by naming the clues that force it — and many Combination levels can be solved several ways, with interchangeable colours swapped throughout. Nothing is forced, so there is nothing honest to point at. The puzzles are unchanged; you are simply on your own.

Combination
Drag attack pieces onto a grid so no piece is hit by a beam of a different colour. The later levels are very hard. They are all uniquely solvable, but we don't claim it's reasonable!
Square Drag Original

Levels by mystify

Once a puzzle's rules are written in Essence, our constraint language, mystify does the rest: it generates levels, holds them to whatever “quality” means for that puzzle — no unneeded clues, no lucky guesses, no degenerate layouts — and sorts them by difficulty, each with exactly one solution and no problem-specific code. Different puzzles want different measures, and that is the point: the rules and the standards are both just constraints.

The GUIs here are built with the help of Claude Code; my research is puzzle design, not GUIs. More puzzles and more types are on the way.

Built with Demystify

The hints here aren't scripted. Demystify, an open-source solver that explains pen-and-paper puzzle deductions, is compiled to WebAssembly and runs in your browser the whole time you play. Press Where? or Why? and it solves your current board on the spot, finding the smallest set of clues that force the next step — the hint button isn't a workaround, it's the whole point.