Is it possible to write a level editor along with your game?

Hello all, I’m new here. I’ve been following Unity for a while now and the recent release of the free version got me really excited!

One thing I want to know is in Unity, can you supply the end users with a level editor customized by you, so that players can create their own levels with this tool? This is not a full-blown editor like Unity, but a simple straightforward editor that is more domain-specific.

Suppose I have a tile based isometric strategy RPG, the general features of the kind of editor I’m looking at are:

Basic level editing: Tile-based map editing to the effect of LEGO
Basic art asset editing: Switch/Import character models/skins/SFX etc.
Game data editing: game mechanics number crunching, character Stats, etc.
Scripting: Cut-scene, dialog, simple battle AI, Playing sound files, etc.
Stand alone or embedded: Can be a separate executable or just an in-game mode.

What would be the approach to achieve similar effects with Unity, if possible at all?

I really want to hear your thoughts. Thanks in advance! :slight_smile:

Sure.

Yes, it’s possible…the hardest part is importing 3D models, since you need to write or license a 3D importer (I have an .obj importer, someone else did a .fbx importer I believe). Unity doesn’t have much in the way of limitations…if you can program it, you can do it.

–Eric

That pretty much sums it up. A level editor is a more advanced thing to do! I will be developing a game with my brother in the future(waay in the future) that comes with a level editor. But I have no plans for that right now because of what a big project it will be.

Thanks! That was reassuring. Care to share your importer? I have a feeling I will be desperate for it at some point in the future. :lol:

Interesting. Would writing an editor require some unorthodox hacking or it’s just generally more complex?

About your project, I hope it won’t be too long!

Not for free, no, but it’s far cheaper than spending hours hours trying to write one yourself.

Writing a decent level editor is not that easy, nothing to do with hacking.

–Eric

Ya, no hacking. But remember, if you would like people to be able to make there own objects that have different actions, you just made your level editor way harder. If you just want the user to be able to make a level with pre-built objects done by you, it isn’t quite as hard, but I still recommend smaller projects before doing.

Good luck :smile: .

One side effect of free Unity is that it is now viable to do quick and dirty custom level editors by

1.) writing a couple of editor scripts for custom game windows and menu items
2.) telling your end user to download Unity and install your editor scripts

Then just have your editor project output level data as a text file which your game project consumes.

At the very least you get to leverage the Editor scene window as well as the menu system and hierarchy.

Now, if only there was some way to unload or even just not load all the built-in scripts/menu items it would be perfect, otherwise just tell your users to ignore the other bits of the UI since they won’t get exported to your level text file.

Nice to know of it still. If and when I have a Unity project that requires this task, I’m sure I will go with these options instead of reinventing the wheel.

I agree. Just wanted to make sure this is something within the Unity platform’s official boundary.

Yeah allowing players more freedom is always tempting but taxing isn’t it. :slight_smile: I will start with something (very) small.

Good idea! AFA I understand the Unity editor is quite extensible also. I will definitely do some more research and experiments with it.

I guess if there’s a demand for deep customization with the Unity editor like you described, UT will likely/hopefully respond to it.

Thanks for the tips and advice guys. :smile:

There are no real boundaries…Unity is a 3D engine, not a gamemaker. So, you can do what you want pretty much.

–Eric