Back in the saddle again

The past is a foreign country; they do things differently there. Also, the code you wrote there doesn’t make any sense and is a confusing mess.

It’s always a bit daunting to ease back into development on a project after a long absence, and I’ve been getting my bearings in the code that I laid down last summer and fall. I think I’m almost back up to speed — I guess I’m not as terrible at organizing a code base as I could be, or I would have been a lot more frustrated.

My priority is to release a playable alpha for feedback ASAP, which means getting a bunch of subsystems working and then producing the content for the first section of the game. One of the first things I need to do is to work on the event and quest subsystems, so that particular consequences can be triggered upon the completion of certain criteria. For example, killing all the enemies in a room will cause a door to unlock. In the case of the game’s prologue (aboard the ship), you will need to talk to everyone on board in order to trigger the cut scene which starts the main plot of the game. Getting to that point in baby steps, I spent some time shaping these new subsystems and implemented dialog for non-present characters along the way. In this example, our hero gets paged by the captain over the intercom:

Next up, I need a way to encode these events and quests into the map (or elsewhere in the guts of the game). I have some ideas I’ll try tomorrow.

Mostly working keyboard control

No video update because things look exactly the same as before, but I finally got around to implementing keyboard control. This will make things a lot easier for me to work on the game on my laptop when I’m traveling (as I am now), and will in principal allow alpha testers and other curious parties to try out the game without needing a PC-style XBox controller. I can’t tell you how obnoxious you look to a stranger sitting next to you on a plane when you pull out an XBox controller from beneath the seat. That embarrassment is now behind me!