Multiplatform Runtime Level Editor

Dude… This looks amazing. Superior to the over priced one on the playstore now with controls, terrain texture painting and prefab ability. I will pay for this once its out. Luckily this is something I can wait until my game is ready to go to have to implement but you know players love making maps for their games. Can’t wait keep up the good work

I’m happy that you people post here again and again! I think it’s time now to ask what would you guys pay? What is a fair prize for such a tool?

A little update to the current state of development:
I have made the editor for this game: Mad Snowboarding
An Android demo of the game is already available so that you can see the editor in action.
I plan to release the game on Windows platforms this month. Then I will probably need one week to fix the worst bugs. After that I will clean up the editor and make it shippable, write docus and make how to videos. So it is realistic that it will be submitted in September. I hope that Unity guys will not need to long to approve it.

for something like this i would happily pay 40 euros

Any updates? I’m super excited! :slight_smile:
I’m hoping you will be able to save maps to a file.

@ZeoWorks : you will be able to save maps to a file on all platforms except for the Web Player. The Web Player is not allowed to write files for security reasons. You can check the map files of Mad Snowboarding for Android if you want: Mad Snowboarding for Android, iOS, Windows Phone, Windows Store, browser

1 Like

Hey FreebordMad, good to hear from you again.
Also very exited for the level editor and since you asked for a price range
It could be about 40 dollars/euros I think,
I’ve seen a similar priced map builder that isn’t being supported anymore on the assets store.

Support and documentation for an Asset to me is of utmost importance when I decide to purchase an asset that might speed up my development time, I say might because if things go south and there are issues that arise I hope to be able to contact the creators of the asset. To solve unexpected problems basically.

Your Level Editor seems on the right track however and I’m very excited for your product :wink:

@FreebordMAD : I need a runtime terrain editor and after looking around, this seems to be the closest there is to what I am looking for. I started building mine from scratch, but decided to lookout for existing solutions when I found yours :slight_smile:

So, I have a few questions :

  1. Would I be able to modify the terrain on mobile devices ( iOS, Android ) ?
  2. Can I set a specific height for the terrain raise. Let’s say my terrain height is at 0 and when I click/tap on screen, the affected area raises up to a predefined height (ex. 1 or 2) ?
  3. Would I be able to paint textures on mobile devices as well ?
  4. Where does the Runtime Editor get its texture and object references ? Do they come with the editor or is there a way to add my own ?
  5. Can I add custom objects as well, as per question 4 ?
  6. When can I test it ? ( I am in a bit of a hurry ) :slight_smile:

There is definitely interest :slight_smile:

Best regards,

Hello @dotSnipe ,
I’m glad you are interested! Here are the answers to your questions:

Yes, you can modify terrain on a touch capable device iOS, Android, Windows (Phone) and probably Black Barry.
Android Demo (screenshots from first post): http://www.freebord-game.com/MultiPlatformRuntimeLevelEditor/MultiPlatformRuntimeLevelEditor.apk
My game demo using this level editor: Mad Snowboarding for Android, iOS, Windows Phone, Windows Store, browser

Yes, in the second terrain editing tab you can set the target value from 0 to 1. So if your terrain has a maximal height of 500. You can move the target value slider to the middle and the height will be set to 250 when you tap on the terrain. Similar to the built-in Unity terrain editing while in Unity Editor.

Yes, you can do all the thing that are possible in the Web Player demo.

The editor will come with some demo assets. You can add any of your own assets. The demo assets are meant only to show how assets can be used. You can add your own terrain textures and level objects.

As answered above yes.

You can test it right now.
Web Player demo: Unity Web Player | MultiPlatformRuntimeLevelEditor
Android demo: http://www.freebord-game.com/MultiPlatformRuntimeLevelEditor/MultiPlatformRuntimeLevelEditor.apk
my newest game on Android or Windows (Phone): Mad Snowboarding for Android, iOS, Windows Phone, Windows Store, browser

This weel I have started to work fulltime on the level editor. I hope to upload the first version to the Asset Store by the end of the week. Next week I will create tutorials and a detailed documentation. I plan to release an update by the end of the year based on the feature requests that will arise when the editor is published.

@FreebordMAD :

Thank you for the reply. I tested the apk on my Tab 3. It looks great :slight_smile:
Great news on the idea to release to the AssetStore this week. I can’t wait to test it.

  1. Do you think I would be able to use a custom UI with your library ? I mean if I want to make custom buttons using the new UI from unity 4.6 with your terrain editor, that would be possible ?

  2. Also I noticed that the objects placed can not be put in the ground. Is there a way to change that ? For example I place a car on the terrain, and after I get the transform xyz arrows, i was thinking of placing a car half way into the ground.

Ok. My mistake. Regarding Question 2, I see the Trees in your demo work as per the question. :slight_smile:

Unfortunately, the answer is rather no than yes. It woulbe be possible but it is much work and probably not worth it. I use a custom object oriented GUI wrapper for OnGUI you would need to rewrite all my classes such as buttons, boxes, labels, icons, etc…
I will update to the new GUI once Unity 5 is released, but I will not manage to find the time for this in 2014, so maybe next year.

As you have already discovered static object like trees can be moved into the ground or other objects, but dynamic objects like cars that have a rigidbody attached can be saved only in a valid position. This is done to prevent the users from putting a car half into ground. In this case once the player would touch it, the car would go into air like crazy, because of the physic collision.

I have worked on the documentation today. IT IS BY FAR NOT DONE! But if you want to get a little more insight on what you will get, you can take a brief look on it: Multiplatform Runtime Level Editor Documentation

Same question I asked the other guys making one of these. Are you providing sharing exporting the levels. Most of us use mysql.

What you will get from the level editor are two byte arrays. One for the level information (terrain, objects, etc.) and one for the level meta data (level icon, gold medal time, etc.). You can do what ever you want with them, save them to a file or upload them to a mysql database.

I have used the level editor for Mad Snowboarding. What I do there is to zip it which reduces the level file by over 70% then convert it to Base64 and upload it to my server as a file via the POST protocol.

Here is the part of the documentation that lets you get the two byte arrays of a saved level.

I was recently thinking about the file size being to big. ~70% reductions in size is awesome.
Also I see the documentation is coming along fine :slight_smile: Love the progress :slight_smile:

See you soon on the Asset Store :slight_smile:

How hard is it to add textures and brushes for the terrain editor?
Also in the terrain editor can we:

  1. Import template levels with say the borders that could not be edited? (example would be an island terrain.)
  2. Set area within that terrain that could bot be built on? (Say you wanted to have a standard feature in every level)

For the level editor:

  1. Can we use this for player housing say give them a plot of land in a larger scene?
  2. Will there be a store type system built in so level assets can require some type of currency?
  3. Does this keep track of total assets placed for say a max amount of assets per level?

This is very easy see this pages of the documentation:
Multiplatform Runtime Level Editor Documentation: terrain textures
Multiplatform Runtime Level Editor Documentation: terrain brushes

Here is an example of a possible way to do this in the current editor version:

  1. Create your template level by using multiple terrains for example with 9 patches. In the “figure” below the “X” character stands for one terrain object of the template level. The “0” character is the user terrain for now it simply does not exist. You can use terrain detail objects or any other object without the editor scripts on them for your template level. Save your template terrains to a prefab, so that you can load them in any scene you want.
    XXX
    X0X
    XXX
  2. Create the template of the user terrain. Make it fit the other 8 patches of the template terrain. Save it using the MR level editor.
  3. When you now want to load a level you load the user terrain with the MR level editor with all the changes that the user has made and place your template terrains by adding their prefab object to the scene.

In this setup the user can edit only the center patch of the terrain landscape. You will need to solve some issues when you use the 9 patches approach. For example you need to make all the terrains fit to each other. You could run a script that would match the border of the user terrain to the borders of the neighbour terrains. See also Terrain.SetNeighbours

[EDIT:] I have written some docu on this:
http://www.freebord-game.com/index.php/multiplatform-runtime-level-editor/documentation/level-object-placement-limitation
This can be solved with simple event handling. I will write some documentation on this in the next days. In summary, you would register for something like OnDragObject and change the IsPlaceable property of the event args to false if you dont want the user to be able to place the object at the position given in the event args.

Again terrain patches. You could load the level of each user and move it (terrain+all objects) by a certain offset. This way you could place the current user in the middle and the loaded levels of the other users around the terrain of the current user. In this case all the terrains should have the same size.

[EDIT:] I have written some docu on this:
http://www.freebord-game.com/index.php/multiplatform-runtime-level-editor/documentation/count-level-objects
No, BUT you can build it yourself. You would need to register for some events like OnObjectPlaced, OnDragObject etc… Everytime an object is placed you would need to reduce the currency. If the user has not enough money to place the next instance of the current object you would disallow to place this object. You could render some shop like GUI over or next to the level editor GUI.

You can set a limit for each object, for example max 10 trees and 5 stones per level. There is no overall counter, BUT again register for object placement events and limit the overall object count yourself.

Thank you for your reply. I look forward to seeing this soon.

UPDATE:

  1. today I have submitted the first official version of the Multiplatform Runtime Level Editor to the Unity Asset Store. There is a good chance that it will be up in the store in the beginning of the next week!
  2. @dreamlarp : I have added some documentation that will help you to implement the features that you need:
    Level Object Placement Limitation
    Count Level Objects
  3. the demos are uploaded to all platforms now. Some are pending validation to see all the platforms that were tested click here

(Applause) !!!
Can’t wait :slight_smile:

1 Like

Thank you!