The game editor is coming along fine. I gutted the first version and started over with a clear idea of what I wanted to achieve. My focus is now on being able to create a game scenario.
A game scenario would include all customisable elements of the game such as terrain, races, equipment, classes etc. As a start I am going to use the data from Angband to get some content into the scenario. My hope is that once I’ve got Angband set up as a scenario that I will have a good feel of what it takes to create a custom scenario.
The game editor has the added benefit of having me think more about the engine design. Originally I had the concept of a TerrainObject and this object was hard-coded within the engine. Not really ideal if you want to have multiple scenarios that could have different terrain types. The editor now caters for this allowing me to specify the composition of a certain terrain type and its texture (or image).
Of course the logic for handling different terrain types now needs to be removed from the engine and passed on to the scenario. This is where I see some form of scripting requirement emerge whereby a scenario designer can script what happens when an actor bumps into a closed door terrain for example. The engine would expose functionality to allow the script to change a closed door terrain object into an open door terrain object. (well that’s the theory anyway)
Now all I need is more time to code so that I can actually implement all of this.