Description
UPDATED FOR GMS 2.3+
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.
FEATURES
- Easy to use
- Easy to customise
- Only four main variables modify radically the maze generated
- Fully commented code
- Adapts to any room size
- Accepts any base "tile" resolution.
- Includes scripts to spawn walls, doors, enemies, potions... whatever you need!
- Demo room with player, walls, doors, floor etc...
Further Information
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 <Backspace> 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.
End User Licence Agreement (EULA)
Age Rating: 4+
Versions
GMS1 - Version 1.1.3. Published August 6, 2014
Major Update!
- New scripts added to populate the whole maze or a single room area with instances
- Spawning now takes the sprite width/height into consideration and prevents over-laps (if required)
- New ESSENTIAL object added, the "obj_BSP_Collision_Parent" (required for the spawn scripts).
- Floor tiles can now be any size and shape and will be scaled to fit
- Extra instances added to the demo room: potions, enemy boss, and gold.
- More comments added to certain parts of the code-base
- Minor bug fixes to spawning code and other scripts
GMS2 - Version 1.1.4. Published December 17, 2017
Initial GMS2 Upload
EXCLUSIVE GMS2 FEATURES - Optimised and updated scripts for GMS2 - Additional "helper" scripts - Updated demo room to show further possibilities (grid collisions, advanced debugging, etc...)