Core Features & Systems
Dynamic World Management
Effortlessly create new worlds of various types (Normal, Nether, End) with custom seeds or let the server generate a random one. Every world is independent: it keeps its own settings, its own spawn, its own border and its own place in the world list. Worlds can be loaded and unloaded on demand, and worlds you are not using can be kept out of memory until a player needs them.
True Per-World Settings
Every world has its own copy of the server defaults, and every single one of those settings can be changed for one world without touching the others. PvP, passive creatures, hostile creatures, difficulty, hunger, game mode, forced game mode, automatic healing, respawn world, per-world inventories, per-world ender chests and automatic loading are all controlled per world. Changes apply immediately, and a world can be reset to the server defaults at any time.
Seamless Portal System
Design intricate travel networks with our intuitive portal system. Define portal regions using a simple selection tool, then link them to other portals for instant inter-dimensional travel or directly to the spawn point of any world. Portals are aware of the world they were built in, so the same coordinates in another world will never trigger them. Arrivals are safe: travellers land on open ground, are protected from being bounced straight back, and are greeted with travel sounds and particles. A selection outline shows exactly what the portal region will cover.
Portal Options
Each portal can be tuned individually. Give it its own cooldown, require a permission to use it, show a custom travel message, or make it a one-way arrival point that never sends players back. Portals can be moved onto a new selection at any time without losing their connections, and deleting a portal cleans up every link pointing at it.
Persistent Per-World Inventories
Say goodbye to inventory clutter and cross-world imbalances! MultiWorlds999 ensures that each player maintains a separate, persistent inventory for every world they visit. Their items, armor, off-hand contents and ender chest are automatically saved and loaded, providing a truly isolated and immersive experience in each dimension. Servers that prefer a shared inventory can disable separation for individual worlds, and administrators can inspect and restore a player's saved inventory for any world.
Comprehensive World Settings
Gain granular control over every aspect of your worlds. Configure PvP status, creature spawning (passive and hostile), difficulty, hunger mechanics, game mode, forced game mode, automatic healing, custom respawn worlds, per-world inventories, per-world ender chests and automatic loading. These settings are applied to the actual world as well as stored for the plugin, so difficulty and world borders behave exactly as configured.
World Backups and Restore
Back up any world at any time, list every backup you have made, and restore an earlier copy when something goes wrong. Worlds are backed up automatically before they are removed from management, old backups are pruned according to your retention setting, and restoring requires explicit confirmation so a mistake cannot destroy a world.
World Menu
Players and administrators can open a clickable world menu showing every managed world with its environment, loaded status, player count, difficulty and PvP rules. One click travels to that world's spawn, and the menu pages automatically as your world collection grows.
Per-World Chat
Isolate chat to the world players are in, give each world its own chat layout with world, player and message placeholders, send a server-wide announcement through the plugin, and use chat spy to follow conversations in every world at once.
World Aliases
Create aliases for your worlds to make teleporting easier. An alias works anywhere a world name works: teleporting, info, settings, borders, game rules, permissions, portals and the world menu. Aliases can be added, removed and listed from inside the game.
World Borders
Set a world border for each world individually. The size is remembered per world and reapplied whenever the world is loaded or a player enters it.
World-Specific Permissions
Grant or deny permissions that only apply while a player is inside a specific world. Permissions are applied when a player joins and whenever they change world, and changes are pushed to players who are already there.
Reliable Data
All your meticulously configured worlds, portals, aliases, settings and player inventories are automatically saved, with periodic autosaving during play and a full save on shutdown. Default settings are stored in config.yml and live data in data.yml, so your server's unique setup remains intact across restarts.
Commands
/mw help [page]
Show the paged command list. Every command and argument supports tab completion.
/mw create <name> [normal|nether|end] [seed]
Create and generate a brand-new world. The name may contain letters, numbers, underscores and dashes. Choose the world type and optionally provide a seed; without one, a unique landscape is generated. New worlds receive their own copy of the server's default settings.
/mw import <name>
Take over an existing world folder so the plugin manages it, including its settings, spawn, border and portals.
/mw info [world]
Show everything about a world: alias, environment, spawn, border, player count, difficulty, PvP, creature spawning, hunger, game mode, respawn world, inventory rules, permissions and portal count. Without a world name it describes the world you are standing in.
/mw teleport <world>
Travel to the spawn of any world, by name or by alias. Unloaded worlds are loaded automatically when needed.
/mw spawn
Travel to the spawn of the world you are currently in.
/mw setspawn
Use your current position as the spawn of the world you are standing in.
/mw setstartworld
Make the world you are standing in the server's start world. New players are sent there on their first join.
/mw set <world> <setting> <value>
Change a single setting for one world. Settings apply immediately and are saved:
pvp — whether players can damage each other.
animals — whether passive creatures may spawn.
monsters — whether hostile creatures may spawn.
hunger — whether hunger drains; when off, food stays full.
forcegamemode — whether entering the world forces its game mode.
autoload — whether the world loads automatically at startup.
autoheal — whether entering the world restores full health.
inventory — whether the world has its own inventory.
enderchest — whether the world has its own ender chest.
difficulty — PEACEFUL, EASY, NORMAL or HARD.
gamemode — SURVIVAL, CREATIVE, ADVENTURE or SPECTATOR.
respawnworld — the world players respawn in after dying here, or none.
/mw reset <world>
Restore every setting of a world to the server defaults.
/mw world list
List every managed world with its alias, environment, player count, loaded state and start-world marker.
/mw world load <name>
Load a world into the server without teleporting anyone.
/mw world unload <name>
Unload a world after moving its players to a safe world. The main world and the start world cannot be unloaded.
/mw world delete <name>
Remove a world from management after moving its players out and creating a backup. The world folder itself is kept on disk, so nothing is permanently destroyed. Portals and saved inventories belonging to that world are cleaned up as well.
/mw portal create <name>
After defining a region with the /tools selection pickaxe, create a new portal. The portal remembers the world it was built in and is ready to be linked.
/mw portal redefine <name>
Move an existing portal onto your current selection while keeping its links and options.
/mw portal list
Review every portal with the world it belongs to, its corners, and its destination.
/mw portal info <name>
Show a portal's world, corners, destination, cooldown, permission, message and direction.
/mw portal delete <name>
Delete a portal and clean up every link that pointed to it.
/mw portal set <name> <option> <value>
Configure a single portal:
cooldown <seconds> — this portal's own cooldown, or -1 to use the server default.
permission <node|none> — require a permission to use the portal.
message <text|none> — show a custom travel message.
direction both|oneway — a one-way portal only receives travellers and never sends them back.
/mw link <portal> <portal|world|none>
Connect a portal to another portal for two-way travel, or to a world so it leads to that world's spawn. Use none to remove the connection. A portal cannot be linked to itself.
/mw unlink <portal>
Remove a portal's connection without deleting the portal.
/mw border [set] <world> <size>
Set the world border of a world. The size is remembered and reapplied whenever the world is loaded.
/mw gamerule <world> <rule|list> [value] [page]
Set a game rule for a world, or list its current game rules (twelve per page). Invalid rule names and values produce a clear message instead of an error.
/mw permission <add|remove|list> <world> [node] [true|false]
Manage permissions that only apply inside one world. The optional value lets you deny a permission as well as grant it. Changes reach players who are already in the world.
/mw alias <add|remove|list> [world] [alias]
Manage world aliases. Aliases must be unique, and they work anywhere a world name is accepted.
/mw backup <world>
Create a compressed backup of a world immediately. Old backups are pruned according to your retention setting.
/mw backups [world]
List the backups you have made, optionally for one world.
/mw restore <world> <backup> confirm
Replace a world's contents with an earlier backup. The world is unloaded first, the backup is unpacked in its place, and the world is loaded again. The confirmation keyword is required, and the server's main world cannot be restored while the server is running.
/mw inv <player> <world> [restore]
Inspect a player's saved inventory and ender chest for a world. With restore, the saved inventory is placed back into the player's hands, which requires the player to be online.
/mw chat global <message>
Send a server-wide message that reaches every world and the console.
/mw chat spy
Toggle seeing chat from every world even when per-world chat is enabled.
/mw menu
Open the clickable world menu.
/mw reload
Reload the configuration and all saved data, reapply world settings, and restart autosaving without restarting the server.
/tools
Receive the portal selection tool. Right-click a block to mark corner 1, then left-click a block to mark corner 2. The region is outlined with particles and its size is shown so you can confirm it before creating the portal. The tool is marked as a plugin tool, so ordinary wooden pickaxes are never affected.
Configuration
The config.yml file contains the following options:
defaults
The default settings copied into every newly created or imported world. Each world keeps its own copy afterwards.
defaults.pvp — whether players can damage each other.
defaults.animals — whether passive creatures spawn.
defaults.monsters — whether hostile creatures spawn.
defaults.difficulty — the world difficulty.
defaults.hunger — whether hunger drains.
defaults.gamemode — the world's game mode.
defaults.forcegamemode — whether entering the world switches players to that game mode. Off by default so players keep their own mode.
defaults.autoload — whether the world loads automatically at startup.
defaults.autoheal — whether entering the world restores full health.
defaults.respawnworld — the world players respawn in after dying, or blank for normal behaviour.
defaults.inventory — whether worlds have their own inventory.
defaults.enderchest — whether worlds have their own ender chest.
Chat
per-world-chat — when true, chat only reaches players in the same world.
chat.format — the chat layout used while per-world chat is enabled. Supports %world%, %player% and %message%. Leave it blank to keep the server's normal chat layout. Colour codes are supported.
Portals
portal-cooldown — the default cooldown, in seconds, between portal uses. 0 disables the cooldown.
portals.arrival-safety-seconds — how long, in seconds, portals are ignored after a traveller arrives. This prevents instant bouncing between linked portals.
portals.effects — whether travel plays a sound and particles.
Backups
backups.auto-on-delete — whether a world is backed up automatically before it is removed from management. If the backup fails, the world is not removed.
backups.keep — how many backups are kept per world; older ones are removed automatically.
Inventories
inventories.enabled — the master switch for per-world inventories and ender chests.
inventories.autosave-seconds — how often, in seconds, saved inventories are written to disk. 0 disables periodic autosaving. Inventories are always saved on shutdown.
Aliases
world-aliases — extra aliases for worlds that are not managed by the plugin. Managed worlds should use the in-game alias command instead.
Permissions
MultiWorlds999 uses a permission for every command, and all administrative permissions default to operators.
multiworlds999.admin: Grants every MultiWorlds999 command and feature. (Default: op)
multiworlds999.create: Create new worlds. (Default: op)
multiworlds999.import: Take over existing world folders. (Default: op)
multiworlds999.info: View world information. (Default: op)
multiworlds999.teleport: Teleport to worlds and use the world menu. (Default: op)
multiworlds999.spawn: Teleport to the current world's spawn. (Default: op)
multiworlds999.setspawn: Set a world's spawn. (Default: op)
multiworlds999.setstartworld: Set the server's start world. (Default: op)
multiworlds999.set: Change world settings. (Default: op)
multiworlds999.reset: Reset world settings. (Default: op)
multiworlds999.world.list: List managed worlds. (Default: op)
multiworlds999.world.load: Load worlds. (Default: op)
multiworlds999.world.unload: Unload worlds. (Default: op)
multiworlds999.world.delete: Remove worlds from management. (Default: op)
multiworlds999.portal: Create and move portals. (Default: op)
multiworlds999.portal.list: List and inspect portals. (Default: op)
multiworlds999.portal.delete: Delete portals. (Default: op)
multiworlds999.portal.set: Change portal options. (Default: op)
multiworlds999.link: Link and unlink portals. (Default: op)
multiworlds999.border: Set world borders. (Default: op)
multiworlds999.gamerule: Change world game rules. (Default: op)
multiworlds999.permission: Manage per-world permissions. (Default: op)
multiworlds999.alias: Manage world aliases. (Default: op)
multiworlds999.backup: Create and list world backups. (Default: op)
multiworlds999.restore: Restore world backups. (Default: op)
multiworlds999.inv: Inspect and restore saved inventories. (Default: op)
multiworlds999.menu: Open the world menu. (Default: true)
multiworlds999.reload: Reload the plugin. (Default: op)
multiworlds999.chat.global: Send server-wide messages. (Default: op)
multiworlds999.chat.spy: See chat from every world. (Default: op)
multiworlds999.tools: Receive the portal selection tool. (Default: op)