I'm a researcher and game developer focused on procedural content generation and dynamic difficulty adjustment. I build tools that make AI techniques more accessible to game developers. I also make YouTube videos about game development and algorithm visualization.
adjust.h
A single-header C99 library for hot-reloading hardcoded parameters at runtime. Useful for tweaking values without recompiling.
go-test
A Go implementation of try.
Ponos
A tool for building Markov Decision Processes that assemble video game levels for dynamic difficulty adjustment.
GDM · TypeScript version
A library for formulating MDPs as graphs, with implementations of policy iteration and other solving methods.
GDM-Editor
A visual editor for GDM graphs.
| C99 | C++ | TypeScript | Rust |
|---|---|---|---|
| Wordle | Snake | Sisyphus's Dungeon | Connect 4 |
| Tic-Tac-Toe | Pong | Recformer | Pong |
| Snake | DungeonGrams | ||
| Pong | Rock Paper Scissors |
| C99 | C++ | TypeScript |
|---|---|---|
| A*, BFS, & DFS | Hilbert Curves | Quad Tree |
| Game of Life | Doom Fire |