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

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

  1. Offline

    Spathizilla

    creaturebox
    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: http://dev.bukkit.org/server-mods/creaturebox/
    -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

    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.

    -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Features:
    • 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.
    -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Permissions:
    • 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.
    -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Configuration:
    • 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.
    -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Notes:
    • 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
    -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Credits:
    -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Changelog:

    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

    meep2000

    This looks like a really cool plugin. I wish I had this much skill.

    Offtopic:

    Celtic Minstrel, have I seen you on the *censored because I probably shouldnt advertise* forums?
    hmm. how do I phrase this? Are you on these other forums with the same name
    and these forums are for another awesome indie company that makes RPG's?
    Would they like the cave SPIDERS?
     
  3. Offline

    Celtic Minstrel

    If you mean Spiderweb Software, then yes. And Minecraft's cave spiders come nowhere near the GIFTS.
     
  4. Offline

    Spathizilla

  5. Offline

    Clavus

    Nice work. One feature I'd like to see is a /creaturebox give command so players (with the right permission) can give themselves mob spawners, so I won't need to install seperate plugins for that.
     
  6. Offline

    Spathizilla

    .....

    Did you read the feature list?
     
  7. Offline

    Clavus

    Oh jesus christ I'm stupid, completely missed that. I should hit bed early tonight!
     
  8. Offline

    wassilij

    Could this plugin use the LogBlock API? :>

    Because if i destroy a spawner with this plugin, and lookup this with LogBlock i get:
    'Player did a unspecified action'
    but it must be:
    'Player destroyed a mobspawner'
    even better:
    'Player destroyed a sheepspawner'
     
  9. Offline

    Lafetus

    Would you consider adding the option to add other entity types to spawn such as boats, minecart, experience orbs, etc.
    I know this is possible as due to a bug some spawners were turned into arrow, painting, and exp orbs on a server I played on recently.
     
  10. Offline

    DarthNomad

    Hi,
    I use this great mod for a long time and now I have got a question:
    Would it be possible to add a commmand, that can set the maximum number of periods?
    I would like to make a quest-like dungeon/cave with managed mobspawners, which should spawn a lot more mobs than the normal spawner, but I don´t want that my players can use them to build there unfair mobtraps with them.
    So, with this maximum period command, you could say something like "this spawner will spawn 10 skeletons for 5 times and then, after spawning 5x10 skeletons, stop spawning mobs and being useless" (maybe with an additional function to remove them from the worldmap).
    I would be happy if you answer me soon :).
     
  11. Offline

    Evangon

    Bukkit 1337
    Crashes my client when placing a mob spawner.
     
  12. Offline

    Celtic Minstrel

    What type of mob spawner? Or do you not know what type?
     
  13. Offline

    DarthNomad

    When I want to make a spawner spawn zombies in sun/torchlight, I only have to remove the "light" option from requirements? Because I tried and it doesn´t work, no error message or something, what am I doing wrong?
    I use the latest Bukkit RB and the latest CB version.
     
  14. Offline

    Endreon26

    I can't place any spawners it gives me the message your old pig spawner was replaced with a new one. And I can't pick up spawners that were given using the creature box give command.
     
  15. Offline

    Spathizilla

    Creative mode?
     
  16. Offline

    grinch843

    Great plugin, works like a charm.

    Would love to see a version for spout that can use a GUI instead of the command line.....

    Thanks,
    Grinch.....
     
  17. Offline

    Endreon26

    I was first on creative and then switched and it still didn't work.
     
  18. Offline

    RaesWolf

    I have noticed that everytime I use /butcher that all the spawners get reset back to pig spawners instead of the ones they were spawned in as. Any reason or way to fix this overall??
     
  19. Offline

    Spathizilla

    Unless the plugin that does the /butcher is doing something VERY weird, this is impossible. Butcher just kills off the entities. The spawners are not entities and would need to have their metadata changed to turn from some creature into pigs ones.

    --------------

    And before anyone asks, yes creaturebox will get the 1.0.0 mobs added once we get closer to a craftbukkit recommended build.
     
    o0AzzA0o likes this.
  20. Offline

    armed_troop

    I'm having an issue with a non-recommended build for 1.0.0 where if a spawner is mined, I get kicked off the server with an "Internal Server Error", and this output server-side:

    Code:
    08:13:04 [INFO] [creaturebox] Saving spawners
    08:13:05 [WARNING] Failed to handle packet: java.lang.NullPointerException
    java.lang.NullPointerException
            at net.minecraft.server.InventoryPlayer.b(InventoryPlayer.java:315)
            at net.minecraft.server.EntityHuman.b(EntityHuman.java:476)
            at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:237)
            at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:168)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:506)
            at net.minecraft.server.Packet14BlockDig.a(SourceFile:43)
            at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
            at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:524)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:422)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
    
    Didn't notice this with 1.8.1 ... known issue?
     
  21. Offline

    Spathizilla

    First off, creaturebox is for beta 1.8.1 recommended builds and has not been updated for release 1.0.0 yet. Until a recommended build is closer, I'm not even concerned by errors. Non recommended builds are expected to be broken.

    Secondly, that is a craftbukkit error and not one with creaturebox. I believe they fixed it with build 1497
     
  22. Offline

    armed_troop

    @Spathizilla:

    This is fixed in the latest code as of 4 hours ago. As far as I can tell there's no dev build yet with the fix in place.
    Sorry for bugging you though...
     
  23. Offline

    Revenger

    On 1337 this error just popped up we have 5 managed spawners.

    Code:
    21:44:30 [WARNING] Task of 'creaturebox' generated an exception
    java.util.ConcurrentModificationException
            at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:819)
            at java.util.ArrayList$Itr.next(ArrayList.java:791)
            at org.bukkit.craftbukkit.CraftWorld.getPlayers(CraftWorld.java:551)
            at lodran.creaturebox.CB_PlayerRequirement.maySpawnCreatureAt(CB_PlayerRequirement.java:16)
            at lodran.creaturebox.CB_Spawnable.maySpawnCreatureAt(CB_Spawnable.java:137)
            at lodran.creaturebox.CB_BukkitSpawnable.spawnCreatureAt(CB_BukkitSpawnable.java:38)
            at lodran.creaturebox.CB_Spawnable.spawnCreatureNear(CB_Spawnable.java:89)
            at lodran.creaturebox.CB_Spawner.spawnCreature(CB_Spawner.java:326)
            at lodran.creaturebox.CB_Spawner.spawnCreatures(CB_Spawner.java:303)
            at lodran.creaturebox.CB_Spawner.run(CB_Spawner.java:278)
            at lodran.creaturebox.CreatureboxPlugin.run(CreatureboxPlugin.java:225)
            at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:137)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:441)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    
    After this error the spawners don't work until the server restarts.
     
  24. Offline

    dan2wik

    Can i have some source code. i wanna try updating it to the dev build.
    [edit] what is the net.minecraft.server.* package and where do i get it?
     
  25. Offline

    Spathizilla

    I've already done it. Just not releasing it until the RB is closer

    [​IMG]
    Moooooshrom!

    Tested & Working:
    Mooshrooms -- See above
    Villagers -- Working (although only in brown jackets)
    Blaze -- Working (and dangerous :D)
    Enderdragon -- Working and OMFG - it breaks blocks as it flies! mega griefer lol (see below)
    [​IMG]

    Tested & Broken
    Snowmen -- Broken! possibly bukkit related.
    MagmaCube -- Broken! possibly bukkit related.

    For those of you who are desperate to play with the new toys: Here is a development version of creaturebox 0.7.9 with the 1.0.0 mobs. Yes I do know snowmen/magnacubes are broken and you've been warned about enderdragon spawners (they grief, a lot!)
     
    dan2wik and o0AzzA0o like this.
  26. Offline

    o0AzzA0o

    With latest pex and development version of creaturebox 0.7.9 the creaturebox.placespawner is no longer enough to allow players to place a spawner when i changed it to creaturebox.placespawner.* it worked with error saying they didnt have permission but it still allowed them to place it.

    When i put it back to creaturebox.placespawner and then added creaturebox.creature.* it then worked with 0 errors

    so in short for me at least creaturebox.dropspawner and creaturebox.placespawner is no longer enough to have people with basic mine and place function i need to add creaturebox.creature.* and then all is fine.

    Dont know if this is pex or cb issue but i thought i would put it here only for those desperate enough to be using development version
     
    dan2wik likes this.
  27. Offline

    cr0ss

    @Spathizilla Thanks for the dev build :) Working awesome even without the new magma cube and such. Just wanted to let you know that Essentials looks to have been able to fix the Magma Cube issue with I believe bukkit build 1522 and above (if you haven't played with those yet). Might be worth looking into if you haven't :D

    Thanks for the sneak peek.
     
  28. Offline

    Spathizilla

    It wasnt creaturebox, it was craftbukkit. Magmacubes and snowmen now work fine.
     
  29. Offline

    o0AzzA0o

    Future feature request. Would it be possible to add disable of silk touch being able to pickup spawners to this plugin since player without pickup permission is able to mine spawner with that enchantment on pickaxe?
     
    dan2wik likes this.
  30. Offline

    dbptwg

    Do spawners of the same type stack currently? When my server was updated for 1.0.0 old stacks remained so, but after removing from a stack or trying to add to a stack they are automatically unstacked, as if the added ones are the wrong type. This is also true for two fresh 1.0 natural spawners (same type,) they will not stack. I am unsure if this is a problem on my end or not. I looked through the tread and didn't see anything - sorry if I missed it.
     
  31. Offline

    Pr0Failure

    Suggestion:
    config file option to placed monster spawn doesn't spawn anything without setting anything at first
     

Share This Page