All projects

Games · Tech demo

Mallard

A Unity prototype that grows its world from an aperiodic 'hat' tiling, built around flying a flock of migrating ducks south for the winter.

A stylised low-poly farm at golden hour, with a windmill, barns and silos, a plane overhead, and a flock of ducks flying past a hand-drawn MALLARD title card

Migratory birds have always struck me as strangely disciplined for wild animals: the V formation, the way they trade the lead, the total commitment to a place none of them has ever seen. This prototype is my attempt to turn that fascination into a game: you take charge of a flock of ducks and fly them south before the season turns.

Growing a world out of one tile

Instead of hand-placing the landscape or generating it from noise, the world here grows from a single aperiodic monotile, the “hat” described in the research paper by D. Smith, J. S. Myers, C. S. Kaplan and C. G. Strauss. A depth-first search walks a hexagonal grid outward from a starting cell, checking each neighbour against the hat’s own rules and backtracking whenever it paints itself into a corner. The result is written out to a CSV file and read back into Unity, where the placeholder tiles get replaced with terrain, trees and meadows.

The point of going aperiodic is that the ground never quite repeats, so players can’t pattern-match their way across it the way they can on a plain hex grid. The tiling also clusters naturally into larger “metatiles,” which is where hand-built things like a city block or a length of road get to sit inside the chaotic landscape without looking out of place.

From hex grid to flyover

The same October 2023 build produced a short highlight clip: the generator filling in the hex grid from above, then a cut to a first-person flythrough of the finished forest with the flock flying low between the trees, ending on a hand-drawn “MALLARD” title card. None of that flythrough camera or title flow survived into the current build. The generator is what’s left. Still, it’s proof the pieces worked together at least once.

Generation, flyover, title card, all from the same October 2023 prototype.

Where it stands

Right now this is a world generator with a duck-shaped ambition rather than a finished game: the flock is still static, with no pitch control and only rudimentary yaw, and none of the survival systems (stamina, hunger, hazards) exist yet. What’s there is the part I found hardest and most interesting to build: a tiled plane that fills itself in front of you, one legal tile at a time.

The same tiling mid-generation, with unfilled hexagonal cells still visible around the growing patch of coloured tiles
Mid-generation: the depth-first search fills the grid one legal tile at a time, backtracking whenever it paints itself into a corner.
A hexagonal plane tiled with the aperiodic 'hat' monotile, each tile orientation shown in a different colour, spreading outward as the generator fills the grid
The aperiodic “hat” tiling in full swing. No two neighbourhoods line up the same way twice.

More projects

Games · Submitted

Hollow

A pumpkin-carving toy built in Rive for the Rive Halloween Challenge: shave, gouge and saw into a pumpkin with real wall thickness, then light the tea light inside and see what you actually carved.

Read more

Games · Submitted

Séance

A candlelit talking board built in Rive for the Rive Halloween Challenge. Rest your hand on the glass and ask who's there. A girl called Mimi answers, until the glass spells NOT MIMI.

Read more

Games · Submitted

Knock Knock

A trick-or-treat game built in Rive for the Rive Halloween Challenge: check every visitor at the peephole against tonight's photos, and only open the door for the real children.

Read more