Logo
MINECRAFTBIBLE
Items
Items

All game items

Blocks
Blocks

Building blocks

Mobs
Mobs

Creatures & monsters

Biomes
Biomes

World biomes

Structures
Structures

Generated structures

Recipes
Recipes

Crafting guides

Advancements
Advancements

Achievements

Loot Tables
Loot Tables

Drop rates

Tags
Tags

Item groupings

All Versions
View all data →
Capes
Cape ArchiveNEW

Browse rare Minecon capes, OptiFine capes, and custom capes from players worldwide

Browse

Player Database
Player DatabasePopular

Search any player

Skin Browser
Skin Browser

Browse & download skins

Cape Gallery
Cape GalleryNEW

Minecon & OptiFine capes

Seed Vault
Seed Vault

Curated seeds

Learn

Guides
GuidesNew

Tutorials & tips

Blog
Blog

News & updates

Community

Community Hub
Community HubHub

Posts, discussions & more

All Versions
View community →
Seed Analyzer
Seed Analyzer

World seed analysis

Loot Explorer
Loot Explorer

Drop rates

Crafting Calculator
Crafting Calculator

Material planning

Enchant Calculator
Enchant Calculator

Probability math

Redstone Lab
Redstone Lab

Signal timing

Trading Profit
Trading Profit

Villager ROI

All Versions
View all tools →
Mods
Mods

Browse all mods

Plugins
Plugins

Server plugins

Resource Packs
Resource Packs

Textures & sounds

Shaders
Shaders

Visual enhancements

Datapacks
Datapacks

World logic

Scanner
Mod Intelligence

Scan & analyze any mod

All Versions
View all mods →
Loading...
IntroductionIntroductionVersion HistoryVersion HistoryGuidesGuidesBlog & NewsBlog & News
ItemsItemsBlocksBlocksMobsMobsRecipesRecipesBiomesBiomesStructuresStructuresAdvancementsAdvancementsLoot TablesLoot TablesTagsTags
ModsModsPluginsPluginsResource PacksResource PacksShadersShadersDatapacksDatapacks

MinecraftBible

The Ultimate Wiki

Logo
MINECRAFTBIBLE

The ultimate Minecraft reference. Every item, block, mob, and recipe documented with precision.

Community

  • Skin Browser
  • Cape Gallery
  • Seed Vault
  • Blog
  • Guides

Database

  • Items
  • Blocks
  • Mobs
  • Recipes
  • Biomes
  • Structures

Tools

  • Seed Analyzer
  • Mod Intelligence
  • Crafting Calculator
  • Enchant Calculator

Mods & Packs

  • Mods
  • Plugins
  • Resource Packs
  • Shaders
  • Datapacks

Site & Legal

  • About
  • Authors
  • Editorial Policy
  • Corrections
  • Contact
  • Privacy Policy
  • Terms of Service
  • DMCA
  • Sitemap

© 2026 MinecraftBible. Not affiliated with Mojang or Microsoft.

PrivacyTermsContact
Maze Generator
PluginLicenseRef-All-Rights-Reserved

Maze Generator

Generate custom, random and huge labyrinths. Customizable themes!

3.9K
Downloads
61
Followers
6 months ago
Updated
📦
13
Versions
curseddecorationminigamepaper
Download Latestv1.8.1View on Modrinth

📖About Maze Generator

Maze Generator

Epic showcase by KasaiSora

Usable on low end servers or big crowded servers

Graph of performance


📧 Feel free to contact me at [email protected]

My plugins are free to use without any catch, but if you want to support me and give me a way to continuing releasing new features, please consider a small contribution 😊

☕ https://www.buymeacoffee.com/radqnico


MazeGenerator 🧩

Download on Modrinth

Build massive, themed mazes in Minecraft without freezing the server. The plugin generates the maze layout incrementally and places blocks over time with a configurable per-tick budget. Work is grouped per chunk, and chunks are only loaded on demand at the exact moment blocks need to be placed.

  • Paper

Features ✨

  • Streaming generation and placement - no giant in-memory queues.
  • On-demand chunk loading only (never preloads).
  • Autotuned per-tick time budget to protect TPS.
  • Chunk-grouped placement (multiple cells per job) to reduce overhead.
  • Weighted material themes for floor, wall, and top (themes.yml).
  • Options for hollow walls and closed roofs.
  • Tab-complete for arguments, plus /maze help, /maze stop, /maze reload.

Installation ⚙️

  1. Build or download the plugin JAR.
  2. Drop the JAR into your server’s plugins/ folder.
  3. Start the server once to generate default config and data files.

Files created/used:

  • plugins/MazeGenerator/config.yml - performance and behavior settings.
  • plugins/MazeGenerator/themes.yml - material weights per theme.
  • plugins/MazeGenerator/messages.yml - user-facing messages.

Use /maze reload after changing these files, or restart the plugin/server.


Commands ⌨️

  • /maze - starts a build with sensible defaults near your position.
  • /maze stop - stops all active maze builds.
  • /maze help - prints usage and argument reference.
  • /maze reload - reloads config.yml, themes.yml, and messages.yml.

Permissions:

  • mazegenerator.maze - use /maze and view status.
  • mazegenerator.reload - use /maze reload.

Arguments (key:value)

Order does not matter; tab-complete suggests keys and many values.

  • x, y, z: World coordinates (defaults to your position).
  • world: World name (defaults to your world).
  • mazeSizeX, mazeSizeZ: Maze size in cells (odd enforced internally).
  • cellSize: Block width and length of each cell footprint.
  • wallHeight: Vertical wall height (excluding top layer).
  • hasExits: true|false - ensure at least one exit at maze border.
  • additionalExits: Extra exits on top of the first (0..N).
  • hasRoom: true|false - carves a central rectangular room.
  • roomSizeX, roomSizeZ: Room dimensions (cells) for the central room.
  • erosion: 0..1 - occasional small holes in nearby walls while carving.
  • closed: true|false - roof over paths as well (otherwise paths are open to sky).
  • hollow: true|false - wall cells as a shell (edges only) for huge block savings.
  • themeName: Theme key from themes.yml (tab-complete lists available themes).

Examples:

  • /maze mazeSizeX:51 mazeSizeZ:51 cellSize:2 wallHeight:4 hasExits:true additionalExits:1 themeName:forest
  • /maze world:world_nether x:100 y:80 z:-200 mazeSizeX:41 mazeSizeZ:41 themeName:snowy
  • /maze mazeSizeX:75 mazeSizeZ:75 cellSize:3 wallHeight:5 hasExits:true hollow:true closed:false themeName:desert

Configuration (config.yml) 🛠️

Defaults are tuned to preserve TPS on most servers. Key settings:

  • millis-per-tick (default 3)
    Base time budget per tick used by the builder. Autotune adjusts this up or down within bounds.

  • jobs-batch-cells (default 64)
    How many maze cells the scheduler tries to collect per top-up. Larger values reduce overhead a little, but can increase burstiness.

  • cells-per-job (default 16)
    How many cells to pack into a single placement job for a given chunk. Higher values reduce scheduler overhead and redundant chunk loads.

  • set-block-data (default false)
    Attach CustomBlockData to placed blocks. For most builds this should remain false (saves I/O and memory).

  • defer-wall-fill (default false)
    Build order option:

    • true: carve first (corridors appear quickly), then fill remaining walls; generally fewer total writes.
    • false: fill walls first, then carve; looks like a solid mass at first, then paths appear.
  • autotune: (enabled by default)

    • min-millis-per-tick, max-millis-per-tick - bounds for the per-tick time budget.
    • increase-step, decrease-step - how fast the budget grows or shrinks.
    • spare-high, spare-low - thresholds based on remaining time in the current 50 ms tick.
  • status-interval-jobs (default 1000)
    Prints a progress update in chat roughly every N jobs executed.

Note: The plugin loads chunks on demand at placement time. There is no preloading and no background chunk budgets.

Example: Smooth (minimal TPS impact)

millis-per-tick: 2
jobs-batch-cells: 32
cells-per-job: 8
set-block-data: false

autotune:
  enabled: true
  min-millis-per-tick: 1
  max-millis-per-tick: 4
  increase-step: 1
  decrease-step: 2
  spare-high: 18
  spare-low: 12

defer-wall-fill: true
status-interval-jobs: 500

Example: Balanced (default-like)

millis-per-tick: 3
jobs-batch-cells: 64
cells-per-job: 16
set-block-data: false

autotune:
  enabled: true
  min-millis-per-tick: 1
  max-millis-per-tick: 8
  increase-step: 1
  decrease-step: 2
  spare-high: 18
  spare-low: 12

defer-wall-fill: false
status-interval-jobs: 1000

Example: Fast (accept some risk of spikes)

millis-per-tick: 5
jobs-batch-cells: 128
cells-per-job: 32
set-block-data: false

autotune:
  enabled: true
  min-millis-per-tick: 2
  max-millis-per-tick: 10
  increase-step: 1
  decrease-step: 1
  spare-high: 20
  spare-low: 10

defer-wall-fill: true
status-interval-jobs: 750

Themes (themes.yml) 🎨

Themes control weighted material selection for three sections: floor, wall, and top.

Example:

desert:
  floor:
    SANDSTONE: 20
    RED_SANDSTONE: 10
  wall:
    SAND: 40
    CHISELED_SANDSTONE: 20
  top:
    SANDSTONE: 3

forest:
  floor:
    GRASS_BLOCK: 20
    DIRT: 2
  wall:
    OAK_LOG: 30
    OAK_LEAVES: 25
  top:
    OAK_LOG: 3

Weights are positive integers. Higher weight means more likely. If a section is empty, it falls back to STONE.

Tips:

  • Use more variety in wall and top for a more organic look.
  • Keep top materials lighter for interesting silhouettes.

Messages (messages.yml) 💬

  • plugin-prefix, job-started, job-status, job-done, job-stopped, command-error, no-permission, config-reloaded.
  • Color codes use & and are translated on send.

How Autotune Works (Quick) ⚖️

  • Measures spare time within the current 50 ms server tick (based on a tick start event).
  • If there is plenty of spare time (spare >= spare-high), it increases the per-tick time budget by increase-step up to max-millis-per-tick.
  • If the tick is tight (spare < spare-low), it decreases by decrease-step down to min-millis-per-tick.
  • The builder places blocks only until now + currentMillisPerTick in each tick.

Performance Tips 🚀

  • Use hollow: true and a larger cellSize to reduce total blocks dramatically.
  • Increase cells-per-job and jobs-batch-cells to reduce scheduling overhead.
  • Keep set-block-data: false unless you really need it.
  • Prefer defer-wall-fill: true for faster time-to-visible maze and fewer writes.

Troubleshooting 🧰

  • "Maze seems stuck" or no progress:

    • Chat updates are periodic. Lower status-interval-jobs for more frequent feedback.
    • Check console for errors. If chunks are extremely far, each job will load them on demand; this can be slow but should not stall.
  • TPS dips during build:

    • Lower millis-per-tick, jobs-batch-cells, or cells-per-job.
    • Keep autotune.enabled: true so the budget backs off automatically.
  • Themes look too uniform:

    • Add more materials and weights to wall and top sections.

Have fun, cheers! 🎉

👥 Team & Contributors

RADQnico
RADQnicoOwner

⚙️ Compatibility

Environment
🖥️ Server-side
Loaders
paper
Minecraft Versions
1.211.21.11.21.21.21.31.21.41.21.51.21.61.21.7+3 more

🔗 Links

Modrinth Page