All Mods Resource Packs Data Packs Shaders Modpacks Plugins
BetterStructures

BetterStructures

by MagmaGuy • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Discord Nightbreak

Wiki

🟠 Main Features (100% optional and configurable!)

  • Add hand-crafted structures to your Minecraft world!
  • Add unique randomly generated modular dungeons to your world!
  • Use pre-made packs or build your own with WorldEdit!
  • Fits any world generator.
  • Chests with randomized loot.
  • Optional vanilla mob spawns inside structures.
  • Contains custom props and furniture when used with the BetterStructures Prop Pack
  • Only generates in new chunks.
  • Supports custom items.
  • EliteMobs integration for advanced boss fights.
  • MMOItems & MythicMobs integrations.
  • Fast & lightweight with no noticeable server impact when exploring.
  • Want an even better experience? Works great with EliteMobs, Free Minecraft Models, Resurrection Chest, and Resource Pack Manager — all free!

Important: Make your own content or download at least one of the free packs below so structures can start spawning.

🟠 Requirements & Recommendations

  • Required: WorldEdit

  • Recommended:

    • EliteMobs for boss fights
    • WorldGuard for region protection
    • Note: EliteMobs-specific packs (Shrines 1 & 2, Caves & Lost Civilizations Free & Premium) require EliteMobs.

⚠️ Do not use AsyncWorldEdit — it will break things.

🟠 How to Setup

Nightbreak Yearly Sale - 20% off through October 15

🟠 Additional downloads

Click here for every free & premium download with more info!

🟠 Performance hints

Open performance tips

For normal servers

  1. Check your server view distance. This is in server.properties. Higher view distances generate exponentially more chunks — a view distance of 40 can result in ~5000 chunks loaded per player.

For low‑end servers

  1. Make sure you have enough RAM. Rough guideline: ~3 GB total available for the server (Minecraft + plugins), not that BetterStructures itself uses that much.

  2. Alternatively, pregenerate your world. Use a world pregenerator with BetterStructures installed to bake structures into the map. After generation, BetterStructures uses essentially no power. Downside: you can’t add new structure packs to that world without generating a new one (same as vanilla).

🟠 View More by Magmaguy!

🟠 Partner servers

Matecraft is the official BetterStructures server! It’s run by me and is always up-to-date with the latest experimental features and new build packs. Cozy community, dedicated players — come see the plugins as they were designed to work!

elitesurvival.matecraft.org

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.3 26.2 26.1.x +1
Paper Purpur Spigot
21h ago 1
26.3 26.2 26.1.x +1
Paper Purpur Spigot
21h ago 1
26.3 26.2 26.1.x +1
Paper Purpur Spigot
21h ago 1
26.2 26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.2 26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.2 26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.2 26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.2 26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.2 26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.2 26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.2 26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
26.1.x 1.21.x
Paper Purpur Spigot
21h ago 1
1.21.x
Paper Purpur Spigot
21h ago 1
1.21.x
Paper Purpur Spigot
21h ago 1
1.21.x 1.20.x
Paper Purpur Spigot
21h ago 1
1.21.x 1.20.x 1.19.4
Paper Purpur Spigot
21h ago 1
1.21.x 1.20.x 1.19.4
Paper Purpur Spigot
21h ago 1
1.21.x 1.20.x 1.19.4
Paper Purpur Spigot
21h ago 1
1.21.x 1.20.x 1.19.4
Paper Purpur Spigot
21h ago 1
1.21.x 1.20.x 1.19.4
Paper Purpur Spigot
21h ago 1
1.21.x 1.20.x 1.19.x +2
Paper Purpur Spigot
21h ago 1
1.21.x 1.20.x 1.19.x +1
Paper Purpur Spigot
21h ago 1
BetterStructures 2.7.7:
  • [New] Content packs can ship freeminecraftmodels/, elitemobs/ and betterstructures/ folders, plus their own treasures/ and generators/.
  • [New] Added [custom] sign markers and the BuildCustomMarkerEvent and BuildPasteCompleteEvent API events.
  • [New] Added the Tommyknockers modular content packages.
  • [New] Plugin updates can be applied without a restart with /bs applypluginupdate or the nightbreak.applyPluginUpdatesWithoutRestart setting.
  • [Fix] Boss signs in modular structures pasted into existing worlds now spawn their bosses.
  • [Fix] Paintings and item frames in pasted modules are kept and turn with rotated modules.
  • [Fix] Sign markers written by plugins or older schematics are read again.
  • [Fix] Reloads and plugin updates no longer leave old copies of the plugin running.
  • [Tweak] Byte-identical duplicate content files no longer produce warnings.
BetterStructures 2.7.6:
  • [Fix] Fixed configured container loot, vanilla loot tables and nearly full containers.
  • [Fix] Excluded disabled packages from generation and corrected terrain scoring.
  • [Fix] Refreshed changed schematics and fixed repeated failed dungeon combinations and circular module clones.
  • [Fix] Fixed Paper errors when replacing block entities.
  • [Fix] Failed chunk pregeneration no longer reports completion or changes the world border.
  • [Fix] Preserved configuration and recovery files after failures, and cleared stale Nightbreak results after reloads.
  • [Tweak] Spread structure preparation and finishing across ticks and reduced default modular dungeon dimensions.
  • [Fix] Imported enchantment definitions and scripts bundled with structure packs.
BetterStructures 2.7.4:
  • [Tweak] Reduced configuration import and cleanup overhead.
BetterStructures 2.7.3:
  • [Fix] Regenerated legacy world settings to protect EliteMobs worlds, preserving the original configuration.
  • [Fix] Fixed configuration cleanup compatibility when updating other Nightbreak plugins.
BetterStructures 2.7.2:
  • [Fix] Fixed modular structure generation ignoring the configured paste budget.
  • [Fix] Fixed command access and suggestions for players without the required permissions.
  • [Fix] Fixed content updates failing while players were inside the world.
  • [Fix] Wait for imported model reloads to start before continuing content installation.
BetterStructures 2.7.1:
  • [Fix] Preserved configured world choices and corrected EliteMobs dungeon ownership checks.
  • [Fix] Moved terrain scans out of chunk-load callbacks and preserved pending scans across reloads.
  • [Fix] Checked the full dungeon footprint for existing generation and protected areas, including a final check before placement.
  • [Fix] Selected duplicate schematic filenames consistently.
  • [Tweak] Cached converted schematics on disk and reduced repeated generation warnings.
  • [Fix] Kept Nightbreak setup menus responsive during Bedrock refreshes.
BetterStructures 2.7.0:
  • [New] Added /bs forcereinstallcontent <package|all> for repairing current Nightbreak structure packs
  • [New] Admins are now notified in game about unread releases and can review them from the BetterStructures changelog command
  • [New] Added /nightbreaklogout for clearing the stored Nightbreak account token
  • [Fix] Schematic loading and pasting now use bounded queues and caches, reducing startup memory use and large-paste lag
  • [Fix] Modern and custom WorldEdit block data, signs, containers and other NBT-backed blocks now paste reliably
  • [Fix] Content reloads are serialized, defer world generation safely and fail closed instead of exposing partially reloaded registries
  • [Fix] Invalid placement distances and offsets now fall back safely instead of breaking structure generation
  • [Fix] Structure fitting, terrain checks, chunk scanning and modular generation now remain deterministic under concurrent world generation
  • [Fix] Downloaded plugin updates are validated before replacing the installed jar
  • [Tweak] Startup no longer waits for unrelated plugin initialization unless imported content actually requires it
BetterStructures 2.6.3:
  • [Fix] Elite shrine bosses now register immediately after a content pack import — BetterStructures triggers an EliteMobs reload so shrines stop pasting without their bosses
  • [Fix] Modular generation now carves interiors correctly when generating into existing terrain — air blocks are pasted again instead of leaving structures filled in
  • [Fix] Fixed a module generator selection bug that could pick out-of-range generators
  • [Tweak] /betterstructures generatemodules tab-completion now refreshes after reloads instead of going stale
  • [Tweak] The hourly version check no longer re-prints the same status lines every hour
  • [Tweak] Updated the bundled MagmaCore library
BetterStructures 2.6.2:
  • [Fix] First-time setup now completes and settings save correctly when other MagmaGuy plugins are installed
BetterStructures 2.6.1:
BetterStructures 2.6.1

  • [Fix] Fixed structure fitting and paste checks for current WorldEdit/Paper behavior
  • [Fix] Fixed invalid enchantment handling in default chest contents
  • [Tweak] Improved schematic safety checks and rebuilt with the latest shared 26.2 compatibility fixes
BetterStructures 2.6.0:
  • [New] Added support for Minecraft 26.2
  • [Fix] Fixed structure pasting and scanning for WorldEdit block states Bukkit cannot convert directly (Custom blocks from other plugins can now be in builds)
  • [Fix] Fixed terrain checks for air, liquid, and special WorldEdit blocks
  • [Fix] Fixed default chest contents across the chain material rename
  • [Tweak] Improved warnings for schematic configs with missing or invalid generators
BetterStructures 2.5.0:
  • [New] Check for and one-click download BetterStructures updates in-game from the setup menu (the server checks on boot and refreshes about hourly; restart to apply)
  • [New] Automatic Updates toggle (off by default) that downloads updates on startup, also exposed as autoDownloadPluginUpdates in config.yml
  • [New] Recommended Plugins view in the setup menu (plus a recommendedplugins command) and a /nightbreak plugins catalog to browse MagmaGuy's other plugins
  • [Tweak] Reworked the setup and first-time setup menus with clearer, clickable actions, including a prompt to renew your account token when it expires
  • [Tweak] Renamed bulk commands (downloadallcontent / updateallcontent); downloadall now checks for plugin updates alongside content
  • [Fix] Reworked valid-world tracking to key worlds by name and prune them when worlds unload
BetterStructures 2.4.0:
  • [New] Barrel loot generation — barrels in schematics and modules now get treasure rolled into them on placement, gated by new generateLootInBarrels toggles on both the generator config (top-level kill-switch) and per-module config (defaults true on both).
  • [New] Inherent barrel detection — barrels baked into schematics and modules are now picked up automatically with no special markup required; routed through the same fill pipeline as chests.
  • [New] barrelTreasureFilename override — per-schematic and per-module field for pointing a placement at a specific treasure config; falls back to the generator-level default on typo or missing rather than skipping the schematic.
  • [New] treasure_barrel_food.yml premade — ships a tiered food loot map (mean=1, stddev=0.7) as the default barrel treasure, matching the treasure_*.yml convention.
  • [New] Tiered barrel food loot map — drop-in food tier definitions backing the new premade.
  • [Fix] treasure_barrel_food lookup now resolves correctly — the premade key was missing .yml, breaking every generator and module default; TreasureConfig.getConfigFields() now also auto-appends .yml so existing user YAMLs keep working without manual edits.
  • [Fix] Schematic chest override now resolves via getTreasureFile() instead of getFilename() — a typo in treasureFile or barrelTreasureFilename no longer excludes the schematic from generation.
  • [Fix] ChestFillEvent.getTreasureFilename() now reports the per-schematic treasure file when one is set, instead of always reporting null.
  • [Fix] Removed a spurious "Failed to get barrel treasure config file" warning logged per module on partial deploys.
  • [Tweak] Setup menu rebuilt on MagmaCore's SetupMenuBuilder shared UI — same Structure Packs / Module Packs filters, cleaner filter wiring.
  • [Tweak] MagmaCore shared assets now exported on enable via MagmaCore.exportSharedAssets(this).
  • [Tweak] Various MagmaCore library improvements (NMS v26 / Paper 26.1 support, type-based EntityDimensions reflection with cached lookup, WorldFolderResolver and Paper-migration debris quarantine, TemporaryBlockManager, SetupMenuBuilder + InfoButtonFactory + NightbreakSetupIcons shared UI, ContainerAllowlist / WorldProtectionRules instance protection, MagmaCore.exportSharedAssets / enableWorldProtections / isShutdownRequested, AdvancedCommand optional-argument support, LocationAPI with WorldGuard + GriefPrevention providers, Nightbreak token-change subscribers, ClientboundEntityPositionSyncPacket adoption on 1.21.2+ with Bedrock ClientboundBundlePacket skip, ArmorStand HeadPose force-send every tick for Bedrock attachable rebind, DAMAGE_INDICATOR outbound particle-count clamp, per-plugin Netty handler name in PacketInteractionListener, lazy Lua field support, ZipFile STORED-with-EXT-descriptor fix, dedup / rate-limited Nightbreak auth-failure logs, three-tier BedrockChecker detection — name pattern ^\..*\d{4}$ + UUID-MSB == 0 + case-insensitive plugin lookup — so Bedrock viewers are detected even when Floodgate hasn't registered them yet).
BetterStructures 2.3.1:

[New] Now fully updated up to MC 26.1.2
[Fix] Updated plugin.yml api-version from 1.14 to 1.21.4 (the old value was incorrectly triggering legacy 1.12-era Material rewriting)
[Tweak] Various MagmaCore library improvements (MC 26 Spigot compatibility, Bedrock position sync, classloader isolation for shaded copies, etc.)
BetterStructures 2.3.0:
  • [New] Spawn protection radius — structures no longer generate within a configurable radius of world spawn (default: 100 blocks), applies to all worlds
  • [New] spawnProtectionRadius config option to control or disable (set to 0) the spawn exclusion zone
  • [Fix] Fixed content package folder names for "103 Default Structures" and "101 Premium Shrines" not matching Nightbreak download slugs
  • [Tweak] Updated MagmaCore dependency to 2.0.0-SNAPSHOT
  • [Tweak] Removed standalone EasyMinecraftGoals dependency (now bundled in MagmaCore)
  • [Tweak] Content package system refactored to use MagmaCore's AbstractNightbreakContentPackage — download, access checks, and UI item generation now handled by the core library
  • [Tweak] Install/uninstall operations are now async-safe with proper CompletableFuture handling
  • [Tweak] Reload command now uses MagmaCore's NightbreakPluginBootstrap for pending reload sender tracking
  • [Tweak] Added EMG package relocation to shadow jar to avoid classloader conflicts
  • [Tweak] Updated Shadow plugin to 9.0.0-beta12
  • [Tweak] Removed unused commons-lang3 and reflections dependencies
BetterStructures 2.2.0:
  • [New] Nightbreak content management integration - content packages can now be downloaded and updated directly through Nightbreak accounts
  • [New] /bs downloadall command to bulk download all available content packages
  • [New] /bs updatecontent command to update outdated content packages
  • [New] Revamped first-time setup menu with three options: Recommended Setup (Nightbreak-guided), Manual Setup, and Use Current Content
  • [New] Setup menu now shows real-time access info and out-of-date status for content packages
  • [New] Plugin initialization now uses MagmaCore's async/sync initialization system with progress reporting
  • [Fix] Fixed content package and treasure config duplication on reload
  • [Tweak] Updated MagmaCore dependency to 1.28-SNAPSHOT
  • [Tweak] Adjusted default spawn distances - surface: 31→27, sky: 95→90, liquid: 65→60
  • [Tweak] Reload command refactored to use dedicated content reload method instead of full plugin restart
  • [Tweak] Updated help text and setup menus to reference Nightbreak workflow
  • Updated to Minecraft 21.11
Exploration pack update: https://nightbreak.io/plugin/betterstructures/#exploration-pack

BetterStructures 2.1.0:
  • [New] Added /bs pregenerate <location> <shape> <radius> <Set world border> command to pregenerate the world without the need of using chunky or other plugins. It also has a performance monitor to prevent servers from crashing or taking up too many resources while generating.
  • [Tweak] Moved some of the logic to MagmaCore
BetterStructures 2.0.4:
  • [New] Modular builds can now be provided a y level to start at
  • [Tweak] Optimized vertical location of builds to better fit world generation
BetterStructures 2.0.3:
  • [Fix] Fixed issue where modular content was not correctly listed as correctly installed when installed
BetterStructures 2.0.2:
  • [New] Updated for Minecraft 1.21.9 and 1.21.10
  • [New] Modular dungeons can now use whitelisted worlds and per-type worlds (avoids them appearing in the nether/end when they are not designed to)
  • [Fix] Fixed problem where the default modular dungeons could not cope with not having all content installed (fixes admins only using the free pack)
  • [Tweak] Better error messages for modular content
BetterStructures 2.0.1:
  • [New] Updated for Minecraft 1.21.9
  • [New] Non-modular dungeons can now correctly paste props from FreeMinecraftModels
  • [Fix] Critical fix to defaults for spawning dungeons
First release of modular builds! Generate modular dungeons right in your server!

Free pack: https://nightbreak.io/plugin/betterstructures/#dungeoneering-modules-free

Premium pack: https://nightbreak.io/plugin/betterstructures/#dungeoneering-modules-premium

These packs are made to stack, so you will have more modules if you run both!

After installing, just walk around in your world to generate dungeons as with every other structure type!
Initial release on Modrinth
BetterStructures Icon
Download BetterStructures
Select game version
Select platform