Updates:

  • Tower Update and Thinking about Art…

    Tower Update:

    I am still working feverishly on the Tower. I finished a task I called “Entity Serialization” on a weekend game jam recently. Let me explain.

    In the Tower (which is the name of the game engine I’m building), an Entity is anything that is rendered to the screen. Back in January, I was able to complete all the code needed to render things, but it’s kind of sloppy and needs to be refactored.

    Refactoring is a process engineers go through to refine the solution to a problem. Some solutions to complex problem will work in a pinch, but need to be added to and moved around before they are in a good enough place to move on and forget about. This work is a lot of refactoring existing, working code.

    At this point, I have the Simulator map working again. This is a simple rendering demo that shows the ship I’ve made, the Zipper, flying through space.

    Each Entity now exists in the code in such a way that I can create them dynamically, using a coding pattern known as a Factory. Maybe I can explain this some time later. It’s also pretty neat.

    Next up:

    Now that my Entities are in a good place, I am working on a database that I will use to store all the data for the game.

    This data will include map information, item stats, character save files, enemy stats, game dialog, and more! I am using sqlite3, a Nosql engine. I chose this because sqlite3 saves each db as a single text file that I can commit with the rest of the game files. This makes the database nothing more than a runtime game asset! This will help me build an editor soon, where I’ll be able to change the position of objects by clicking on them, and then I’ll be able to save the map for next time.

    Right now, the way I made the Simulator map was by hand. I position each wall with an equation. I just space them out, and loop over them all. It’s not a great system, but it works.

    I want to be able to make more interesting levels without having to painstakingly position each object in code. This was how they did it when they made games on the N64, and it’s one of the reasons the games took as long as they did to make (which is still less than Elder Scrolls VI is taking lol!). Game editors, powered by databases are some of the modern advances I’m allowing in my engine.

    I’m starting the database with the configurations needed to run the game. That includes things like the screen resolution, and graphical settings like how many Entities to render. Later this section of the database will also hold things like the input map for the controller and other user preferences.

    When this is finished, I’ll be writing an installer, so that all needed c++ libraries can be installed on your computers, and you can try my game out with me. I’ll be publishing the demo on itch.io, a site where indie game developer share projects.

    Thinking about Art and me…

    I almost named this blog “Not an Artists”. Growing up I labeled myself a “math” kid, and not an artist. I was bad at drawing. I could never capture the forms and figures in a way that I was happy with.

    I worked as a Software Engineer at a web hosting company in the 2010’s. I started in tech support, and I had a lot of time to read while at work. I knew that I wanted to work with computers, and I was interested in code.

    I built a simple game engine in c#, and then another one in c++. I learned how to use Unity, and participated in a Global Game Jam. It was pretty cool. I was able to make a game with a team of artists helping me.

    I started drawing, with a goal to draw daily that I fail at more often than not around this same time. I started to see improvements… I still don’t have the skills that I am looking for, but I’ve realized that the art I am making is not just drawing really well. The code itself is art.

    Flash forward. I’m not working as an engineer any more, and AI is quickly closing that door on me. In a world where there is the Unreal engine, which is free, and the Unity engine, which is free, and the Godot engine, which is free, why would I, an out of work software engineer, choose to willingly make a game engine by hand?

    I have this poster hanging on my wall. It says that programming is art, basically. And, if you can read that signature… that is John Romero, of Romero Games, formerly of ID software! He is one of the makers of the original Doom games, among many other awesome games. He’s a talented artist and engineer, so he would know about this more than me, I think.

    In a world where I could ask an AI bot to generate the code for a game for me, I am choosing to think through it myself. I’ve been working on this project for more than 10 years, learning in my free time, and trying as much as I can when I can. I want to share an idea I have with the world. I’m excited about it. I hope I have what I need to pull it off. I’m closer now than ever before.

    This is my long way of trying to explain what I’m doing here! I’m building a game engine from scratch so that I can tell the many stories I’ve been working on since as long as I can remember.

    Thanks for reading. I hope to have some really exciting updates soon. Stay posted!

  • A first post.

    I have never done this before. Everything I have ever posted before has been on social media. I’ve only ever talked about myself on Facebook, or a little bit on X, back when it was still twitter. I never knew what to say there, and I don’t know what to say here either.

    I have been working on my game project for a long time now. I started in 2013 to really learn in earnest. I worked from 2016 until 2023 as a professional engineer, first as a Quality Engineer, and then as a Software Engineer. While I greatly enjoyed solve such interesting and complex problems, I also wanted to try and use my skills for myself.

    In 2023, I was presented with an opportunity to try nothing but solo development on my game for 6 months, and I took full advantage of that time. I learned how to draw, and I became more comfortable with 3D art and painting. I was ready to really make a go of it.

    I decided to keep working at a retail job to keep the lights on, and to allow myself the bandwidth to keep programming on my game. I am closer than ever now! The engine is started to com together, finally.

    During Global Game Jam in 2025, I was able to get 3D rendering working like a dream. Since then, I have been working on various engine systems, and I’m making more progress every day.

    I was going to wait to publish this site until I had something that people could download and play, but I think I’ll publish it now, so that I can show the progress that I am making here.

    I am hoping that in the next few week, I’ll have a downloadable version of the demo that I made during game jam. I am working on a few final items that need to be worked out, and then I’ll be able to share the project.

    I hope by June to have a game demo publish on Itch.io that people can download and try to play. I’m very excited for what I’ve been working on and I hope to show off more soon!