Inactive [FIX/MISC] creaturebox [0.8] - Mob Spawners become tradable! [1818]

Discussion in 'Inactive/Unsupported Plugins' started by Spathizilla, Jun 10, 2011.

  1. Offline


    Make creature spawners tradable
    Now with EnderDragons, Villagers, Blaze and more!

    Download v0.8 for CraftBukkit 1818 (Minecraft Beta 1.1) - See Note!
    For a Minecraft 1.2.5 version See this post: creaturebox dev-1.0

    Version 0.8 WILL NOT work with 1.1-R4+ or Minecraft 1.2.3!
    You must get the development version of creaturebox 1.0 at the link above

    Please use bukkitdev for all bug reports and support questions:
    creaturebox BukkitDev:

    creaturebox was originally created by Lodran and was first developed and deployed on our server when we wanted better control over spawners. creaturebox also fixes several issues with creature spawners, so that they can be altered, and traded between players.
    • Have you ever thought "I'd love to dig this dungeon out, and move it somewhere more useful."?
    • Have you ever thought "I'd really like to /give myself a spawner, and make it produce something other than pigs."?
    • Have you ever thought "I'd really like to turn this spawner on and off with a switch"?
    • Have you ever thought "I'd like these critters to spawn on something other than grass"?
    • Have you ever thought "I wish monsters would spawn in lit rooms too"?
    If you answered "yes" to any of these, then creaturebox is the plugin for you.

    • When a creature spawner is broken, it is dropped as an item.
    • When a creature spawner is placed, it retains its original creature type.
    • The creature type which is created by a creature spawner can be changed using the /creaturebox set command. To alter a mob spawner, look directly at it (through glass is fine), then type /creaturebox set {creaturename}, where {creaturename} is the name of a creature. Valid creature names are: pig, chicken, cow, sheep, squid, creeper, ghast, pig_zombie, skeleton, spider, zombie, slime, monster, giant and wolf.
    • The frequency at which a creature spawner generates creatures can be changed using the /creaturebox period {period} command, where {period} is the number of seconds between spawns. A period of -1 gives a random period between 10 and 20 seconds. A period of zero puts the creature spawner into "pulsed redstone" mode, where creatures are generated only when the redstone power of the spawner switches from high to low.
    • The number of creatures generated at a time can be changed using the /creaturebox count {count} command, where {count} is the number of creatures to generate. A count of -1 generates a random number of creatures (from 1 to 4), while a count of 0 disables the spawner.
    • The maximum number of live mobs that a spawner will maintain can be changed using the /creaturebox limit {limit} command, where {limit} is the desired maximum. A limit of -1 sets the default, which is 10 for a managed spawner, and unknown for a natural spawner.
    • The requirements for spawning a creature can be adjusted using the /creaturebox requires {requirements}command, where {requirements} is a space separated list any number of:
      • player - require a player to be within 20 blocks of the spawner.
      • surface - require grass for critters.
      • light - require light for critters, dark for monsters.
      • space - requires only an area to spawn mobs.
    • A creature spawner's settings can be displayed using the /creaturebox info command.
    • A creature spawner can be given to a player using the /creaturebox give {player} {creaturename} {count} command.
    • Supports Permissions, PermissionsEx, GroupManager and BukkitPerms.
    • A creature spawner can be turned off by powering it with redstone.
    • You can see what type of spawner you're holding with /creaturebox holding command.
    • creaturebox.set - Allows use of the /creaturebox set command.
    • creaturebox.give - Allows use of the /creaturebox give command.
    • creaturebox.creature.{creaturename} - Allows the player to set or give {creaturename} spawners, where {creaturename} is a valid creature name (pig, cow, etc...).
    • creaturebox.period - Allows use of the /creaturebox period command.
    • creaturebox.count - Allows use of the /creaturebox count command.
    • creaturebox.limit - Allows use of the /creaturebox limit command.
    • creaturebox.requires - Allows use of the /creaturebox requires command.
    • creaturebox.dropspawner - When a creature spawner is broken, it is dropped as an item.
    • creaturebox.placespawner - When a creature spawner is placed, it retains its original creature type.
    • creaturebox now creates a config.yml file in .../Plugins/creaturebox.
    • debugPriority: {integer range 0-3, default 2} - Sets the "noise level" for debugging messages - lower numbers = less noise. In general, you can ignore this because you have to set yourself as a debugger to see debugging messages.
    • messagePriority: {integer range 0-3, default 3 } - Sets the "noise level" for messages which are displayed when a player types a command.
    • enableRedstone: {boolean, default true} - Enables or disables redstone control of creature spawners.
    • operatorPermissions: {boolean, default true} - Enables separate operator permissions. If set to false, players are given the same permissions as operators. This setting will do nothing if a permissions plugin is installed.
    • showPlacements: {boolean, default false} - Shows the coordinates where spawners are placed or broken on the console.
    • creaturebox runs spawners in two different modes. "Natural" mode, where the spawner is run entirely by minecraft (and thus won't stop working, or change behavior when the map is loaded on a vanilla server), and "Managed" mode, where the spawner is run entirely by creaturebox. A spawner is switched to managed mode if any of its settings are changed from default. Squid, Slime, Monster and Giant spawners are always run in managed mode.
    • The Mobs added to Minecraft 1.8 will not work with older versions of craftbukkit even with creaturebox for 1.8. Please do not post about it if you thought you were smart trying to get enderman spawners in minecraft 1.7.
    • You can trade mob spawners with shop plugins (like ChestShop) but you need the correct spawner type id for that creature. These ID numbers changed after craftbukkit build 1222 and also with craftbukkit build 1818. Use /iteminfo

    Version 0.8
    • Compiled against latest RB
    • Updated mobspawners to keep their types via Enchantments since Bukkit removed metadata on mobspawners
    • All 1.0 mobs added
    • New Config Option: legacydata: {boolean - default: false} - Allow the now broken metadata method to be used. Only works with very old craftbukkit versions
    Revision History (open)

    Version 0.7.8b
    • Added /cb holding command to tell you what spawner type you're holding - Spout support for this to be added
    • Old broken spawners which were not placed in the world during the id conversion process will now drop fixed ones.
    • New Config Option: showPlacements - Shows the coords of spawners being broken/placed in the console.
    Version 0.7.8a
    • Fixed NPE caused by the entity id changes when /cb set was used without a creature name.
    Version 0.7.8
    • Updated entity ids for craftbukkit 1240. This version will not work on earlier recommended builds
    Version 0.7.7b
    • Fixed a problem where mcMMO would cause multiple spawners to drop - Thanks to @daemitus for reporting this.
    Version 0.7.7a
    • TempFix: Disabled human monster spawners to prevent exception spam
    • TempFix: Human monster spawners will now spawn Zombies (until human monsters are fixed)
    • Added an error message if spawning of other mobs failed (with coords)
    Version 0.7.7
    • Added Cave_Spider spawners (id 15) - creaturebox.creature.cave_spider
    • Added Enderman spawners (id 16) - creaturebox.creature.enderman
    • Added Silverfish spawners (id 17) - creaturebox.creature.silverfish
    • Added native support for PermissionsEx
    • Added native support for GroupManager
    • Added Bukkit Permissions
    Version 0.7.6
    • Fixed an exploit where a spawner would drop under certain conditions when it shouldn't.
    • Fixed saving spawners logspam when the spawner placement was actually blocked
    • Filename of the JAR was changed to correctly be creaturebox.jar (Make sure to delete the old one)
    This exploit is present in all previous versions.

    Version 0.7.5
    • Made spawners of different types not stack - Credit to Nisovin for discovering this
    Version 0.7.4

    • Updated Permissions calls to remove depreciated methods
    Version 0.7.3

    • Added creaturebox.period, creaturebox.count, creaturebox.limit and creaturebox.requires permissions.
    • The source code for creaturebox is now included within the .jar.
    Version 0.7.2

    • Managed spawner settings for multiple worlds (spawners.yml) are now loaded correctly.
    • A new configuration setting (operatorPermissions:) has been added to config.yml.
    Version 0.7.1

    • spawners.yml is now written whenever a spawner is modified.
    • Added exception handling to the code that reads spawners.yml.
    • Spawners are now removed from the managed spawners list when their block is broken (or otherwise changed).
    • Added (experimental) code to stop spawners from being run if their chunk is unloaded. This code needs more testing, as it appears that checking to see if a chunk is unloaded may be causing it to load.
    Version 0.7.0

    • Enabled all of my "experimental" features.
    • The frequency at which mobs are generated can be changed (see /creaturebox period).
    • Spawners can now be "pulsed" with redstone, to generate 1 or more mobs each time a button is pressed (see /creaturebox period).
    • The number of mobs generated each time can be changed (see /creaturebox count).
    • The total number of mobs that a spawner will create at a time can be changed (see /creaturebox limit).
    • Some of the requirements for spawning a mob can be relaxed (see /creaturebox requires).
    Version 0.6.3

    • Fixed default permissions for wolf spawners.
    • Fixed spawning for squid spawners.
    Version 0.6.2

    • Worked around a bug in bukkit which was causing all spawners to be placed as pig spawners.
    • Added support for wolf spawners.
    • Enabled experimental code which improves the spawning requirements for sqiud spawners (Note: to activate this code you have to use the /creaturebox set squid command on the spawner. Existing spawners and those placed from inventory still use the old code).
    Version 0.6.1

    • Updated to support CraftBukkit build 602. Note: creaturebox is not compatible with CraftBukkit build 600.
    Version 0.6.0

    • Rewrote the plugin from scratch, to make way for new features.
    • Replaced right-click selection of mob spawners with "where I'm looking" selection.
    • Added /creaturebox info command, which tells the player a creature spawner's settings.
    Version 0.5.1

    • Added /creaturebox access command, which tells the player what access they have.
    • Updated to support craftbukkit 522/bukkit 450
    • Removed the Slime creature type - slime spawners don't work as is.
    Version 0.5

    • Added the ability to turn spawners on and off with redstone.
    Version 0.4

    • Altered creaturebox.attachPermissions in an attempt to gain compatibility with Permissions version 2.1.
    Version 0.3

    • pig_zombie spawners now break correctly.
    Version 0.2

    • Changed /creaturebox {creaturename} command to /creaturebox set {creaturename}.
    • Changed creaturebox.changespawner permission to creaturebox.set.
    • Added /creaturebox give {player} {creaturename} {count} command.
    • Added per-creature permissions.
    Version 0.1

    • First Release
  2. Offline


    Should just switch to using eggs, would be way easier for everyone :)
  3. Offline


    not really when some have mob grinders etc. how would that work for the eggs when u have to throw them?

    spawners will consistently spawn as needed and can be turned off to prevent too many from spawning.

    so for my server the spawners work better.
  4. Offline


    With version 1.1 R3 we have the problem that all Spawner change to Pig Spawner after break it and plant it on other place.
  5. Offline


    I can confirm this as well. Will be downgrading to the R2 until this can be fixed. :D

    Just confirmed with EvilSeph on IRC that block metadata is broken again in R3. That would be the problem! :'(
  6. Offline


    He spoke of throwing eggs at redstone on the ground or something similar and it would create a spawner of that egg type at that location.
  7. Offline


    Ah that is not what i was understanding so thats a bit clearer now.
  8. Offline


  9. Offline


    Did you ever look into this? I still can't get shops to sell them like it use to.
  10. Offline


    I couldnt get them to either. They are all reverted to pig ones as the meta thing isnt saving their types currently
  11. Offline


  12. Offline


    I have just overhauled creaturebox to now use the mob eggs.. You break a redstone torch while holding a mob egg to place the spawner. You can still right click to throw the egg and get the mob as you would normally (yay dual use). When you break a spawner, it drops an egg.

    Since this is such a huge change, yay for creaturebox 1.0

    Currently looking into moving spawners.yml into a database instead to be more reliable

    creaturebox 1.0 Soon™
  13. Offline


    creaturebox 1.0 Development Status:
    * Spawners are now dropped as Monster Eggs: Done & Tested
    * Monster Eggs can still spawn the mob still via right click: Done & Tested
    * Breaking a redstone torch while holding an egg creates the spawner: Done & Tested
    * Spawners.yml is now a SQLite database: Done (needs testing)
    * Import of spawners.yml to database via /cb import: Done & Tested
    * MySQL database support: Done & Tested
    * Permissions Overhaul: In work
    * Baby and Color options: Planned

    creaturebox 1.0 Soon™
  14. Offline


    OMG THATS RUBISH! lol ;)
  15. Offline


    This is pretty awesome sounding! I can't wait :D
  16. Offline

    Celtic Minstrel

    My opinion is that this is not a good idea; spawn eggs and mob spawners are for two separate purposes, and doubling its use like this is kinda confusing.

    I did think of an alternative just now though; make spawners drop both a spawner and an egg, and right-clicking a spawner with an egg sets the spawner to that type. Maybe I'll whip up a quick plugin to do it this way. ;)
  17. Offline


    While I agree I'd prefer to keep the mobspawners.. the sheer fact Bukkit is not even open to the idea of making them usable in ways other than Notch's view just shows they don't give a crap about it. This new method has a few advantages where it returns to using an item with metadata and has specific type labels. All the shop plugins will work again. The multi-world inventory plugins wont bitch-out over the unsafe enchantments (like MultiInv does)

    I kept the dual use of the eggs simple so people have a choice. I could have made CB override the spawning nature of eggs but decided to make you use a redstone torch to get the spawner.
  18. Is the new method while updating to RB-1.3 (1846)?
    Or Im missunderstanding something with it?
    If I place its a PigSpawner everytime...Dropping a setted spawner works fine. In inventory its still it's setted type...but placing is the big problem : /
    And RB-1.1 is buggy a lot (I have some Nether-Chunks in normal world...and the Normal world Chunks in
    So i want to stay with this possible?

    Topic with the Spawn Eggs:
    On my server SpawnEggs are craftable (CustomCrafting-Plugin) so im not fan of the idea...but if it's the only way out :S

    Im using this plugin since Minecraft Beta 1.5...and its a important part of my Server...I love it...and I hope I can use it in the future, too. :)
    - h2owasser
    (and sorry for bad english grammar ...I hope it is understandable y.y)

    edit: replaced some words xD (3.00 AM isn't a good time to write^^)
  19. Offline


    It is in creaturebox 1.0 -- which isnt released yet.

    Yep this is why I got annoyed enough to rip out using spawners as the "storage method".
    Also the enchantments were playing havoc with inventory plugins like MultiInv so long term it was a bad idea.

    You still have the option to use permissions to prevent them placing certain spawners. For example, I made it so people on my server can only ever mine/place "real" spawners - zombie/skele/spider/cavespider.
  20. So I could let mine them the spawners...than they have to give it a moderator ect. and they place and set them for the users...
    With the Old way it was better, but its not the fault of the plugin : /

    If 1.0 is released I will test this new method from you... I think Im missunderstanding something with it^^

    But its better when I can see which spawners the users mined as if they have pig spawners and tell me to set them to silverfish ect.
    So i have more control about it :)

    edit: Is the plugin still compatible with PEX?
    edit2: The creaturebox.placespawner permission won't work...dropspawner works fine, Could it be because of any other Plugin who's conflicting with cbox? Also installed: WorldEdit,WorldGuard, Essentials, Residence & Falsebook
  21. Offline


    Spawner wont drop an item, when destroyed.

    server.log ,
    2012-02-08 21:57:23 [SEVERE] Could not pass event org.bukkit.event.block.BlockBreakEvent to creaturebox
    java.lang.NoClassDefFoundError: Could not initialize class lodran.creaturebox.CB_Spawnable
        at lodran.creaturebox.CB_BlockListener.onBlockBreak(
        at org.bukkit.plugin.RegisteredListener.callEvent(
        at org.bukkit.plugin.SimplePluginManager.callEvent(
        at net.minecraft.server.ItemInWorldManager.breakBlock(
        at net.minecraft.server.ItemInWorldManager.a(
        at net.minecraft.server.NetServerHandler.a(
        at net.minecraft.server.Packet14BlockDig.handle(SourceFile:43)
        at net.minecraft.server.NetworkManager.b(
        at net.minecraft.server.NetServerHandler.a(
        at net.minecraft.server.NetworkListenThread.a(
        at net.minecraft.server.MinecraftServer.w(
    CraftBukkit 1921
    CraftProxy 140
    CreatureBox 0.8
  22. Offline


    Update on status of 1.0? :D Can't wait!
  23. Offline


    When a player places a spawner, it says you don't have permissions to place spawner, but I gave perms to place spawner, so do each spawners need seperate perms? I don't like that...
  24. Offline


    This occur when I tried /cb set <mobs>
    2012-02-15 14:30:41 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'cb' in plugin creaturebox v0.8
        at org.bukkit.command.PluginCommand.execute(
        at org.bukkit.command.SimpleCommandMap.dispatch(
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(
        at net.minecraft.server.NetServerHandler.handleCommand(
        at net.minecraft.server.NetServerHandler.a(
        at org.getspout.spout.SpoutNetServerHandler.a(
        at net.minecraft.server.Packet3Chat.handle(
        at net.minecraft.server.NetworkManager.b(
        at net.minecraft.server.NetServerHandler.a(
        at org.getspout.spout.SpoutNetServerHandler.a(
        at net.minecraft.server.NetworkListenThread.a(
        at net.minecraft.server.MinecraftServer.w(
    Caused by: java.lang.NoClassDefFoundError: Could not initialize class lodran.creaturebox.CB_Spawnable
        at lodran.creaturebox.CreatureboxPlugin.onSetCommand(
        at lodran.creaturebox.CreatureboxPlugin.onCommand(
        at org.bukkit.command.PluginCommand.execute(
        ... 14 more
    This one occured when I started my server

    2012-02-15 14:27:49 [WARNING] Task of 'creaturebox' generated an exception
    java.lang.NoSuchFieldError: MONSTER
        at lodran.creaturebox.CB_BukkitSpawnable.<clinit>(
        at lodran.creaturebox.CB_Spawnable.initialize(
        at lodran.creaturebox.CB_Spawnable.<clinit>(
        at lodran.creaturebox.CB_Spawner.putSettings(
        at lodran.creaturebox.CreatureboxPlugin.loadSpawners(
        at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(
        at net.minecraft.server.MinecraftServer.w(
    This one occured when I put down a Spawner

    2012-02-15 14:28:53 [SEVERE] Could not pass event org.bukkit.event.block.BlockPlaceEvent to creaturebox
    java.lang.NoClassDefFoundError: Could not initialize class lodran.creaturebox.CB_Spawnable
        at lodran.creaturebox.CB_BlockListener.onBlockPlace(
        at org.bukkit.plugin.RegisteredListener.callEvent(
        at org.bukkit.plugin.SimplePluginManager.callEvent(
        at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(
        at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(
        at net.minecraft.server.ItemBlock.a(
        at net.minecraft.server.ItemStack.placeItem(
        at net.minecraft.server.ItemInWorldManager.interact(
        at net.minecraft.server.NetServerHandler.a(
        at net.minecraft.server.Packet15Place.handle(SourceFile:39)
        at net.minecraft.server.NetworkManager.b(
        at net.minecraft.server.NetServerHandler.a(
        at org.getspout.spout.SpoutNetServerHandler.a(
        at net.minecraft.server.NetworkListenThread.a(
        at net.minecraft.server.MinecraftServer.w(
  25. Offline


    i am having problems with this build you have it to work with a old version of craftbukkit and craftbukkit 1.1-r4 is out you might want to update the plugin
  26. Offline


    oh.. it's the craftbukkit XD
  27. Offline


    Any estimation of when this will be ready?
  28. Offline


    Trying to track down an issue in the dev build atm which is taking ages. It only happens with managed spawners though (ie non 'natural' ones)
  29. Offline


    appreciate the response :) just went through earlier and had gotten everything ready for this so hoping u find the issue soon!
  30. Offline


  31. Offline


    the reason why you are getting that error is because creaturebox does not support craftbukkit 1.1-R4

Share This Page