Maze Generator (showcase YT video coming)
Usable on low end servers or big crowded servers
---
Maze Generator is a plugin capable of generating random and large labyrinths. Let me know what features you would like to see in the future
Leave your positive or negative feedback, both are useful to everyone!
See the GIF ->
Link
Support my work or free to use
My plugin is also available on
ModRinth for free, but if you want to support me and give me a way to continuing releasing new features, please consider buying here and give a small contribution.
https://www.buymeacoffee.com/radqnico
---
Performance first
The placing of the maze is completely
LAG FREE.
The generation of the maze is VERY fast for mazes up to 5000x5000 then you COULD get some lag or crash your server if you're running on <2GB RAM
Highlights
-
Mathematically Proven: It is mathematically proven that from ANY position of the maze you can ALWAYS reach ANY OTHER position.
-
LAG FREE: It does not impact the performance of the server. Generate your huge mazes on crowded servers like a breeze.
-
Reload-Safe: It's reload-safe but the interrupted maze generation cannot be resumed (for now...).
-
Progress Notifications: It notifies you on the progress for very long processes!
-
Customizable Themes: Create your own theme from config!
Maze Generation Parameters
When generating a maze, you can play with these parameters:
- `x,y,z`: INT - Generate in a specific position.
- `world`: STRING - The world to generate the maze in.
- `mazeSizeX`, `mazeSizeZ`: INT - Total size of the maze
(in CORRIDORS NUMBER, not BLOCKS).
- `cellSize`: INT - Wideness of the corridors.
- `wallHeight`: INT - Height of the walls.
- `erosion`: DOUBLE from 0 to 1 - Erosion factor (how much the walls are removed to create new paths).
- `themeName`: STRING - Theme to apply (choose one that I made or create your own).
- `lowMemory`: TRUE/FALSE - If to generate more slowly due to low RAM.
- `roomsAmount`: INT - Amount of open rooms to TRY generating.
Command permission:
`mazegenerator.maze`
Theming guide
Please do not remove sections from the theme structure.
If you see stone material where it shouldn't be, that indicates a mistake in the theme.
In the `themes.yml` file you can find precompiled themes like this:
Code (Text):
jungle: # This is the theme name string
floor: # Materials that will compose the FLOOR of the maze
GRASS_BLOCK: 20 # MATERIAL_NAME and WEIGHT: Higher value -> more probable to place
DIRT: 10
PODZOL: 5
COARSE_DIRT: 2
JUNGLE_PLANKS: 1 # MATERIAL_NAME and WEIGHT: Lower value -> less probable to place
wall: # Materials that will compose the WALLS of the maze
JUNGLE_LOG: 30
JUNGLE_LEAVES: 25
MELON: 15
JUNGLE_PLANKS: 10
BROWN_MUSHROOM_BLOCK: 5
GREEN_TERRACOTTA: 2
GLOWSTONE: 2
top: # Materials that will compose the TOP LAYER of the maze
JUNGLE_LOG: 3
JUNGLE_PLANKS: 2
MOSSY_COBBLESTONE: 1
Upcoming features
1. Parameter to make the maze enclosed with a ceiling.
Notes
-
Add Your Own Theme: You can add your own theme!
-
Automatic Positioning: The maze will generate from your position if you don't input the coordinates.
-
Direction of Generation: The maze will always generate in the positive X and position Z directions.
Examples with Precompiled Themes
Forest Themed
Code (Text):
/maze cellSize:2 mazeSizeX:10 mazeSizeZ:10 wallHeight:10 themeName:forest erosion:0.1
Tired of sweats?
Code (Text):
/maze cellSize:1 mazeSizeX:1000 mazeSizeZ:1000 wallHeight:4 themeName:mountain erosion:0.05
Have fun, cheers!