State Of The Union

Well, well, well… I just had one hell of a month! I mean, everything was firing on all cylinders. Most of the free time I had, whether it be on the train, or at home after the family went to sleep, was spent doing some sort of work. And if you look at the number of posts I had last month, you can see how it directly ties into how productive I was.

So what happened, you ask? Simple… Destiny: Rise of Iron.

It came out on September 20th, and I knew that I wanted to put my all into that game. Single player story, exotic quests, a little PVP, and ultimately normal/heroic raids. Going in, I knew what it was. I wasn’t going to be able to do much at all, while I put my all into the game that I knew would be my last for a while.

Staying true to my intentions, around the time I finished all activities, leaving me not much of anything else to do, I decided to shelve it. I mean, I would have shelved it until the Spring 2017 update anyway, but I knew what I was going to end up spending my time on.

It’s been one hell of a run. I ended up prototyping the following:

  • State Machine

  • Pathfinding for player controlled units

  • Unit Turn Order (including UI)

  • Map Scrolling with WASD keys and mouse

  • Unit Tests

  • Added SFX and dynamic music

I have more than achieved the goals I set in the November State of the Union. I couldn’t be happier. However, I want to keep this going. Already for today’s updated, I done the following:

Github Integration

The picture of the day is meant for this part of today’s update. I have, for far too long, avoided this. Why, I have no idea. I’m a software engineer. This is what I do on the daily basis. I fully understand the importance of source control. And yet, here we are 🙂

Well, before getting distracted by SFX and music, I had said that this was going to be easy, and easy, it was. Since I’m used to working in Unix environments, I made sure that my GIT client had a bash interface I could use, so I could do all GIT related things in there. No fancy windows explorer plugins or the like for me.

As of now, the repository is public, but empty. I’ll push up my prototype branch either later tonight, or tomorrow. I’ll most likely make the repo private, which will cost like $7 a month or something. There’s nothing too secret about what I’m doing, but better to do it now while I’m already doing everything else…

…Speaking of which…

Trello

…Yep, got started with Trello as well, because, why the hell not. For those not in the know, this is software used to track bugs, issues, features, etc. for projects. I’ve not put too much effort into it, but at the very least, it’ll be a nice visual guide for me as I try to keep track of all the things I’m working on. I’ll continue to iterate on how I use it, and I’m sure at some point, I’ll be ready to get a job as a project manager 🙂

What’s On The Agenda This Month

  • Refactor the hell out of the code, and get it out of “prototype” spaghetti mess into something I would be proud to show others

  • Integrate some cheap unity assets for units (possibly tiles as well), and try to get some animations with said cheap unity assets for units

  • Implement actions players can take during their turns. Right now, you can just move. That’s not so much fun anymore. You need to be able to “Attack”, “Defend”, use an ability, item, etc.

  • Enemy AI. I’m not going all Skynet or anything, but I need the very basics at first, where they just try to go and attack whatever is closest to them. Then I’ll start implementing a priority list system, sort of like the Gambit System from Final Fantasy XII. Imagine if the enemy is a healer. They could have something like the following as an AI list:

    • Resurrect closest ally

    • Cast heal on self if HP < 40%

    • Cast heal on ally if HP < 40%

    • Attack nearest enemy

Expanding on the AI a bit, it just goes down this list until it hits something it can act on. Pretty simple. Actually, Dragon Age: Origins used a similar system. I know it well, because I had to tweak it to make sure that party members would use their custom abilities the base game didn’t know about.

Of course, I didn’t write the underlying engine, but I know how it should work. So yeah, I think I’ll roll with what I know, until told otherwise.

Anyway, If I can get these items done, I’ll feel pretty good. I’d like to think December will be like November, but I don’t want to get ahead of myself. Although, I will be on stay-cation starting 12/15 until the rest of the year, but I don’t want to get too excited. Here’s hoping.

Till tomorrow…