Saturday, August 27, 2011

Return to Gruedorf

The gruedorf site was down for like a week and without a timer to nag me I simply didn't care to update this thing. But that's all in the past.

Updates or not, plenty of progress has went down. In short summary the current build of the game lets 4 players connect together using a simple gui, walk around the map in a turn-based fashion, and chat.

That was completed weeks ago. More recently I have been churning out technical documentation for the battle system's mechanics and designing how the main game plays out. More recently I took ikaDB out of the attic, ripped out its dependencies on iked (since ika in general is now dead), renamed it to GameDB (I need a better name), and have begun to spruce it up a bit for this project.

The first improvement I've made is caching the GUI for models. More specifically: wxpython (or possibly the database itself) is really slow at generating the GUI for each model, so I added caching the generated model GUIs at start up so the interface is much snappier now. Unfortunately I couldn't make it cache modal pop-ups for add/editing sub-models due to how wx works, but those are used less frequently and they cache after the first instance so it's not too bad.

Next up is revising the GUI for its new standalone format, fixing up the bugs I encountered while working on Hydration 2, and trying to speed up the underlying DB access (presently it's too slow to use in real-time, you basically have to load the entire thing into your game at start-up, and that takes a few seconds. I hate this and want to fix it. I'm not sure of the underlying cause yet.) I'm toying with the idea of a public release of GameDB since it would be useful for virtually any game written in Python, but there's a lot of nasty gunk in it I'd want cleaned up before a public release.