Teardown

Teardown

45 ratings
Procedural Labyrinth
   
Award
Favorite
Favorited
Unfavorite
Type: Content
Category: Map
File Size
Posted
Updated
1.799 MB
3 Apr, 2022 @ 9:33am
3 Nov, 2024 @ 8:47am
7 Change Notes ( view )

Subscribe to download
Procedural Labyrinth

In 1 collection by Geneosis
Geneosis' Creations
25 items
Description
Live your life as a Minotaur!
And remember to use you trusty spraycan ;)

Now in v2.1.4! (see full patch notes)

This mod builds upon my Infinite World Generator and generate an infinite perfect labyrinth, with a unique path to reach the next level (section) of the maze.

If you are looking for some accurate Backroom mods, here is what other modders have done (some of them are infinite, some others are not):

FEATURES
- Procedural Labyrinth: A customizable labyrinth map generator with optionnal objectives.

CHARACTERISTICS
- Fully configure the material, color, texture, size and thickness of your floor, walls and ceiling in the options.
- Structures are unbreakable by default, but that can be disabled in the options.
- You can enable light beams in the options that will mark the entrance of each maze level.
- You start at the center of the labyrinth, you can try to escape in one of the 4 path available.
- The labyrinth is symmetirical around its center, so each path will have the same structure, unless you change seed.
- Each labyrinth level is 9 times larger than the previous one, starting at 3x3 (then 9x9, 27x27, etc...).
- Several objectives can be toggled on in the options:
-- Escape: When active you can try to progress as far away from the maze center as you can.
-- Complete: When active you can try to complete as many levels of the labyrinth as you can.
-- Explore: When active you can try to collect as many treasures as possible.
-- Survive: When active you can try to survive the Robots for the longest time.
- Objectives infos are displayed at top left of the screen.

KNOWN BUGS
- The labyrinth generation process may take a really long time if you explore really far away from the center, try increasing the generation steps per tick in the options to make it faster.
- You may encounter a void area if you travel to a place where the labyrinth map has not yet been generated, the place will fill correctly as soon as the map generation is complete though.
- Your game may slow down during some of the labyrinth generation steps (when the map for next level is being created), try to lower the generation steps per tick in the options when that happens.
- Reloading a save will result in a broken state for this mod, game is complaining about some functions not existing, but they do exist... If any other modders have suggestion on how to fix that, please share them :p

DEV NOTES
Originally posted by About this mod:
It is COMPLETE! I was thinking of this concept since I started working on the Infinite World Generator mod, but having a simple chunk-based world generation was a pretty long process on its own so I had to split the work in two.
Anyway here it is finally... An infinite, procedurally generated (seed based) labyrinth that extends in every direction ^^ You may think to yourself: but what is the point of build a labyrinth with no ending??? Well first of all, because perfect mazes looks cool :p And then because they can be a nice structure to play around with ;)
About the main structure of the labyrinth, I was initially thinking about a way to generate it "on the fly", meaning the plan of the labyrinth for a given chunk would be drawn only when you come in render distance of that chunk. But I quickly abandonned that option: first of all because generating a perfect maze (with only one path from the entrance to the exit) in those condition would have been nearly impossible, and also because it would be quite hard to ensure that the labyrinth would have the exact same structure each time you load it based on the seed (as chunks could be discovered in a different order each time based on the movements of the player).
So I went for a different approach instead: I decided to split the world into different sections, then generate a finite maze in each section with a well known algorithm (recursive backtracker), and then connect those sections together so that only one path will exist to go from one section to the next one. Well not really 1 path, but 4 path total as I made the maze symmetrical in all 4 cardinal directions.
The split start with sections of 3x3, makes a 9 blocks square with them, then surround it with 8 9x9 sections, then with 8 27x27 sections, etc... You can think of it as a fractal. Each new section size is what I call a "level", so level 0 is the central 3x3 square, level 1 is each 3x3 section around it, level 2 each 9x9 sections around them, etc...
I was also considering making a different maze for each direction, but I dropped that idea as the time taken to build a maze was already long enough, plus I wanted to use some sort of cache to be able to reload mazes easily each time whenever a player enters the map. Meaning that a unique maze in each direction would have multiplied the space needed to store them on player computers by 8. Which is why there is only one maze generated per level.
Anyway, having an efficient data structure to store the mazes as well as a way to diplay them rotated correctly around the map center took most of the time I spent on this mod. The generation algorithm itself is quite simple, but I still managed to mess it up and spend more hours that I would have liked to debug it... The final result is perfect though :)
When the labyrinth was fnally generating properly, I started thinking about some bonus objectives/challenges to add for the players in it. So far I came up with two simple ones that simply track the progression of the player in the maze, but I may take some time to add some more complex objectives like treasure collection or robot suvival ;)
57 Comments
Geneosis  [author] 3 Nov, 2024 @ 8:50am 
Mod updated! You can now collect threasures in third person too!
see full patch notes
Geneosis  [author] 1 Nov, 2024 @ 11:48am 
Swing it, thrust it, slash it, stab it, smash it, slice it, be a true Ascended Sword Master !
Geneosis  [author] 15 Aug, 2024 @ 1:50am 
@Poopy (py): Spoiler: bunnies are pretty dumb, they will probably hop into walls most of the time XD
poopy31016 14 Aug, 2024 @ 11:34am 
no not rlly but just for fun
poopy31016 14 Aug, 2024 @ 11:34am 
imma put the bunnies and my robots in there to see if they are smart or dum
Geneosis  [author] 14 Jul, 2024 @ 10:58am 
Build up your defences, the Synthetic Swarm is spreading!
mystiquexme 13 Jul, 2024 @ 10:32am 
im getting backroomed
Soggy 30 Jun, 2024 @ 3:56pm 
im getting backrooms ptsd
Geneosis  [author] 3 Jun, 2024 @ 10:10am 
@gospelplow76: Glad you like it ^^ If you are looking for more accurate "backrooms" maps, make sure you check the other mods linked in the description ;)
the cat 2 Jun, 2024 @ 4:59pm 
i love this map! i get to recreate the backrooms with no porblems!!!! annd i get to make bases.