Okay, so first, I’ve missed the rather arbitrary deadline I set for myself on Why Am I Dead. The reason could be summed up pretty well in this XKCD comic:
Earlier, I just wanted to have something — anything — done in Actionscript. For that, a week was plenty of time. But now that I’ve gotten something (anything) done in Actionscript, the programmer in me wants to make everything general, elegant, and reusable; and that takes more time. For instance, the non-procedural content in Why Am I Dead is 90% dialogue trees; so I thought why not program things so I can simply write all of the dialogue into text files and parse them into Actionscript objects to handle my dialogues? If I get it right that would mean I could create, for the most part, an entirely different game without touching the code. I could hand it off to a non-programmer and have them write their own stuff.
Alright, so it might be a bit overzealous of me to try and use data-driven programming on something this abstract, but I want to try it anyway. A 100% modeling of the data is impossible; I won’t be able to account for everything. But actually, I’m almost done as it is. And that’s a major step in completing this game.
But I’ve been doing other things as well. Part of the delay with WAID is that I’ve also been trying to piece my website together, and tie up a few loose ends on a past project. That past project is “Mandate”, a senior integrative project that I finished last month.
To sum it up really quickly, Mandate is a historical simulation that takes place in ancient China. It’s a multi-agent system, meaning that there are lots of AI-driven characters running around independent of any central rules, making decisions that impact the simulation’s strategy. In addition, it makes use of fuzzy logic to try and emulate the internal politics of the factions at that time.
You can find it available to download here. Be warned, though, this is not an exercise in commercial game design or UI design; it is first and foremost an academic project. So its visuals are quite rough and its interface may not be clear to those who are not already familiar with it.
And that’s what I’ve been up to recently! Now that I’ve tied all of that stuff up, I can concentrate a bit more on Flash.