Limit plugins to certain worlds!
Plugin Creator: MylesC
Plugin Maintainer: Incomprehendable

What does this plugin do, and how does it work?

PerWorldPlugins will inject the Bukkit core with its own PluginManager and CommandMap, allowing you to control which plugins receive the events needed to function, and more importantly, where they receive those events. Using this plugin, you can block plugins in certain worlds. If you're hosting a hybrid server, you're probably overflowing with excitement. Sick of people using mcMMO in your minigames? Block mcMMO in the minigames world! Don't like LWC in your hardcore world? Block that, too!


This is an example of the config

    - world
    - world_nether
  ModReq: []

The configuration of PerWorldPlugins is simple and easy. Referring to the example above, WorldEdit would only work in the worlds 'world' and 'world_nether'. However, ModReq will work in any world.

REMEMBER: If a plugin has no world list, it will work in every world.

exempt-login-events is a self-explanatory feature. This controls whether or not PerWorldPlugins will allow login events to work in every world, no matter the limits. This is highly recommended to be true. It will cause some memory leaks. For example, most minigames plugins will save a player's inventory, so when they log out and log in, their inventory will be returned. If they return to a world that blocks the minigames plugin and this boolean is set to false, their inventory will be lost. Forever.

blocked-msg is also self-explanatory. This is just the string that is sent to players when they try a command from a plugin that is blocked in their current world. And no, there was no way to explain that easier.

You can also use these variables in the string:

  • %player% - The name of the player receiving the message
  • %world% - The name of the world that the player is currently in
  • %plugin% - The name of the plugin that is blocked in the world.


API: Currently we don't support one. If you want one, suggest the features you want!

If your plugin is incompatible, it is mainly because the plugin might extend to SimplePluginManager. PerWorldPlugins will not extend to that class due to its protection; how can you expect us to do so without some more l33t hacky code manipulation?

Here's an example on how to fix it:

Before: (incompatible)

SimplePluginManager spm = (SimplePluginManager)Bukkit.getServer().getPluginManager();
Field scmF = spm.getClass().getDeclaredField("commandMap");

After: (compatible!)

PluginManager pm = Bukkit.getServer().getPluginManager();
Field scmF = pm.getClass().getDeclaredField("commandMap");

Done! That's it. Even as a bonus, if someone decides to make another PluginManager, your plugin will already work with it.

Installation and Use

  1. Download PerWorldPlugins.
  2. Place PerWorldPlugins.jar into your plugin folder.
  3. Start up (or restart) your server.
  4. PerWorldPlugins should have created a folder, called "PerWorldPlugins". Go in there, and edit the configuration file. (server\plugins\PerWorldPlugins\config.yml)
  5. Type /pwp reload in-game, and enjoy the plugin!

Video Tutorials/Showcases

Bugs and Issues

  • PerWorldPlugins may break another plugin on reload. We haven't found any yet, but the cause of this is due to strange event registering. If it happens, just restart the server.
  • Some plugins may require a server reboot to limit. As above, this is caused by how that plugin handles its events.
  • We will probably never support plugins that use methods such as getAllPlayers() because we can't necessarily control that. Plugins that rename items may also be incompatible.
  • World-management plugins, like Multiworld or Multiverse, will cease to function properly if you limit them. If they do, do not limit them!
  • Because it injects a customized PluginManager into the Bukkit core, PerWorldPlugins will appear during errors. This does not mean that PWP is the issue. Make sure that you can read stack traces well enough to determine whether or not the issue is from my end.


  • Fix up and prevent certain exploits and unfair tactics in places. (like the mcMMO/Minigames example)
  • Cut down on server lag; some plugins like SurvivalGames check player movement, which fires everywhere, costing you RAM and CPU usage.
  • Add more features and plugins into your server.


You can find the GitHub source here -
You can download stable builds by looking at the Files tab at the top.


/pwp version - Displays the version of the plugin.

/pwp reload - Reloads the config.


pwp.admin - Gives access to reload and view the plugin's version.

Developer's Server

Shameless self-advertising! If you want to join Incomprehendable's Minecraft server, you can do so below!




You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of ThoLav ThoLav Jan 25, 2014 at 16:22 UTC - 0 likes

    @lIndependentl: Go

    Give it a try. I don't have factions, but some other plugs which didn't run with old version.

    If I had helped you, a like would be nice. Thank you.

    Have a nice day,

    The most powerful way to customize your server! BFAK:90933762,e04fa0d4e974e5ff638ac67d8251edbe736aaa8f049d2b319264af7dc5ca6cdd

  • Avatar of lIndependentl lIndependentl Jan 25, 2014 at 16:18 UTC - 0 likes

    And another question, does the Factions work with this plugin¿? I mean, i only want factions on especific world, the older versions didn't work. This version does?

    Sincerely, Joan.

  • Avatar of lIndependentl lIndependentl Jan 25, 2014 at 16:11 UTC - 0 likes

    @ThoLav: Go

    Ok man, found it and it worked!! Thanks to Incomprehendable by keeping this plugin update.!! This is the best.

  • Avatar of ThoLav ThoLav Jan 25, 2014 at 16:07 UTC - 1 like
  • Avatar of lIndependentl lIndependentl Jan 25, 2014 at 16:06 UTC - 0 likes

    @ThoLav: Go

    Where do yo put that? Because my plugin i'm trying to load it with PlugMan and it says it needs a loadable plugin file. Help please ;)

  • Avatar of ThoLav ThoLav Jan 25, 2014 at 14:37 UTC - 0 likes

    @jp1997: Go

    Did you change it inside the jar? It works for me.





  • Avatar of jp1997 jp1997 Jan 25, 2014 at 14:12 UTC - 0 likes

    @ThoLav: Go

    I've tried this...

    "Se não sabes, aprende; Se já sabes, ensina" Confúcio

  • Avatar of ThoLav ThoLav Jan 25, 2014 at 14:03 UTC - 0 likes
  • Avatar of jp1997 jp1997 Jan 25, 2014 at 14:01 UTC - 0 likes

    @lIndependentl: Go

    I start the server, and the errors appear...

  • Avatar of lIndependentl lIndependentl Jan 25, 2014 at 12:56 UTC - 0 likes

    Whats does happens when you get that error? (I'm curious) but not the owner. I need this plugin but I want to make sure that this plugin works correctly. Thanks for updating, if you need help add me on skype AppleCraftEs i know about plugins.


Date created
Jun 12, 2013
Last update
Mar 01, 2014
Development stage
  • enUS
Public Domain
Curse link
Recent files