Game Editor Features & Ideas
I'm using Nordenfelt's level editor quite often these days. It's just a special mode built into the game. There you can place enemies, create layers, set properties, etc. - the usual stuff. Everything needed is given but there are always new features which would boost the game creation process. When I'm looking at tools like Visual Studio, Blender or Gimp I see many features suitable for game editors. Nordenfelt's editor won't get them anymore because it's feature-freezed. But coming editors will have more and better features.
This article is about features and ideas I want for editors in future projects.
What Game Editors Should Have
The following features are quite natural. Editors won't be considered sophisticated without them.
- Drag & Drop: The mouse is the most intuitive input device I can think of. It maps your hand right into the editor. Drag & drop is a massive boost regarding development time. Leave it out and your editor feels like 1993.
- Publicly Available: Gamers and modders like creating stuff themselves. Therefore it is wise to write your inhouse editor for bundling it with the game. This improves its quality and allows the modding community to play around with your game (engine). Player-generated content extends your core game and word of mouth increases.
- Undo: Without an undo function you have to be very careful in every action you take. Undo isn't just for correcting mistakes. It's a main feature for newbies learning how to use your editor.
- Tags: While working in a huge environment like a bunch of source code files or a large level tagging is very helpful for navigation. Otherwise you have to browse through the same stuff over and over again.
- Plugins: IMHO vital software has to be extensible. Plugins are just the best way for adapting programs to your needs.
Advanced and Exotic Features
I'm curious if there are editors having any of the following features:
- Task List: Like IDEs list errors or warnings game editors could tell you when a level boss is missing, show you empty areas, render a difficulty graph, give hints about dominant weapon configurations, etc. Task lists give a good feeling when they melt.
- Optimization: This can be data baking, automatic texture atlasing, algorithm selection (e.g. for network data compression), CPU/memory/network balancing, etc. Many of these optimizations rely on profiling data which can be collected automatically during playtests. The editor has to apply the optimizations without human interaction where possible.
- Procedural Prototyping: Building levels from scratch becomes obsolete with this feature. Just let the editor generate a prototype from a handful of settings and adapt it to your liking. Further the prototypes could be rated so that the (genetic) algorithm gets a better idea what's good and what's waste.
- Deploy: When you download a game it's usually one file, an installer or an archive. Why assembling the files of your game manually? Configure the editor's deploy step and let it create the downloadable for you.
- Online Statistics: Social browser games do this all the time. So why don't generate statistics while your testers play and drop them into an online database? The editor can use this data to show you where people quit playing, die a lot or what's their favourite weapon.
- Visual Profiling: It would be nice if frame rate, memory consumption or network load could be inspected within the editor. This way blaming parts of the game which ruin the performance gets easier. That's not the newest idea but a good one.
- Edit & Continue: Play the game, pause it, adapt properties on the fly, rewind some seconds and continue the play test. A wet dream.
Why Just Another Editor?
Some of you may argue that writing your own editor is a waste of time. There are many solutions out there already.
Well, it depends on the game you wanna make. If it follows a worn out formula (where FPS is king) there will be some good editors for you. Otherwise it won't be that easy to find a tool providing all the necessary features. So adapting given software to your needs will be inevitable. Or you can write it yourself.
Cheers,
Thomas

Comments
A caveat, though. I recommend not bothering with an editor unless the game is proven in concept to be both fun and commercially viable (unless you're not full-timing it and have other sources of income, and are just game developing as a hobby) as coming up with an engine can suck precious time out of a project that may or may not fly.
I know several developers that spent months perfecting an editor only to have no one use it and the game flop, where they could have published the game without and saved themselves the tears and lost production time.
Making the game first and improving its editor afterwards is a good idea. It's just hard to decide when to stop coding the editor. Finally it's all about amortization which sometimes is hard to calculate in advance.
RSS feed for comments to this post.