Almost 4 years ago, myself and another used named GitOut (formerly Tobi29) created a map for the early 1.8 snapshots called True Labyrinth.
True Labyrinth is unique, as it was the first ever map to use procedural generation in order to create a new dungeon layout each time you played - the generator may have been slow, but it was also ahead of its time. Recently, however, I created a new dungeon layout generator system in 1.12.2 using functions: a generator that's extremely fast and a lot more versatile. I have since updated the generator ready for 1.13 and began work on a complete remake of True Labyrinth: including new generation, new room designs, new mechanics, and much more. You can see the original thread for True Labyrinth here
At the time of writing this, work on this remake has only just begun, with the generator being complete but only a few rooms from level 1 have been ported over so far. I am still deciding on exactly how the remake should play, and what mechanics will be changed. I will keep this thread up to date whenever major developments take place.
How does the generator work?
I looked at all existing dungeon generators people have made in vanilla up until now, and I can confidently say that the new True Labyrinth generator is far quicker anything else out there: being capable of generating most layouts in well under 5 seconds. This was achieved by taking advantage of the new functions, added in 1.12, and using a lot of recursion loops and careful command optimisation.
The generator is an adaption of relatively simple recursive backtracking maze generation, much like the original TL - although with the addition of extra features such as being able to generate large rooms alongside standard rooms, and allowing me to specify exactly how many rooms to generate and how large an area to do it in. Another feature of the generator is the ability to apply rules to the length of paths within a generated layout, but I won't go into detail on this for now as it's rather confusing.
Oh, it's also seeded.
a layout using only large rooms:
room structure test:
large doorway test:
mansion & hallways test:
Much like with minecraft worlds, you can type in a seed for the generator to use and get the exact same dungeon every time you use its seed - or you can leave the seed value alone and it'll create its own random one. You will be able to see the seed the dungeon used to generated with so that you can replay the same seed or share it with others to play in the exact same dungeon as you.
Maybe you're watching a youtuber playing the map and you feel like playing the same dungeon they are?
No problem, just copy the seed their dungeon is using!
Any time the generator is run it will start with a 'seed' score, the value of the seed is then modified constantly using a linear congruential generator (LCG) to make the seed appear to spit out other random values. The important part is none of these values are actually random, they are created in a sequence that is designed to just look random.
Both singleplayer and multiplayer will be support just like in the original True Labyrinth. However, since the generator is a lot more flexible the level layouts and designs will be far more varied than the original. Levels will get gradually longer as you progress through the map, starting small and relatively easy in level 1 until you end up with a difficult and sprawling labyrinth before the final boss. Each level will be themed differently, starting with a traditional style similar to strongholds. Every level also has a boss fight at the end, which requires a key to access; finding the key is a challenge of its own and won't be nearly as straightforward as it was in the original map.
There will also be special types of rooms: including shops, treasure rooms, secret rooms, minibosses, challenge rooms, and more.
When will it be out?
I simply don't know, but I might release it early with only 1 or 2 levels included and then release new levels as 1.13 datapacks, since you can then install those new level datapacks without losing any progress. Hopefully it won't take too long, since the more complicated part is out of the way, but it could still be many months to a year before release. Or it could be done next tuesday.
I will occasionally post test releases in this thread, though, so stay tuned!
special thanks to:
GitOut (created the old generator for True Labyrinth in 2014)
SirBenet (helped with troubleshooting, bug-testing, and advice)
Nitroxius (helped get the new generator started)
fredo (helped test the generator and provide feedback)