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

    Celtic Minstrel

    Basically instead of storing it as data he may be able to store it (roughly) as an enchantment. Sort of.
     
  3. Offline

    Spathizilla

    Yeh I've been looking at it but I'm not sure.

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

    As for my version of craftbukkit 1597 which works with creaturebox dev-0.7.9-2:
    http://www.playminecraft.net/creaturebox/craftbukkit-b1597.jar
    ========================================================
    Warning: This is a totally unsupported as-is build of craftbukkit 1597.
    ========================================================
    While I use this build on my own production server with zero issues, you should do your own testing to be sure you are happy to use it.
     
  4. Offline

    ACStache

    So if I understand this right, this still works, as long as you change the spawner after it's been placed? That's for using the dev build on 1597 (not your fixed one) I'm guessing too?
     
  5. Offline

    Celtic Minstrel

    @ACStache — Yes, the only thing broken in standard builds is that mined spawners won't remember their type. As long as you change the spawner after it's placed, this'll work fine.
     
    ACStache likes this.
  6. Offline

    Spathizilla

    This is correct. Spawners already placed before the update are unaffected. Spawners mined or placed AFTER the update will break and revert to the default type (which is pig). You can use /cb set on them to change the type to whatever you like.
     
    ACStache likes this.
  7. Offline

    ACStache

    glad to know! I'll pass the word along on my server. Thanks :)
     
  8. Offline

    mkiyt

    does it work for 1.0.0 yet?
     
  9. Offline

    Celtic Minstrel

    ...yes? Why wouldn't it? Not sure if new mobs work, but aside from that. (Pretty sure they do though.)
     
  10. Offline

    Spathizilla

    They work in the dev build.
     
  11. Offline

    DarthNomad

    Hey guys,
    Nobody mentioned my two questions, and I still have the same problems, even with the new build, maybe someone can help me, would be very nice ;)

     
  12. Offline

    Shurfire

    Couple things, when i spawn the spawner it works.. i do /cb holding and it says the spawner is broken... how do i fix this and also will it be possible to fix the spawner issue?
     
  13. Offline

    o0AzzA0o

    @Spathizilla is it possible to have an option in config for making spawners that are placed to be managed with a set of default values also settable in the config file?
     
  14. Offline

    Shurfire

    can anyone help me on this :) spawners are a really big thing in our server :)
     
  15. Offline

    Shurfire

    There is currently 2-3 plugins that got the new update... ask them for some help on how they did it!!!!
     
  16. Offline

    Spathizilla

    Tell me the name of a single one of these "2-3 plugins" which actually allows mobspawners to be held in inventory with their type retained.

    I bet you wont reply with anything valid or severely misunderstand the problem here..
     
  17. Offline

    Shurfire

    Spawneradjuster just look up "spawner" at http://www.plugins.bukkit.org and you will find out their are a couple.
     
  18. Offline

    Spathizilla

    That plugin will not keep the spawner type either - and yes, I looked at the source just now to confirm it. If you run that plugin in 1597 it will always revert to pig spawners.
     
  19. Offline

    Shurfire

    Ok,well i would like for atleast to spawn and be placed... i cant do those...
     
  20. Offline

    RaesWolf

    I looked at your other link and theres no way to leave a comment or post a ticket but 90% of the time when i try to change a placed spawner it tells m e im not looking at it even though i am. ive tried looking at different spots on it etc..

    So half the time this doesnt work properly unless i can get it set. help?
     
  21. Offline

    Ninja_Monkey_T2

    when i break my spanner it turns into pig?
     
  22. Offline

    Celtic Minstrel

    Yes. That's broken in Bukkit.
     
  23. Offline

    mario00037

    I gave my Builder's the permission node -creaturebox.*
    But they can still break Monster Spawner's :'(
    Using PEX.
     
  24. Offline

    ACStache

    did you put that permission above all the other creaturebox permissions? Pex goes until it finds either a permission to do so or a permission to not do so.

    also looking at the listed permissions in the OP, there isn't one to allow breaking of spawners in general (seeing as how you can break them in vanilla Minecraft), the permission to to drop a spawner as an item drop when a spawner is broken. Unless I'm missing something obvious, you'll need something else to block the breaking of spawners.
     
  25. Offline

    mario00037

    Thats the only creaturebox permission. Check Here.
     
  26. Offline

    ACStache

    then note the second bit of my post. This plugin isn't meant to block the actual breaking of the spawners, just block the dropped item once it is broken.
     
  27. Offline

    mario00037

  28. Offline

    RaesWolf

    Ok I got this from the dev website. SO I understand why this is causing the problems BUT Is it being working on still and is there any way to know when it will be fixed? I would like to make it to where i can sell them and people can place and have them retain the mob type they paid for etc.
     
  29. Offline

    G1R Productions

    31.12 09:36:48 [Server] INFO at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
    31.12 09:36:48 [Server] INFO at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:431)
    31.12 09:36:48 [Server] INFO at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:533)
    31.12 09:36:48 [Server] INFO at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
    31.12 09:36:48 [Server] INFO at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:93)
    31.12 09:36:48 [Server] INFO at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    31.12 09:36:48 [Server] INFO at net.minecraft.server.Packet14BlockDig.a(SourceFile:43)
    31.12 09:36:48 [Server] INFO at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:501)
    31.12 09:36:48 [Server] INFO at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:167)
    31.12 09:36:48 [Server] INFO at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:223)
    31.12 09:36:48 [Server] INFO java.lang.NullPointerException
    31.12 09:36:48 [Server] WARNING Failed to handle packet: java.lang.NullPointerException
     
  30. Offline

    o0AzzA0o

    if you want it to work properly you can use my custom build of craftbukkit which will allow it to retain mobtype.

    http://dl.dropbox.com/u/49288792/craftbukkit.jar
     
  31. Offline

    RaesWolf


    Im not too sure how I would download this or where I would place it since I use a host and they have all the files stored somewhere for the different cb builds. going through it now but still unsure about it.
     

Share This Page