Alongside my game projects, I'm interested in digging deeper into some of the technical foundations behind games and simulations.

These are areas I'm currently experimenting with. Some will become standalone projects, while others will find their way into my games.


C / C++


Game AI


Simulation


Optimisation


Data Analysis


Why This?

I've spent a lot of time working on conventional web and backend software, so I'm particularly interested in problems where the computer is doing something computationally interesting.

Roadmap

Current priority

Continue developing Legends of Rahnok and complete the core-feature port to Godot 4.

The technical experiments below support this work

Status Project Technical focus GamePasta output
Current Godot Terrain Procedural terrain, noise, terrain generation Terrain article + mini game + terrain tech demo
Current C Text RPG C, data structures, game architecture Terminal dungeon crawler
Future Simulation Godot, systems, components, decisions Tavern simulation game, Rahnok NPCs
Future Simulation emergent behaviour Faction system Legends of Rahnok
Future Pathfinding C, Graphs, BFS, Dijkstra, A* Pac-Man-style experiment + pathfinding article
Future Procedural Generation Godot, graph rewrite algorithm Dungeon exploration game, Legends of Rahnok
Future Dynamic Worlds Mutable terrain, dynamic pathfinding Digging / destructible-world experiment
Future Dynamic Worlds Obstacle placement, NPC memory Rahnok feature / article
Future 2D Physics C, Raylib, vectors, physics, collision Physics article + Flappy Bird clone
Future Physics & Gravity Forces, gravity, integration, simulation Asteroids / Spacewar / Lunar Lander experiment
Future Game AI Game trees, minimax, agents Tic-Tac-Toe / turn-based AI experiment
Future Simulation Cellular automata, emergent behaviour Conway's Game of Life experiment
Future Ballistics Projectile motion, trajectory solving artillery game, 3D bow physics into Legends of Rahnok
Future Autonomous Agents Steering, Seek, Arrive, Pursuit, waypoints Racing / agent behaviour experiment
Future Raycasting C, Raylib, spatial computation, rendering Small raycast dungeon

Current Projects

C Text RPG

Goal: Build a small text-based RPG from scratch in C, using the project to learn C fundamentals and implement my own data structures. Later, add a Raylib frontend and publish it on my website.


Godot Terrain

Goal: Build a re usable terrain generation resource in Godot for use in Legends of Rahnok, Write an article / tutorial about how I implemented it. Build a tech demo showcasing the terrain and deploy it to github page, publish a stand alone mini game featuring terrain.


Learning goals

C Programming


Game AI

Relevant resources:
Artificial Intelligence for Games — Ian Millington & John Funge
CS50 — Introduction to Artificial Intelligence

Search

Movement


Simulation

Relevant resources:
Artificial Intelligence for Games — Ian Millington & John Funge
Numerical Methods in Scientific Computing — TU Delft

Particles

Physics

Performance


Python & Data Analysis

Relevant resource:
University of Helsinki — Data Analysis with Python Link

Data Analysis with Python

SQL


Operations Research & Optimisation

Resources

Books

Courses

data sets

Tools

The eventual goal is to develop a useful combination of skills,

And, most importantly, build interesting things along the way.