Skip to main content

BetterStructures Commands

Use /betterstructures or /bs.

Setup and Content

CommandPurpose
/bsMain help and status command
/bs initializeFirst-time setup flow (opens the first-time setup menu)
/bs setupOpens the setup/content menu
/bs recommendedpluginsShows companion plugins that work well with BetterStructures
/bs downloadallDownloads the plugin update (if any) and all available content, then reloads
/bs downloadallcontentDownloads all available content packages only (no plugin update)
/bs updatecontentDownloads updates for outdated content (alias: /bs updateallcontent)
/bs forcereinstallcontent <package|all>Re-downloads content through the normal authenticated pipeline even when the installed version is already current. Tab completion offers all plus every Nightbreak package slug.
/bs downloadpluginupdateDownloads a pending plugin update (requires a restart to apply)
/bs reloadReloads BetterStructures configs and content, and imports pending content
/bs versionShows plugin version

About /bs reload

/bs reload no longer disables and re-enables the plugin. It now performs an in-place content reload: config.yml and ValidWorlds.yml are re-read on the server thread, then treasure, generator, module-generator, spawn-pool, schematic, module and content-package configs are rebuilt on a worker thread. Commands, listeners and the NMS adapter are left registered.

Consequences worth knowing:

  • While a reload is running, /bs place, /bs lootify, /bs pregenerate and /bs generateModules are refused with a "content is reloading" message, and newly generated chunks are skipped rather than scanned.
  • If you fire /bs reload again while one is in progress, your request is queued and a second full reload runs afterwards, so a file you changed mid-reload is still picked up.
  • If the reload fails, BetterStructures disables itself on purpose rather than continuing with half-empty content registries. Check the console for the cause and restart the server after fixing it.

About /bs forcereinstallcontent

Normal downloads skip a package whose local version already matches the remote one, which makes them useless when the files on disk have been damaged or partially deleted. forcereinstallcontent bypasses that version check and pushes the selected package back through the same authenticated download, import and reload pipeline.

  • all selects every package that BetterStructures currently believes is downloaded, installed or out of date. If nothing matches, the command refuses and asks you to name a slug directly - which is what you want when a package's files are completely missing.
  • Naming a single slug reinstalls just that package.
  • An unknown slug is rejected with a message pointing you at tab completion.

The download/update, recommended-plugins, and plugin-update commands are provided by the shared MagmaCore Nightbreak system that is bundled into BetterStructures. The same setup menu surfaces a Plugin Update entry, a Recommended Plugins entry, and an Automatic Updates toggle (see Setup).

Utility and Admin Commands

CommandPurpose
/bs place <schematic> <type>Places a structure manually. Valid types: SURFACE, UNDERGROUND_SHALLOW, UNDERGROUND_DEEP, SKY, LIQUID_SURFACE
/bs lootify <generator> <rarity> <minAmount> <maxAmount> <weight>Adds the held item to a treasure table. The generator must be a valid treasure config, the rarity must exist in that config, minAmount must be at least 1, maxAmount must be at most 64, and you must be holding an item.
/bs pregenerate <centerType> <shape> <radiusInBlocks> <applyWorldBorder>Pre-generates chunks with BetterStructures enabled. The world is derived from the player's current world. centerType: HERE, WORLD_CENTER, WORLD_SPAWN. shape: SQUARE, CIRCLE. applyWorldBorder: TRUE/FALSE.
/bs cancelPregenerateCancels active pregeneration in the player's current world (alias: /bs cancelpregenerate)
/bs generateModules <generatorFile>Generates modular content from a module generator file
/bs teleport <world> <x> <y> <z>Teleports to a specific location (alias: /bs tp)
/bs silentToggles certain operator warnings

Permissions

PermissionDescriptionDefault
betterstructures.setupAccess to /bs setup, /bs recommendedplugins, /bs downloadallcontent, and /bs updatecontentOP
betterstructures.initializeAccess to /bs initializeOP
betterstructures.generatemodulesAccess to /bs generateModulesOP
betterstructures.generatemodules.slowlyRegistered in plugin.yml but not currently used by any command in the source code. Likely vestigial.OP
betterstructures.generatemodules.instantlyRegistered in plugin.yml but not currently used by any command in the source code. Likely vestigial.OP
betterstructures.*Wildcard for utility and admin commands (place, pregenerate, cancelPregenerate, reload, teleport, version, lootify, /bs help) plus the admin content commands /bs downloadall, /bs downloadpluginupdate and /bs forcereinstallcontent. Held by OPs by default.OP
(none)/bs silent has no permission gate in source — any sender can run it.

betterstructures.setup covers the content browsing/management commands, betterstructures.initialize covers first-time setup, and betterstructures.generatemodules covers dungeon generation. The combined plugin-and-content /bs downloadall, the plugin-only /bs downloadpluginupdate, and the repair-oriented /bs forcereinstallcontent are gated behind the admin wildcard betterstructures.*. The .slowly and .instantly variants are still declared in plugin.yml but no command currently checks them.

betterstructures.* also controls the first-time setup reminder: players holding it get a one-time join message pointing at /bs initialize until setupDone is set to true in config.yml.