Personal project / Simulation

Mathematical Game Lab

I built three separate games to make mathematical rules something you can play with. Each one exposes its calculations, so you can inspect why an agent moves, why a route fails, or why a capture counts.

GodotC#GDScript.NET

Three playable desktop prototypes

Geometry Predators running with polygon organisms, Voronoi territories, and a live inspection panel
Geometry Predators — screenshot from the running prototype.

Signal Ghosts: act on an estimate

Autonomous hunters infer positions from noisy, delayed sound. A Bayesian grid updates their beliefs; navigation and interception use those estimates. The player can inspect prior, likelihood, and posterior layers while the simulation runs.

Chrono Loom: cooperate with your past

Plan timed routes through a 20-second loop, then replay up to three past selves. Piecewise-linear trajectories, speed and energy limits, and swept collision checks decide whether a plan works. A timeline lets you pause and inspect the exact point of failure.

Geometry Predators: make the boundary matter

Control a polygon in an ecosystem of hunters and prey. Voronoi cells show territory, convex hulls fit a boundary around nearby prey, and visibility-graph paths route around obstacles. A capture requires full polygon containment rather than a simple overlap.

Keep the simulation testable

The C# games separate simulation rules from Godot rendering. Geometry Predators shares its geometry routines with headless checks. The repository records deterministic checks for probability normalization, interpolation, collisions, containment, and navigation.