Jump to content


Pro's and Con's: Having Your Editor Be Embedded In Your Game


17 replies to this topic

#1 eddie

    Senior Member

  • Members
  • PipPipPipPip
  • 751 posts

Posted 22 February 2007 - 06:23 AM

Hey guys.

I'm just curious to get some brainstorming here:

What are the benefits of having your game *be* the editor? i.e., you can start it up one way as your game, another (via command line parameter, ostensibly) to start it as your editor.

Or does it make no sense?

Just curious. I'm personally going with having a separate editor from the game, but I'm not sure if that will forbade me from doing something else (running my game from within the editor, perhaps?).

No rush, just looking for some opinions. ;)

#2 Batman

    New Member

  • Members
  • Pip
  • 9 posts

Posted 22 February 2007 - 07:06 AM

It's all about the tools. Making the Unreal3 engine while incredibly difficult is certainly not beyond a talented team. Creating the tools and workflow is where I feel Unreal3 really comes into it's own.

#3 eddie

    Senior Member

  • Members
  • PipPipPipPip
  • 751 posts

Posted 22 February 2007 - 07:08 AM

Umm.. OK? :) So are you for or against having the editor being part of the game executable? :)

#4 Batman

    New Member

  • Members
  • Pip
  • 9 posts

Posted 22 February 2007 - 07:16 AM

No I am all for it, once you have the ability to exclude it from games. I would recommend that if you feel you are in over your head with an editor. Investigate other established editors.

Deled, Grome, SILO3D (cheap modelling package)

Others escape me at the momment but they all come with good SDK's. So if you are not in a position to put tools in place. You could put other tools in place, the one thing I really really hated about torque was the art workflow, just one too many steps. Try and keep the art steps to a minimum. I always love to see Create Something... then export, then load in game.

Having your editor ingame will eliminate that, but editors can be incredibly tough to complete, so just be aware there are alternatives.

#5 eddie

    Senior Member

  • Members
  • PipPipPipPip
  • 751 posts

Posted 22 February 2007 - 07:19 AM

Right. I'm pretty set on building my own editor -- it's a learning exercise, more than a "I-can-build-something-better-than-what's-out-there".

I'm just curious as to the benefits of having the editor build *into* the final game. My approach is to use shared libraries and have different front-ends for the editor and game. Just curious if there's a compelling reason to have them be one in the same.

#6 geon

    Senior Member

  • Members
  • PipPipPipPip
  • 812 posts

Posted 22 February 2007 - 09:39 AM

I can see how havingthe editor built into the game can be useful. Especially when tweaking things.

The ultimate solution (in my eyes), would be to be able to hit a key when playing the game to pause all simulations and game logic, and switch to the editor mode.

That way, when you (or the level designer) discover something in the game that needs tweaking, you can fix it immediately.

#7 Alex

    Valued Member

  • Members
  • PipPipPip
  • 152 posts

Posted 22 February 2007 - 11:36 AM

Why not use a plugin architecture and create the editor and the game as a plugin each. That way you can load the components you currently need for editing/playing or both/neither.

This is if you mean editor, not modeller (so you edit game specific aspects, not actual meshes etc). I'd not try and create an ingame modeller. Artists like to stick to the tools they know. On the othert hand it'd be nice to be able to fire up the game/editor from the modeller with a single keypress.

Alex

#8 Jare

    Valued Member

  • Members
  • PipPipPip
  • 247 posts

Posted 22 February 2007 - 11:57 AM

The obvious con is the extra size and recompilation effort every time a change is made to the (now larger) codebase. Someone makes a change in the editor, the ppl working on gameplay need to recompile; someone makes an AI change, the ppl working on the editor need to recompile. With good project and source management practices this may not have a big impact, but it is important to consider.

The obvious pro is that an integrated editor can easily use a larger amount of the game's codebase to perform tasks, interact or present information. Entity definitions, pathfinding and AI routines, sound, even the gameplay interface for testing a level's "feel" as you edit.

#9 TheNut

    Senior Member

  • Moderators
  • 1401 posts
  • LocationThornhill, ON

Posted 22 February 2007 - 12:30 PM

Having a separate editor allows you to:
1) Standardize the editor's interface and functionality, and thus improving productivity
2) Reuse the editor for multiple projects
3) Is a light-weight application for designers
4) By decoupling from the game code, you reduce the lines of code in your game, keeping it cleaner and reducing the number of potential defects.

The important key here is that your use your engine to make your editor. You could even use your engine for the interface, which would probably be easier than using owner drawn MFC controls *shutter*. While setting up your environment you can have a game window or game viewport in your editor to monitor the results in real-time. If you wanted to test the results for a specific object you created, you can play with it by toggling an editor/play mode. Play mode will temporarily alter the state of all objects in your viewport, but will reset all object states once you go back into editing mode.
http://www.nutty.ca - Being a nut has its advantages.

#10 SmokingRope

    Valued Member

  • Members
  • PipPipPip
  • 210 posts

Posted 22 February 2007 - 11:02 PM

I remember having all sorts of fun with the Excitebike level editor in the days of NES. The complexity of the excitebike level editor compared to a full blown 3d map editor illustrates a large contrast in appeal though.

Having the editor built into the game can be a real bonus if it's something the player would enjoy using. On the other hand if your players get wrapped up in trying to figure out the level editor too early they might not actually spend time playing the game you've put all that effort into making.

#11 eddie

    Senior Member

  • Members
  • PipPipPipPip
  • 751 posts

Posted 22 February 2007 - 11:10 PM

I suppose that's true: if you have a console game and you're able to embed aspects of the editor into it, that's a huge bonus.

I personally don't understand the appeal of having it in a PC title, where you'll be forced to have all sorts of if(bIsInEditor) runtime checks, myself.

#12 SmokingRope

    Valued Member

  • Members
  • PipPipPip
  • 210 posts

Posted 23 February 2007 - 02:36 AM

There's one key advantage I see from having the editor embedded in the game (from the development standpoint) and that is for doing balancing/tweaking. Things like extruding a ledge a few units to make a jump easier, or to decrease the damage on your super-weapons can be tedious to do when you have to reload the map, restart the program or even recompile.

What if instead you thought in terms of:
"Pro's and Con's: Having your game be embedded in your editor"

The game would utilize an engine interface which can be interchanged between the editor and a normal game UI.

#13 ray648

    Member

  • Members
  • PipPip
  • 42 posts

Posted 23 February 2007 - 03:01 PM

Look at what games have done so far for this.

Games with build in editor:
- various strategy games
- trackmania
- stunt driver (anyone remember this? it makes me feel old)
- puzzle type games
- tony hawk

Games with separate editor:
- all first person shooters
- other games requiring a complex 3d environment

I conclude that 2d games or ones requiring a 3d level built by placing sections onto a map should probably have the editor built into the game. On the other hand, any game requiring a complex 3d level which will probably take quite a while to make should have a separate editor.

Also you may want to consider what else people will want to do at the same time. Building a level for a first person shooter takes ages if done well and I for one would probably want to be sat on some sort of instant messaging program at the same time and probably want to have access to a web browser to look for inspiration. These things are a lot harder when running a full screen program.

#14 Reedbeta

    DevMaster Staff

  • Administrators
  • 4782 posts
  • LocationBellevue, WA

Posted 23 February 2007 - 03:44 PM

ray648 said:

Games with separate editor:
- all first person shooters
- other games requiring a complex 3d environment

Doesn't CryEngine have a built-in editor? Or am I making that up?
reedbeta.com - developer blog, OpenGL demos, and other projects

#15 dave_

    Senior Member

  • Members
  • PipPipPipPip
  • 584 posts

Posted 23 February 2007 - 04:11 PM

Reedbeta said:

Doesn't CryEngine have a built-in editor? Or am I making that up?
You can play the game from the editor in the case of farcry.

#16 bignobody

    Valued Member

  • Members
  • PipPipPip
  • 155 posts

Posted 23 February 2007 - 04:50 PM

I went the "built-in" route with Shlongg, mostly because I was lazy and didn't want to write a seperate app (and the levels are fairly simple). I left it in the retail version, so if players want to make their own levels they can.

At one point, I thought I might want to have an external editor as well, so I began some code to allow it to receive "editor commands" through windows messages. Never did take it all the way though. Once the internal editor was enough to make the levels, I didn't bother doing a "prettier" external version.
-bignobody
notsoftgames.com - Creator of Shlongg!

#17 .oisyn

    DevMaster Staff

  • Moderators
  • 1810 posts

Posted 25 February 2007 - 03:07 AM

What we're doing is not having an actual in-game editor, but allowing in-game editing via a seperate tool. The only code needed on the gameside is a module that communicates with the editor and is able to change the state of the world (to create and alter objects, lights, pathway splines, etc.).
C++ addict
-
Currently working on: the 3D engine for Tomb Raider.

#18 anubis

    Senior Member

  • Members
  • PipPipPipPip
  • 2225 posts

Posted 06 March 2007 - 08:36 PM

I think the most obvious advantage is really that the user gets the abillity to create his or her own content. Spore comes to mind here. Of course there always have been mods but they have been mostly created by die hard fans and not the average gamer. Not so with the games like The Movies or the upcoming spore, where it is sort of the point of the game to create your own content. People are less likely to edit the game world if they have to leave it. It simply breaks the connection with the game.

From a technical standpoint you could say that everything that gets created procedurally by the engine can easily also be edited inside the engine/game. And it makes sense too, I think, to be able to tweak/deform a patch of terrain for example from inside the game.

To wrap it up... I think in game edditing can be very interesting from a game design perspective as well as a game development perspective. Allthough from a purely game development point of view I can clearly see the cons that have been mentioned in the thread.
If Prolog is the answer, what is the question ?





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users