[RELEASED] Level Maker - prefab placement system v 0.6

Level Maker (LM) is a tool for quickly making levels from prefab pieces. It’s main advantage is that it is data driven so levels can be stored and quickly instantiated in new scenes. Additionally, it does not rely on grid alignment so walls, corridors, and other placements can be at any angle. It’s second big strength is that it allows quick placement and snapping of prefabs that are not grid aligned, are not square, are not uniform, or were designed to use vertex snapping.

LM will be on sale for $15 during the beta stage and will go up to $30 once the initial version is complete.

Once version 1.0 is complete, work will begin on v 2.0 which will allow for procedural generation of levels. Once version 2.0 is complete, the price will go up to $50 but updates from previous versions will be free.

LM has two main modes for placing prefabs, basic and connector modes. In basic mode, pieces are simply instantiated along axis without any rotations. In connector mode, prefabs are placed so that their connectors align and allows for advanced placement for items such as stairs, ramps, curved roads, etc…

This video shows the use of connectors.

This shows using basic mode to make a quick fence

This shows how LM can be used to place piping.

3 Likes

Has this been submitted to the asset store yet?

I’m getting ready to submit it today. I setup this thread so I could put the link in the asset description.

1 Like

LM was submitted last week and we’re just waiting right now. Here’s a video showing a new feature that will be available in the first update. The flat surface feature allows for quickly creating floors and ceilings out of square tiles.

The version 0.6 update to Level Maker has been submitted and should hit the store sometime this week. There are a number of bug fixes and minor additions and also includes the new flat surface feature and cascading rotation changes. This video shows the new cascading rotation changes option in the fence mode section.

This asset looks quite useful. out of curiosity any chance that it works in runtime or that maybe that will be an added feature in the future?

Yes, I was planning to make everything available at runtime. I’m not sure there’s much if anything that wouldn’t currently work in runtime mode. It’s setup so that the editor window calls a set of core functions for doing the placing and moving. I would just have to check and make sure the scriptable objects were accessible but that’s the only area I can think of that might currently be a problem.

[Edit] I just setup a quick test and now have a runtime scene that shows getting a list of databases, levels, and spawns a piece into the scene from the current database. It looks like I can have some basic runtime support in the next update and full support by the time version 1.0 is complete.

Wow nice… Wasnt expecting you to do it on request…haha i guess now i have to buy it So many asset on sale and so little money… But this one is top 5 on my list.

Lol good to hear! With it being in an early release state, I’m looking for input on what people would like to see.

Here’s the new prefab preview window which makes selecting prefabs a lot faster than scrolling through them.

This will be available in the 0.7 update coming soon.

2 Likes

The 0.7 release of Level Maker is almost finished. There are a lot of bug fixes and minor improvements to the work flow and layout. This update also adds a few new features designed specifically for working with pipes. One is the ability to quickly setup connectors oriented with faces that are not grid aligned. The other is a rotate feature which makes rotating pipes easy.

The 0.7 release has just been submitted to the asset store. It has numerous fixes and improvements to the layout as well as the creation process. The biggest additions are the prefab preview window and vertex clicking for editing connector locations.

The 0.8 update will focus mainly on adding run time support.

1 Like

Run time support is almost finished. Work has slowed though due to focusing our time on a VR update to one of our PS4 games. Almost everything can be use at run time with the current version but with the 0.8 update, we’ll have code samples for all the basic functions.

2 Likes

I’s wishing for something like this for quite a long time, but until now couldn’t find something that I’d consider fitting my needs. This has changed now - by sheer luck. What is already there is great and more than I could have wished for for the price tag. I’m also looking forward to what will come in the future, especially procedural level generation.

Do you already have specific plans for how the rules will be specified by the user for procedural generation?
Related to that, I’ve tried nearly all procedural landscape generators on the store, and found MapMagic to be the most intuitive and also most powerful approach to the topic, also due to the open extensible generator interface for example. But that’s just me and merely meant to be a suggestion for a possible direction.

One thing that I’m quite picky about (due to many problems with code incompabilities between different assets I had and disappointments like assets not being developed further, thus becoming a plain loss for users) is having a dll in the asset. So if possible please consider some dll free approach for the future. I’d even prefer to pay extra for an upgrade to a source included version instead of relying on hope that what has happened before will not happen again with this asset.

Just some thoughts, going to bring LM into my actual project now. Best wishes for the coming updates and general success of the asset.

That’s great to hear! We’re always interested to hear feedback so let us know of any issues you find or anything that’s confusing. We’ve tried to make sure the docs have everything you’ll need although they’re not really refined at this point.

On the procedural generation, we’ve got some ideas but are open to suggestions as to what people want. I’ll take a look at MapMagic as well. The big thing we are planning to do is to be able to create a template that can be used to create a level from multiple level kits. If you have level kits setup correctly, you could create a level, and then instantly swap between level kits and go from a sci-fi corridor level to a dungeon in seconds. This is possible due to the data driven nature of LM.

On the dll issue, I understand your concerns. We’re mainly a game development studio and created this asset based on our own internal needs. It’s not likely we’re going anywhere soon but if we did, we would open up the dll code. The main reason for doing this is to protect our work from someone copying and releasing a competing asset. At some point, the project will become pretty big and it’s size and complexity would become a deterrent and we would be open to removing the dll. Right now, the majority of the dll code is calculations on the transforms and such so there shouldn’t be any real compatibility issues though.

If you have any questions or feature requests, feel free to send them along!

1 Like

Hello - I’m very interested in this product. Hoping to use it for an in-game dungeon builder. What is the status on the runtime support, and when might that be pushed to the asset store?

It’s mostly done but there’s nothing really stopping you from using it right now. The runtime support is mainly just taking what’s in the existing editor scripts and repackaging it so it can be used from runtime scripts. It’s more an update to add examples as I haven’t found anything in the editor scripts that wasn’t compatible with runtime mode.

1 Like

Just started playing around with it. It’s pretty neat. I would like to request an async level loading function with either a progress float, or a levelLoaded bool that I can check for completed. This will be a big help for anyone wanting to make a loading screen.

That shouldn’t be too hard to do. I’m actually planning to do a few things with the level loading so I’ll see about putting that in.

hi, excellent editor. Really improves productivity, but can I request an addition to the preview window, and that is the ability to sort the prefabs according to x, y or z dimensions, and possibly some text to show the dims.
Thanks