So this is a pretty crappy gif but it represents a bit of a breakthrough:
I’ve implemented very basic turn-based combat and very simple AI, both of which use the pathfinding algorithm I’ve been working on. I’ve also switched from 2d to 2.5d. That is, I’m using 2d sprites in a 3d environment with an isometric/orthograhpic camera, and I’ve switched from using the XY plane to using XZ. I’m pretty sure I’m going to stick with this setup going forward, but there are many pros and cons to each option.
In any case, I’m feeling comfortable enough with C# and Unity that I think I can start working toward making an actual game. My goal is to make an isometric city builder with turn-based tactical combat. Those are my two favorite game genres, and I think they could go together really well. Some of my favorite city builders, like SimCity, Cities Skylines and Banished have no combat. And some of my favorite turn-based combat games, like Final Fantasy Tactics, Jeanne d’Arc, Front Mission 4 and even Xcom EU/EW/2 have amazing combat, but everything between the battles has always felt like perfunctory busy-work to me.
And since I’m brand new to game development and only have the vaguest idea of what I’m doing, why not take on what I consider to be a longstanding flaw in video games! No, I’ve been a programmer for long enough to know that it’s a bad idea to take on such a large project while learning a new language and a new system. I should be trying something easier. However, two things. One, I can’t learn new concepts in the abstract–I have to get my hands dirty. Two, in order to stay interested, I have to go for a project I can really engage in.
There’s a very good chance I will hit a brick wall eventually and not finish this game. But even if that happens, I’ll have learned a lot by the time I get there.