This project contains a set of BSP Maze Generator scripts, which are ideal for procedurally generated games like rogue-likes, adventures, or even Spelunky-style platformers.
BSP stands for Binary Space Partitioning, and it's a method of dividing up an area. In this case, it's used in a series of scripts that can be used to generate a maze (or map, or dungeon) for any game, complete with rooms, corridors and doors. The engine adapts to any room size and base tile size, and it can be adjusted is several ways to get different results each time.
You can also use these scripts (with a minimum of customisation) to add features to your created mazes like enemies, switches, power-ups etc.
NOTE: While I strived to make these scripts as accessible as possible, you will need to know the GameMaker Language to use them and they are not recommended for absolute beginners.
The demo project supplied with these scripts permits you to test the main features of the engine and you can get an idea of how it works in a real game by pressing from the main options room. This will create a maze using your set parameters and add a player, walls, doors, floor tiles and some enemies.
This set of scripts is particularly suited to use my Autowall, Object Optimisation and Aura Lighting scripts which can be found from the following links:
The full set combined give you a highly optimised and graphically consistent maze/dungeon map for your rogue-like or adventure games.
Version 1.1.3. Published August 6, 2014
Created with GameMaker: Studio v1.99.182
You can only review assets you've bought.
Well commented and in-depth code. Exceptional work!
I really like this asset. It's very fast and cleverly coded. You can understand everything at first look.
This is very in-depth and useful to me. I'd been following along with your tech blog and now I have the asset I desperately needed to create my own rogue-like! Good job, Mark.
This maze generator has quite a bit of depth to it. The scripts are easy to use and there are great extras included in the asset that I wasn't expecting when I bought it (Room and area population scripts).
You will need to invest some time into reading through the comments to make sure you understand how and when the different scripts should be called but after that, using those scripts is straightforward.
I would highly recommend this to anyone wanting random dungeons/mazes in their game. Why write your own bsp scripts when Nocturne has so kindly taken the time to do it for us? In my opinion, $6, or whatever this costs, is a bargain for such a solid asset.
Works perfectly and is fun to tinker with!
very powerful, yet very simple
If you have a basic understanding of code, this generator is soooo easy to manipulate and edit. It is so advanced and has some awesome features, yet at the same time its simplicity is astounding. Within minutes i have managed to manipulate it to exactly what i want, incorporate it into my game, and start with the other things in my game.
I was a bit negative with this whole market place thing in game maker, i do admit, and i was a bit...meh... at buying something. But the fact that its Nocturne who is a trusted source in my opinion, I am definitely satisfied with this and recommend it to everyone wanting this kind of feature
difficulty: medium (some understanding of code is required)
ease of merging: 4/5
Essential asset for dungeon generation
The generation is very good and nice however the debug script results in a cannot create vertex buffer error on my laptop with a tilesize of 16, due to drawing too many rectangles.
The error with the debug script is related to chipset drivers and is not something I can control, unfortunately. If I remember rightly it happens with integrated graphics chips... However you can simply comment out the "draw_rectangle_colour" at line 39 and the debug scripts will work as they should, although individual split area will not be coloured. Sorry that this happens to you, but it's NOT a bug with my scripts and I can't do anything about it.
Thanks for commenting!
Nice starting point for your dungeon
Very cool, generates some convincing dungeon layouts.
The corridors are the only real sore point as they sometimes create rather roundabout routes between rooms and only ever have a thickness of 1 tile.
Edit: the biological feel to the dungeon and the corridors is actually the great thing about this, I think its really just the length of some of the corridors that gets a bit much.
Thanks very much for the purchase and the kind review! I'm not sure what I can do about the round-about route as the way I have structured the connections was designed to give a slightly more "biological" feel to the dungeons. However, I will look into an option to change this behaviour, as well as an option to have corridors of 1,2, or 3 grid cells in width (which should be doable). I'll update the project if I can get these features added.
Thanks for the feedback!
Great script, nice support!
This script works like a charme! You should have some medium to advance knowledge of GML to use it.
A feature wish for the demo: fog of war. :)
Btw: I had some problems, as the script crashed on my notebook. I contacted Mark of Nocturne Games and he answered real fast and tried to help. In the end I found out, that the debugging script has a problem with too many drawn rectangles on Intel chipsets. So, if the script fails for you, replace the draw_rectangle_color function in scr_BSP_Draw_Debug with a draw_set_color(c);. So you get at least colored debug text.
Nontheless everything works fine without the debugging function. :)
Fog of war was not really something that I had in mind, although I can think of several ways that it could be implemented... I'll look into it and see if it "fits" with the engine as it is currently. Thanks for the feedback and I'm glad that the support you received was adequate.
Thanks a lot!
Works great! Though not for new users!
I will start off by saying that this is a great generator and lots of work was put into it but it does require a lot of set up and it took me about an hour to set up perfectly the way I want it. If your looking for something to just import into your game and be on your way this is not it. However if you know at least how to read code you can figure it out. This comes with a "Demo" which is a great feature and definitely shows you how to set it up properly.
For Advanced Users: Yes
For Intermediate Users: Yes (If you have patience)
For Beginner Users: No
This is great, good job Nocturne!
This review was left for a previous version of this asset.
Thanks for the kind words! I worked hard at making the scripts as accessible as possible, but with something so complex, there is a minimum level needed to use them. I'll add some skill requirements to the description so that future users can get a better idea of what is expected. Thanks again and if you finish a game using this, then please send me a link or post it here in the comments. Good luck!
Total size 22 KB