I missed my weekly update last week because I didn’t have much to talk about. Sometimes that’s just how development goes. A feature, or series of features, can end up taking longer than anticipated. In order to keep these posts semi-intereting, I’m going to stick to this approach. If I don’t have anything of significance to report, I’ll skip a week. I’m still aiming to post weekly though.
Completed this week…
+ NPC (non-player character) placement in the level editor
So, what caused the issue last week? Well, its my level editor. I’m 100% convinced that building a level editor for this game is the right approach. I also know that I want it to be visually appealing (or at least tidy), easy to use, and also fun to create levels in. The last one may surprise you but if I’m going to spend hours and hours building levels with this tool, the process needs to be enjoyable. As a result, building the level editor is extremely important.
You may recall that last week I added NPC’s to my engine, along with a data structure to support them. Much of my time in the last few weeks has been spent thinking through the interface for authoring this in the level editor. I have finally managed to program the functionality for NPC placement but it has been painfully slow. Each time I add a feature I need to design the appearance, program the functionality to display it on screen, add the models for saving to a database, extend my xml generation script (for producing the level data that’s served to the game), and extend my level parsing to allow the loading of levels within the editor. I’m sure you get the point, its a lot of work for very little immediate benefit.
Compounding this work is the fact that some of these concepts are experimental (until I know how well they work in the game). I also have lots of outstanding features that are not yet in my engine. As a result, I’m going to change tack slightly this week. Rather than iterating the level editor along with the game, I’m going to park the level editor (for a few weeks) and focus on creating a handful of levels in the game. I’ll still be writing the data structure to support them but I can compose them directly in a local plist.
This will allow me to shift my focus back to game features. I need to see how well the game plays across a number of levels. I can also test some of the concepts I have in mind for quest structure, story, character persistence, and level progression.
So that’s my new goal. A 5 level mini-story to demo the features of the game. I can come back to the level editor once the concepts are more entrenched in the game engine (and proven to work).
I am interested in how other developers handle the creation of a level editor at the same time as a game. Do you create the level editor first, iterate throughout game development, or leave it to the end? If you have any insights, I’d love to hear them in the comments.
I’ll leave you with another tile piece. More to come soon.