Skip to content

Worlds

The worlds module is a full multi-world manager: create, import, load, unload and delete worlds, tune their properties and gamerules, set per-world spawns, and move players between them โ€” all in-game, no bukkit.yml edits and no restart. It's built for a server that runs more than the vanilla overworld/nether/end: a creative plot world, a resource world you reset on a cycle, a minigame lobby, an event map.

/worlds (plural) vs /world (singular)

Management lives under /worlds (plural), with nodes under uxmessentials.world.*. The singular /world is a small player-state info command that just tells you which world you're standing in โ€” a different module entirely.


Creating & Importing Worlds

create <name> [env] [type] [gen] builds a brand-new world. Beyond the vanilla environments and world types, two built-in generators cover the common special cases:

Generator Result
void An empty world โ€” nothing but the spawn platform you build
flat A superflat world

Already have a world folder on disk (a downloaded map, or one from another plugin)? import <folder> <env> [genโ€ฆ] registers it in place without regenerating a single chunk. New-world defaults (environment, world type, structure generation) live in worlds.conf under defaults {}, and the two generators under generators { void, flat }.


Loading, Unloading & Deleting

Worlds have a clear lifecycle, and each step is its own command:

Command Effect
load <name> Load a registered world into memory
unload <name> Unload it (players are moved out first)
unregister <name> Forget the world without touching its files
delete <name> โ†’ confirm <name> Permanently remove the world and its folder

Deletion is deliberately two-step: delete stages the removal and confirm commits it, within delete-confirm-timeout. The main world is guarded by protect-default-world so it can't be deleted by accident.

Adopting worlds on startup

auto-adopt-loaded picks up worlds other plugins loaded, and auto-load-registered re-loads the worlds you've registered when the server starts โ€” so your world roster comes back exactly as you left it.


Properties & Gamerules

Two commands cover per-world tuning:

  • set <name> <property> <valueโ€ฆ> โ€” world properties (difficulty, PvP, spawn behaviour, keep-spawn-loaded, and so on).
  • gamerule <name> <rule> <value> โ€” any vanilla gamerule (doDaylightCycle, keepInventory, mobGriefing, โ€ฆ), applied to that world alone.

Set keepInventory on the arena world without touching survival, or turn off mob spawning in the lobby โ€” each world carries its own rules.


Per-World Spawn

setspawn <name> pins a world's spawn to where you're standing; spawn [name] teleports you (or, with a name, sends you to a specific world's spawn). This is the anchor tp and portals land players on.


Teleport, Access & Entry Fee

tp <name> [player] sends you โ€” or another player โ€” into a world. Access isn't automatically open: the access {} block in worlds.conf can gate a world behind a permission and charge an entry fee through the economy, so a premium world or a paid event map is a config change, not a plugin.


Portals

Worlds can be wired together with portals โ€” frames that drop a player into a target world (and spawn) when they step through. Combined with per-world access gates and entry fees, portals turn your world roster into a navigable hub without anyone typing a command.


The World Editor GUI

gui [name] opens the world manager as a menu: the bare form lists every world with its state, and picking one opens a per-world editor for properties, gamerules, spawn, and teleport โ€” the same actions as the commands, point-and-click. It runs on the shared menu engine, so it's config-skinnable like every other panel.


Pregeneration

Pre-generating chunks ahead of time stops the lag spikes that hit when players explore fresh terrain. pregen <name> <radius> walks the world outward to radius, and pregen cancel <name> stops it. The job is paced by worlds.conf โ€” pregen { max-radius, max-concurrent-chunks, tick-period-ticks } โ€” so it fills in the background without dragging down TPS.


Backup & Restore

Command Effect
backup <name> Snapshot a world
backups <name> List a world's snapshots
restore <name> <backup> โ†’ restoreconfirm <name> Roll a world back (staged)

Snapshots land in backup { directory } and are pruned to backup { retention-count }. Like deletion, restore is two-step so you can't overwrite a live world by fat-finger.


Auto-Unload

Idle worlds don't need to sit in memory. auto-unload (off by default) unloads a world after idle-minutes with no players, sweeping every sweep-interval-seconds, skipping anything in excluded-worlds. Keep the resource world loaded only when someone's actually mining it.


Placeholders

The current world's stats are exposed through PlaceholderAPI (%uxmessentials_*% families) for use in scoreboards, tablists and holograms โ€” so a world name, player count, or spawn can appear on your HUD without extra plumbing.


Next Steps