For a long time I have dreamed of making games or a game engine in which the world is a dynamic, living simulation, where NPCs have lives within that simulation, and where the stories and interactions that come up with those NPCs are fully grounded within the terms of the simulation.

It took a long time for me to manage a prototype of this idea that was small enough in scope that I could actually implement it, instead of getting lost in abstractions that never actually led to something playable. A linux version of this project can be played here:

It is implemented purely using software graphics in X11, since that seemed like the easiest way to prototype. When I was working in Vulkan I kept trying to work out how to copy block images around, and it got to the point where hardware acceleration was just making my life harder, when what I really wanted was a pixel-perfect 2D game. Engine development has been pretty smooth since I switched, and I look forward to adding a Windows backend as well. I also made all of the graphics myself; my art isn't that great, but I am finding the style and art-direction aspects of it fun.

I still want to take this idea somewhere – hell, I quit my job to make it – but I am finding AI technology very cumbersome, which puts a big strain on how rapidly I can iterate the underlying game itself. The end result is a very undeveloped game experience, and a very limited AI at the same time, the worst of both worlds. :( To deal with this, I am trying to pick really small game ideas that build off of a single piece of technology at a time, so that I can slowly accumulate a game engine that could make the bigger/more holistic simulations later on.

I mainly have three ideas for smaller projects:

  1. a pikmin/gadgebot RTS that uses my current AI tech to make something more interactive,
  2. a party management game about running an outpost, blending survival and colony management, to work on making the NPCs more interactive, or
  3. a large-scale simulation with a much coarser granularity – buildings become a single unit of abstraction, and cluster directly into villages and cities that can trade or go to war. Could have God-mode gameplay or even RTS gameplay.