X86
X86 is my foray into proper game development—a top-down shooter built with MonoGame, the spiritual successor to XNA. After years of working in web technologies, I wanted to return to systems-level thinking: game loops, frame timing, sprite batching, and the discipline of working without a garbage collector's safety net.
The game features procedurally generated spacecraft, dynamic enemy AI, and boss battles that escalate in complexity. Rather than relying on pre-made assets, the visuals are generated algorithmically—each ship is unique, assembled from parametric rules rather than static sprites.
The weapon system includes standard projectiles, twin-tracking missiles, and fire bombs. There's a rhythm to the combat that I spent considerable time tuning—the feedback loop between player action and enemy response needed to feel responsive but not trivial.
Building in C# with MonoGame stripped away the abstractions I'd grown comfortable with. No React diffing. No browser APIs. Just you, the update loop, and the draw call. It's a different kind of programming, more immediate and more demanding.
Controls: Arrow keys/WASD to move, Space to fire, Q for missiles, M for firebomb.