Members - Reputation: 354
Posted 13 March 2012 - 09:35 PM
I'm in the process of writing a new game, and I'd (finally) like to build an editor for this one.
For all of my previous projects, I've either (a) Hardcoded or (b) used XML to define the level structure *without* an editor in place. It got to the point where It would take around a week to write a single level. So this time, I've wizened up a little bit and I've decided to write a simple editor, nothing fancy.
I'd like to use XML to represent the levels, so I'd like something along those lines please.
I already have classes for buttons and menus, as well as event handlers and everything else that's (probably) needed to build an editor. But I'm stuck on how to implement it. Should the editor be a "state"? should it be another God entity? how is it designed? How do I let objects write to the XML buffer in an ordered way? How do I load levels?... (I'm sure you guys get the idea)
I've searched, and I haven't found a lot of tutorials that cover this topic. So, how should an editor be designed and implemented?
a WIP 2d game engine: https://code.google.com/p/modulusengine/
English is not my first language, so do feel free to correct me
Members - Reputation: 230
Posted 14 March 2012 - 02:00 AM
<a class="popularitybtn" href="http://www.indiedb.com/groups/gpi-gameprogit" title="View GPI - gameprog.it on Indie DB"><img src="http://button.indiedb.com/popularity/medium/groups/10573.png" alt="GPI - gameprog.it"></a>
Crossbones+ - Reputation: 2417
Posted 14 March 2012 - 02:37 AM
Might I suggest to also look in ready to go editors? Are you doing 2D?
It got to the point where It would take around a week to write a single level. So this time, I've wizened up a little bit and I've decided to write a simple editor, nothing fancy.
Can I suggest to consider either Mappy or GLEED2D?
If you're doing 3D, any chance you can consider some proper DCC tool like Blender?
A lesson I learned the hard way: there's never enough time to proper develop the editor. Let alone a useful, flexible and maintainable plugin system.