PerWorldPlugins: Limit Plugins Per World in Minecraft

Understanding PerWorldPlugins for Minecraft Servers Running a Minecraft server often means juggling a mix of game modes, from survival worlds to creative plots and fast-paced minigames. The challenge is that many plugins, while essential in one context, can break immersion or cause unfair advanta...

Download PerWorldPlugins

Original name: PerWorldPlugins

FileVersionLoaderSize
PerWorldPlugins.jar——11 КБDownload

Understanding PerWorldPlugins for Minecraft Servers

Running a Minecraft server often means juggling a mix of game modes, from survival worlds to creative plots and fast-paced minigames. The challenge is that many plugins, while essential in one context, can break immersion or cause unfair advantages in another. That is where PerWorldPlugins steps in, giving server administrators precise control over which plugins are active in each world. Instead of a one-size-fits-all approach, you can now limit plugin functionality to exactly where it belongs.

What Does PerWorldPlugins Actually Do?

PerWorldPlugins works by injecting its own CommandMap into the Bukkit core and cleverly adjusting how the event system operates. This allows the plugin to intercept and filter events before they reach other plugins, effectively deciding which plugins receive the events based on the world a player is in. The result is a seamless way to block or allow plugins on a per-world basis. For example, you can prevent mcMMO skills from being used inside a minigames world, or disable LWC chest protection in a hardcore survival dimension. The plugin does this without overriding Bukkit’s PluginManager, which means compatibility with other plugins is vastly improved compared to older versions.

Configuration Made Simple

Setting up PerWorldPlugins is refreshingly straightforward. After installation, a config.yml file is generated inside the plugin’s folder. The configuration uses a clear whitelist system. You define a plugin name, then list the worlds where it is allowed to function. If a plugin is not listed at all, it works in every world. Here is a quick example of how the config might look:

limit:
  WorldEdit:
    - world
    - world_nether
  ModReq: []

In this case, WorldEdit will only run in the “world” and “world_nether” dimensions. ModReq has an empty list, so it remains active everywhere. The config also includes two useful options: exempt-login-events and blocked-msg. The first, when set to true, ensures login events always fire in every world, preventing inventory loss when players log into a world where a minigame plugin is blocked. The second lets you customize the message players see when they attempt a command from a blocked plugin, and you can use variables like %player%, %world%, and %plugin%.

Installation and Everyday Use

Getting started is a matter of a few simple steps. Download PerWorldPlugins from its official source and place the JAR file into your server’s plugins folder. Restart the server, and the plugin will create a PerWorldPlugins directory containing the configuration file. Edit config.yml to define your world limits, then reload with /pwp reload in-game. For those who prefer a streamlined experience, this mod can be easily installed via the foxygame.net launcher, a convenient, flexible, and modern Minecraft launcher where you can download mods right from the menu. Once everything is in place, the plugin silently enforces your rules, keeping each world’s plugin environment exactly as intended.

Commands and Permissions

PerWorldPlugins keeps its command set minimal and focused:

  • /pwp version – Displays the current plugin version.
  • /pwp reload – Reloads the configuration file without restarting the server.

Both commands require the pwp.admin permission node, so only trusted staff members can adjust the plugin’s behavior on the fly.

Why Your Server Needs PerWorldPlugins

The benefits go far beyond simple convenience. By limiting plugins to their relevant worlds, you actively prevent exploits and unfair tactics. A player cannot use a survival-oriented plugin to gain an edge in a competitive minigame. More importantly, you cut down on server lag. Many plugins check player movement or other events constantly, even in worlds where they serve no purpose. Blocking them in unused worlds reduces unnecessary CPU and RAM consumption, leaving more resources for what truly matters. This also means you can safely add more features and plugins to your server without worrying about cross-world interference.

Developer Notes and Compatibility

PerWorldPlugins v1.2 and above were built with compatibility as a top priority. Since it no longer overrides Bukkit’s PluginManager, almost all plugins should work without issues. If a plugin previously extended SimplePluginManager, a small code adjustment is needed to retrieve the PluginManager generically, but the fix is minimal. The plugin may appear in stack traces without being the actual cause of an error, so administrators are encouraged to read logs carefully before filing a bug report. The maintainer is actively working on upcoming features like reversible blacklist configuration, in-game world list management, and commands to toggle settings without editing files directly.

Final Thoughts

PerWorldPlugins fills a critical gap for hybrid servers that blend multiple game modes. It gives you the power to tailor the plugin experience to each world, improving fairness, performance, and overall player satisfaction. With a simple configuration, straightforward commands, and strong compatibility, it is an essential tool for any server owner looking to maintain order across a diverse Minecraft universe. Whether you run a small private server or a large network, this plugin helps you keep every world exactly the way you want it.