This week, refactoring and rearchitecting has been the order of the day.
Coming back around to Dungeon’s Fortune, I have been away from the design long enough to be able to make meaningful adjustments to the architecture so that it is a more well-ordered machine. Boundaries between subsystems are being forged, which will allow design and development to proceed in a more sane fashion, and allow more reuse of components between projects. Also, having strong boundaries opens up the possibility of allowing customization of the game.
One component that was totally scrapped and re-written was the encounter scripting system. The new incarnation is cheekily called VardoScript, and its main improvements include eliminating reliance on code generation, and improved handling of script timing and parallelization. This new incarnation also supports serializing the entire state of the scripting machine, which will be handy when writing games for suspend-and-resume platforms.
As I write this, Dungeon’s Fortune is being upgraded to Unity 4, mainly to gain some of the code organization features that have been added. I’ll probably take a look at some of the DirectX 11 support. Hopefully texture arrays are there, I could really use that for the voxel engine.