Tech Dev Blog #8: You might be eaten by a Grue.

By @ 12/26/12 in techblog

Well, it’s Christmas/Solstice/Festivus/etc, and I don’t mind admitting I’ve had a few convivial beverages, so it’s time to talk about the editing tools we’ve developed for Township.

Picture, if you will, a perfect game development world. One in which tools are enormous, powerful, database-driven, and quickly export everything from an advanced GUI into the game data required to procedurally generate an isometric world. Are you imagining that? Great.

Well, we don’t have one of those. In fact we’ve been so busy making the game engine that trying to make any tools to edit the dozen odd XML files that drive our game wasn’t much of an option. At least, not making a serious GUI editor.

So what did we do? I mean, even just doing lookups between the numerous tables (objects, recipes, buildingmaterials, resources, etc) would mean the difference between staring at helpful information about a lady in the red dress and… XML files full of numbers pointing to other XML files.

The Matrix Code

So what did I do? Well, I did what any self-respecting nerd would do: I made a text-based, command-driven editing / parsing / viewing tool written in python – and wasted less than four hours doing so. Want to load an XML file? Easy. Want to do a dictionary lookup? Easy.

This is the result:

TownShip Editor

In a few minutes I can code fairly complicated lookups – simple ways to search, filter or sanitise the information going in. And editing isn’t too difficult either:

TownShip Editing

Anyway, that’s all we have for now – a description of our editing suite – so feel free to go back to avoiding eggnog and hoping Uncle Horace breaks open the good Scotch BEFORE telling you his story about the time he met the Duke of Wankchester at his gallery opening up in Newcastle – for the fifteenth time. In fact, you know what really annoys me about hearing stories repeated for the fiftieth time?

Oh, wait – you’ve heard this one? Sorry.

Merry Christmas, everyone!



Comments are closed.