[INACTIVE][ADMN/SEC] WorldConfig v1.2.1 - MultiWorld WorldGuard! [602]

Discussion in 'Inactive/Unsupported Plugins' started by Meta1203, Mar 16, 2011.

  1. Offline

    Meta1203

    Intro:

    Hello! This is my first plugin submission, and am trying to get it off on the right track.
    I give you, WorldConfig! This little baby allows you to, in multiple worlds,:
    • Turn on and off fire
    • Turn on and off monsters and passive mobs
    • Prevent illegal blocks
    • Stop explosions
    If you have any ideas for this, please post them!


    Supports Permissions!
    Commands
    Code:
    /god - Makes you invincible.
    /clear - Clears your inventory.
    /heal [player] - Heals you or other.
    /wolfpower # - Spawn wolves!
    /wcreload - Reloads worlds.yml.

    Files:

    worlds.yml (false to disable):
    Code:
    ##
    # Default Configuration for WorldConfig 1.2
    ##
    worlds:
    # World Name
        world:
    # Disable certain mobs
            mobs:
                aggressive: true
                passive: true
    # Disable Explosions
            explosions: true
    # Disable Fire
            fire:
                flint: true
                lava: true
                spread: true
    # Illegal Blocks (list) that a player cannot put down
            illegalblocks:
            - 46
    # Prevent Water/Lava from destroying these blocks (list)
            flow:
                lava:
                - 50
                water:
                - 50
    # Disable certain types of damage
            health:
    # All fall, suffocation, and cactus damage
                block: true
    # All damage from mobs
                monster: true
    # All damage from fire and lava
                fire: true
    # All damage from drowning
                drowning: true
        nether:
            mobs:
                aggressive: true
                passive: true
            explosions: false
            fire:
                flint: false
                lava: false
                spread: false
            illegalblocks:
            - 46
            flow:
                lava:
                - 50
                water:
                - 50
            health:
                block: true
                monster: true
                fire: true
                drowning: true
    
    Change Log:

    • [v1.0] Initial Release
    • [v1.1] Added more control, added permissions
    • [v1.2] Added health control, as well as /god, /heal, and /wcreload
    • [v1.2.1] Fixed for bukkit 602, removed water flow control due to problems
    Download:


    Download here!
     
    BaMDawn and dwi like this.
  2. Offline

    SAMDAN

    Kool. Kinda like worldguard, but simpler. It is much easier to use.
     
  3. Would it be possible to seperately control if lava can set fire to blocks, and what blocks lava is allowed to spread on. Kinda like WorldGuard does it already.
     
  4. Offline

    sillyrosster

    @Graloth

    Are you having any problem with the fire spread?
     
  5. Offline

    SunShe

  6. @sillyrosster not at all, it works as advertised, i would just preferr having finer control over lava. In case you are having trouble, settings things to false in the config disables them in world, so to enable fire you have to set it to true.

    It's a bit counter intuitive, especially if you used WorldGuard before, where on (true) means that the protection is on, and off (false) means its off, while here false means protection is on, and true means its off.

    Its not a wrong way to put it, just a different way to think, false = the event not allowed (i.e. fire) and true = event allowed.

    Feature requests:
    • More control over fire:
      • Should fire be blocked from flint & steel?
      • Should fire be blocked from lava?
      • Should fire be allowed to spread? (this way people can still set fire to 1 block, but it wont spread)
      • What blocks should lava be able to flow on? (empty for default SMP lava behavior)
    • Re-wording of the config file, or include a simple comment that explains "Set to false to prevent the event" or something similar.
    • Add permissions for each individual protection so that those who have them will be able to bypass them, for example anyone with "WorldGuard.bypass.flintandsteel" would be able to set fire with flint and steel, and if they then also have "WorldGuard.bypass.firespread" they could set whole forest on fire instead of just 1 block.
    I can almost guess some of the functionality wont be possible, as i doubt the server tells you who started the initial fire on every time it spreads, but i make these requests so that you could hopefully add some of them (#1 mostly)
     
  7. Offline

    Meta1203

    I am currently adding these features! (That first one was sort of a rough draft...) There is one problem... You cannot bypass fire spread with permissions, because the world does that, not the player. You could trace it, but that would take quite a bit of storage and computation for a large fire. Here is a sneak peak of the latest config file!
    Code:
    permissions: true
    worlds:
        world:
            mobs:
                aggressive: true
                passive: false
            explosions: false
            fire:
              flint: true
              lava: true
              spread: true
            illegalblocks:
            - 90
            - 46
            - 16
            flow:
              lava: false
              water: true
        nether:
            mobs:
                aggressive: true
                passive: true
            explosions: true
            fire:
              flint: true
              lava: true
              spread: true
            illegalblocks:
            - 90
            - 16
            flow:
              lava: false
              water: true
     
  8. 1.1 generates this error when i set fire to a tree in a world that should have been protected, it works 100% with 1.0, but not with 1.1:
    Code:
    09:16:17 [SEVERE] Could not pass event BLOCK_IGNITE to WorldConfig
    java.lang.NullPointerException
    
        at com.nijiko.permissions.Control.permission(Control.java:295)
    
        at com.nijiko.permissions.Control.has(Control.java:269)
    
        at com.bukkit.meta1203.WorldConfig.WorldConfigBlockListener.onBlockIgnite(WorldConfigBlockListener.java:71)
        at org.bukkit.plugin.java.JavaPluginLoader$27.execute(JavaPluginLoader.java:294)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:255)
    
        at net.minecraft.server.BlockFire.a(BlockFire.java:102)
        at net.minecraft.server.World.a(World.java:1540)
        at net.minecraft.server.World.g(World.java:1439)
    
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:348)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:272)
    
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    
    i run Permissions 2.5.4, on CB#551, since i see some mentions of Permissions in it

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 12, 2016
  9. Offline

    Meta1203

    Updated to 1.2. Added /god, /heal, and /wcreload. The permissions are:
    WorldConfig.etc.(god|heal|reload)
    Also added damage prevention (fall, monster,fire,water)
     
  10. Offline

    Boon Pek

    It'd be better if there were illegal block support for permissions :)
     
  11. Offline

    Stormwolf

    Could you add support for fall damage and suffocation damage?
     
  12. Offline

    Meta1203

    Already have it. The Permissions for bypassing are
    Code:
    WorldConfig.bypass.(flint|illegal)
    .
    It falls under the "block" damage type. Just disable that to get rid of all fall, suffocation, and cactus damage.
     
  13. Offline

    Jaripsi

    I decided to make a world full of wool but the fire spread anyway... It did limit the spreading but not completely. It still spreads from block to block. Would be nice if all "fire blocks" just turned into air blocks immediatly after "placing them".
     
  14. Offline

    Plague

  15. Offline

    AgentKid

    Seems to be broken for build 612. Any fix?
     
  16. Offline

    Meta1203

    New fix being uploaded now! (NOTE!!! All water/lava flow has been removed. Will be added back once I figure out how... =/)
     
  17. Offline

    tekac

    @Meta1203 so .. water and lava won't flow? :confused:
     
  18. Offline

    dwi

    I would like to see option to block creeper explosions (damage to players, but not destroying blocks around)
     
  19. Offline

    Meta1203

    Lava and water will flow. I disabled the system to prevent water breaking certain blocks, such as torches.
     
  20. Offline

    wizjany

    You might want to change the title...it's very misleading. This is certainly not a multiworld version of WorldGuard...
     
  21. Offline

    fireb33

    stop fire spreading works intermittently, same problem with vstopfire.... maybe a change in bukkit or so? :(
     
  22. Offline

    Meta1203

    Your right, since WorldGuard is an amazing plugin, but this plugin is a "World Guard". 'Cause ya know..it protects your World =p
     
  23. Offline

    wizjany

    WorldGuard as it is in the title implies the plugin WorldGuard. If you mean "world guard" don't say "WorldGuard" :\
     
  24. Offline

    gilgatex

    This looks interesting. Does it conflict with and/or overwrite the MultiVerse plugin world configuration files?
     
  25. Offline

    sweetswear4665

    A good replacement until worldguard is fully updated for multiworld. Good job on this plugin.
     
  26. Offline

    SAMDAN

    Sweet, glad to see more people posting.
     
  27. Offline

    gilgatex

    What does bypass.lighter do?
     
  28. [tnt]WARNING[tnt]
    N00by question Ahead!

    How do you have multiple world in one server?
    Links?
     
  29. Offline

    iDoiStuff

    Code:
    15:13:28 [SEVERE] Could not pass event BLOCK_PLACE to WorldConfig
    java.lang.NoClassDefFoundError: com/nijiko/permissions/PermissionHandler
        at com.bukkit.meta1203.WorldConfig.WorldConfigBlockListener.onBlockPlace(WorldConfigBlockListener.java:24)
        at org.bukkit.plugin.java.JavaPluginLoader$25.execute(JavaPluginLoader.java:352)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:257)
        at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:84)
        at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(CraftEventFactory.java:68)
        at net.minecraft.server.ItemBlock.a(ItemBlock.java:74)
        at net.minecraft.server.ItemStack.placeItem(ItemStack.java:56)
        at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:217)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:521)
        at net.minecraft.server.Packet15Place.a(SourceFile:57)
        at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:74)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:370)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    Caused by: java.lang.ClassNotFoundException: com.nijiko.permissions.PermissionHandler
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:36)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:24)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:399)
        ... 17 more
    
     
  30. Offline

    Plague

    considered inactive
     

Share This Page