[INACTIVE][MECH] DropBonus v2.5 - Loot table configuration tool - [740]

Discussion in 'Inactive/Unsupported Plugins' started by Nohup, Feb 25, 2011.

  1. Offline

    Nohup

    DropBonus
    Version 2.5

    Tags - Loot, Drops, Permissions, iConomy, Multi-world

    The DropBonus plugin will allow you to configure the loot tables on your server in such a way that you can a) set the probability that breaking a block or killing an entity will generate a bonus, b) set the probability of EACH TYPE of bonus that can be generated, c) set a range for the number of items dropped and MORE. Even better still, the plugin was coded in a completely generic fashion so you aren't limited to the combinations that I thought were correct or needed. You can configure this plugin so that ANY block that is broken has the chance (.1% - 100%) of generating ANY other material (Material.X). The same goes for any creature that is killed.

    This tool can be used to override the default game drops as well. If you wanted to turn all drops from blocks off and control all the materials on your server, this tool makes it possible. It provides total control over what drops when blocks break and when creatures are killed!

    Features:
    • Allows for bonus blocks to be dropped when a configured block is broken OR when a configured mob is killed.
    • Bonus chances are cumulative, so you could receive multiple bonuses for one block/mob based on the laws of probability.
    • Single "roll" performed to determine if bonuses should be granted on this event or not. Once you have qualified for a bonus, all bonuses defined for that block will be attempted.
    • Individual "rolls" performed for each bonus type, ensuring that qualifying for one bonus at a given level doesn't automatically qualify you for all bonuses at that level.
    • Configurability is the key. You can configure any block type and under that block type you can configure the chance of a bonus entity being dropped when the given block type is broken. The same goes for mob type.
    • Along those lines, you can also set individual blocks OR bonuses to be turned off. You don't have to have a specific set of entries or drops. Only set up what you want to occur.
    • Percentage configuration is now from 0-100 and anywhere in between in double format (so 0.000001 will now be accepted)
    • Ability to override standard drops from entities and blocks, assumed to be false if not specified
    • Ability to set drops based on tool used when breaking the block/killing the mob
    • Ability to specify 0-n bonus items of a type to be delivered in one "bonus"
    • Ability to specify 0-n bonus evaluations for a given bonus (i.e. you have 100% of one bonus stone, and then 20% chance of a second bonus stone)
    • Ability to specify the maximum number of dropped items per bonus per material
    • Configurable permissions supported by the Permissions plugin
    • Ability to specify the amount of damage done to a tool when breaking a block of a given type or killing a given mob
    • Newly added - MULTI-WORLD support, configurability for each world or all worlds at once.
    • iConomy support for specifying currency to drop from mobs and blocks
    Usage: Install the plugin and configure the config.yml for it (after it is generated). No commands currently specified. Bonus node permissions can be setup in the Permissions config.yml as exemplified below.




    Configuration Examples: Wiki

    Permissions Example: Wiki

    Multi-world Support: Wiki

    iConomy Support: Wiki

    Download DropBonus: DropBonus v 2.5
    Download Source: GitHub
    Wiki Site: Wiki


    Latest CraftBukkit version tested against: 733


    Changelog:

    v 2.5
    • Updated to work with Bukkit 733.


    v 2.4
    • Updated to work with new version of Bukkit. NOT backward compatible.
    v2.3
    • Added list support for coins entries
    • Added permissions check before applying override
    v 2.2
    • Bug fixes for Permissions plugin name and 0 data field entry.
    v 2.1
    • Changed cooldown to only affect configured blocks
    • Added override support at tool level
    v 2.0.1
    • Bug fix for creature coin drop issue for iConomy integration.
    v 2.0
    • Added permissions configurability at the Material level (items dropped)
    • Major code refactor, thus new major version
    • Adjusted priority to Monitor where dealing with cancellable events, this will prevent conflicts with WorldGuard and iZone
    • Tested against new Recommended Build, w00t!
    v 1.10

    • Added support for boats and carts
    v 1.9

    • Added configuration to specify whether a killed entity only drops bonuses when killed by a player or not. This has a top-level default AND creature-specific configurations.
    • Added configuration to specify a placed-block cooldown timer (in ticks).
    • Added clean up routine to tracking to make sure entries aren't orphaned.
    • Adjusted block listener priority for onBlockBreak event and accounted for if the event is cancelled.
    v 1.8


    • iConomy beta successfully complete
    • Refactored some of my packages for those that look at my code
    • Created wiki for documentation so this post wasn't so large!
    v 1.7


    • Multi-world support added
    v 1.6


    • Added additional data specification within drop entries (used for color, texture, etc)
    • Added ability to specify how much damage a tool takes when breaking a block or killing a creature
    • Added BETA release of iConomy support (thanks to @Coelho for his help!)
    • Limited error spam to the console when configuration files are not correct
    v 1.5


    • Added Permission support
    v 1.4


    • Added tool-specific drop specification
    • Added support for 0-n bonus items to be dropped from a single configuration
    • Added support for o-n bonuses per material type per bonus
    • Added specification for maximum number of bonuses dropped per event
    v 1.3


    • Added override support to disable standard drops from blocks and entities.
    • Override flag assumed to be false if not specified
    v 1.2


    • added check to only drop bonus when death is caused by entity attack, not by external triggers such as skeletons burning to death or entities drowning
    v 1.1


    • Overhaul to percentage definitions
    • Added support for mob deaths
    • Changed name to DropBonus to span new functionality
    v 1.0


    • Initial release.
     
    Noppoly, Stormbow, Phaedrus and 2 others like this.
  2. Offline

    Tohclan

    okay well... for some reason nothing works for any of my players, I gave them all these permissions....

    Code:
            - bonuses.stone.tool.*
            - bonuses.cobblestone_stairs.tool.*
            - bonuses.glass.tool.*
            - bonuses.cactus.tool.*
            - bonuses.leaves.tool.*
            - bonuses.wood_stairs.tool.*
            - bonuses.bookshelf.tool.*
            - bonuses.ice.tool.*
     
  3. Offline

    Nohup

    @Tohclan - are you trying to make it where it only occurs when they use gold tools?
     
  4. Nohup, any news on the leaf decay addition ? posted a couple of days ago but the thread got swamped with other stuff ;)
     
  5. Offline

    Nohup

    I've been working 14 hours a day for the last few weeks battling deadlines and surprise deadlines. Once things calm down in the RL job I can look at additions here :)
     
  6. Offline

    Tohclan

    Yes.
     
  7. Offline

    DrBowe

    Just a few suggestions:

    Not sure if its possible, but maybe adding an option for configuring a drop for 'Spider Jockeys' (Not sure if they have their own separate ID, or just count as a spider and skeleton)

    Also, in addition to iConomy support, maybe BOSEconomy support?
     
  8. Offline

    shousper

    Has anyone had issues with blocks unexpectedly dropping nothing at all?

    I must be doing something really simple wrong here..

    Code:
        lapis_ore:
            maxcount: 20
            chances:
                blue_dye: 100 1 4
            override: false
            probability: 100
            tool:
                gold_pickaxe:
                    chances:
                        blue_dye: 100 5 20
    I've tried with and without override: true. Plus trying override under the gold_pickaxe section..

    I did notice some errors with BigBrother in the server console with relation to BLOCK_BREAK. So perhaps it could be blocking the DropBonus event hook to fire, but.. that doesn't really make sense because sometimes it doesn't throw that error at all.

    Running latest DropBonus to date, and 670+ builds. Currently up to .. 677 I think?

    Any ideas?

    Thanks in advance =]
     
  9. Offline

    alexfire

    Seem to be having an issue suddenly none of the mobs I have configured to drop coins do so anymore I havnt changed anything recintly so im not sure why suddenly it isnt working... are there any issues with cb670 and this plugin? or something I dont know about?

    And because I know i will be asked:

    Code:
    messages:
        bank:
            positive: You have received [amount] coins
    bonuses:
    #### Miner rank 1
        stone:
            maxcount: 5
            chances:
                iron_ore: 5 1 1
                coal: 15 1 1
                stone: 25 1 1
                cobblestone: 100 1 1
            override: false
            probability: 75
        iron_ore:
            maxcount: 5
            chances:
                iron_ore: 100 1 1
                coal: 35 1 1
                gold_ore: 10 1 1
            override: false
            probability: 75
        coal_ore:
            maxcount: 5
            chances:
                iron_ore: 33 1 1
                coal: 100 1 1
                stone: 33 1 1
            override: false
            probability: 75
    #### Miner rank 2
        gold_ore:
            maxcount: 5
            chances:
                iron_ore: 33 1 1
                coal: 35 1 1
                gold_ore: 100 1 1
            override: false
            probability: 75
    
        mossy_cobblestone:
            maxcount: 7
            chances:
                iron_ore: 33 1 1
                coal: 33 1 1
                stone: 50 1 1
                mossy_cobblestone: 100 1 1
            override: false
            probability: 75
        obsidian:
            maxcount: 7
            chances:
                iron_ore: 33 1 1
                coal: 33 1 1
                stone: 33 1 1
                Diamond: 20 1 1
                obsidian: 100 1 1
            override: false
            probability: 75
        diamond_ore:
            maxcount: 7
            chances:
                gold_ore: 33 1 1
                coal: 33 1 1
                Diamond: 100 1 1
            override: false
            probability: 75
        redstone_ore:
            maxcount: 7
            chances:
                iron_ore: 33 1 1
                coal: 33 1 10
                gold_ore: 15 1 1
                Diamond: 1 1 1
                redstone: 100 1 1
            override: false
            probability: 75
        glowing_redstone_ore:
            maxcount: 7
            chances:
                iron_ore: 33 1 1
                coal: 33 1 1
                gold_ore: 15 1 1
                Diamond: 1 1 1
                redstone: 100 1 1
            override: false
            probability: 75
    #### Miner rank 3
        Diamond_ore:
            probability: 75
            tool:
                gold_pickaxe:
            chances:
                Glowstone: 33 1 2
                Netherrack: 33 1 2
                Soul_sand: 33 1 2
                Diamond: 33 1 5
        obsidian:
            probability: 75
            tool:
                gold_pickaxe:
            chances:
                Glowstone: 33 1 2
                Netherrack: 33 1 2
                Soul_sand: 33 1 2
                obsidian: 33 1 5
        Lapis_ore:
            probability: 75
            tool:
                gold_pickaxe:
            chances:
                Glowstone: 33 1 2
                Netherrack: 33 1 2
                Soul_sand: 33 1 2
    #### Everyone
        glowstone:
            maxcount: 1
            chances:
                Glowstone: 100 1 1
            override: true
            probability: 100
    #### Farmer
        wheat:
            maxcount: 5
            chances:
                wheat: 100 1 3
                seeds: 50 1 3
            override: false
            probability: 50
        sugar_cane:
            maxcount: 5
            chances:
                sugar_cane: 100 1 3
                sugar: 50 1 3
            override: false
            probability: 50
        cactus:
            maxcount: 5
            chances:
                cactus: 100 1 3
            override: false
            probability: 50
        grass:
            maxcount: 5
            chances:
                dirt: 100 1 1
                seeds: 75 1 3
            override: false
            probability: 100
        Leaves:
            maxcount: 5
            chances:
                leaves: 25 1 3
            override: false
            probability: 75
            requirekiller: true
        craftsheep:
            maxcount: 3
            chances:
                wool: 80 1 3
            override: false
            probability: 100
            requirekiller: true
        craftpig:
            maxcount: 3
            chances:
                pork: 80 1 3
            override: false
            probability: 100
            requirekiller: true
        craftchicken:
            maxcount: 5
            chances:
                egg: 10 1 3
                feather: 75 1 5
            override: false
            probability: 100
            requirekiller: true
        craftcow:
            maxcount: 3
            chances:
                leather: 75 1 3
            override: false
            probability: 100
            requirekiller: true
    #### Warrior
        craftcreeper:
            maxcount: 5
            coins: 100 10 35
            chances:
                mob_spawner: 10 1 1
            override: true
            probability: 100
            requirekiller: true
        craftspider:
            maxcount: 5
            Coins: 100 5 20
            chances:
                string: 100 1 3
            probability: 100
            requirekiller: true
            override: true
        craftskeleton:
            maxcount: 5
            Coins: 100 10 30
            chances:
                arrow: 100 1 3
                Bow: 33 1 1
                Bone: 33 1 3
            override: true
            probability: 100
            requirekiller: true
        craftzombie:
            maxcount: 5
            Coins: 100 1 25
            Chances:
                Cake: 20 1 1
            override: false
            probability: 100
            requirekiller: true
    block:
        cooldown: 7
    
     
  10. Offline

    Tohclan

    See, it's not just me then, a lot of people are having troubles getting loot to drop.... and I still haven't gotten a reply to my reply....
     
  11. Offline

    Scyfi

    I have zero issues with this mod and cb677, besides the bone added to drops can not be turned to bonemeal. I think you guys should try dumbing down your config and just the basic to work, then try adding more to it, such as tools etc.

    Tohclan there is no reason to be rude, he just said he is working 14 hours days, relax man.
     
  12. Offline

    NEO

    For somer reason even thoguh a certain group only has permissions everyone gets the benefit of the modifed block drop.

    I set sand up to drop glass with a gold pick and only gave that permissions for sand to one group Other groups now get nothing when mining sand even though they have no permissions for sand. Should you get what the block was meant to drop naturally if you dont have permission.

    EDIT: Ok so i got it to the point where it drops the normal drop for everyone by setting override to false. But now my issue is that the group that gets the bonus (in the sand to glass example) gets the glass with a gold pickaxe but they also get the normal sand drop. If i change this by making override true then people without the bosus permission for sand get nothing for sand.

    Shouldn't the override true only effect people with the permission node for that bonus?
     
  13. Offline

    Connor Griffin

    Is there a way for me to configure spiders to drop webs, or is an update to the plugin required for that?

    Edit: Nevermind, I was trying with the item ID and it was failing, but using 'web' works.
     
  14. Offline

    Kane

    @Nohup Would it be possible for 1.5 to add natural decay drops for leafs? I would really love to nerf the ability to drop saplings on the PVE Server and only make them on the PVP Server. This making pvp more useful for farming saplings lol.
     
  15. Current 2.4 with 709-711 CB when a boat hits something a looping error crashes the server

    Code:
    2011-04-23 00:14:16 [SEVERE] Could not pass event VEHICLE_DAMAGE to DropBonus
    java.lang.NoSuchFieldError: a
        at com.nohupgaming.minecraft.listener.vehicle.DropBonusVehicleListener.onVehicleDamage(DropBonusVehicleListener.java:44)
        at org.bukkit.plugin.java.JavaPluginLoader$51.execute(JavaPluginLoader.java:514)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:257)
        at net.minecraft.server.EntityMinecart.damageEntity(EntityMinecart.java:109)
        at net.minecraft.server.EntityHuman.d(EntityHuman.java:532)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:776)
        at net.minecraft.server.Packet7UseEntity.a(SourceFile:33)
        at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:73)
        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)
     
  16. Offline

    Wall

    works great whit CB 709 no errors for me so far :)
     
  17. Offline

    alexfire

    Anyone else having issues with coins not being given properly? Where specificly should the coins section be in the config per block/mob?
    EX: Where should 'coins' be in this layout.
    craftcreeper:
    maxcount: 5
    tool:
    iron_sword:
    coins: 100 10 35
    chances:
    mob_spawner: 10 1 1
    override: true
    probability: 50
    requirekiller: true (forum auto deleted the spaces but yes i do have the correct YAML format)
    Any help would be greatly apreceated been like this for a couple weeks now.
     
  18. Offline

    cholo71796

    Does this allow you to specify damage values for the block you're breaking? (e.g., only work on BLUE wool, only work on GROWN crops, etc.)
     
  19. Offline

    KiloWhiskey

    @Nohup
    I get this exact same error. Happens when anyone punches a minecart or a boat. One error for every hit, so it fills the console often. I have boats set to drop boats in my config but that doesn't seem to work and there's nothing in my config for minecarts. I understand that the plugin isn't listed as supporting 700+ but it would be nice if you could take a look at this and see if it can be patched easily. I'm running 714 btw. This is the only error we've encountered.


     
  20. Offline

    Dope

    Yeah I have the same problem, and its the only error I have encountered in all of my plugins with cb714.
     
  21. Offline

    Guenael

    Same for me, vehicule damage, can you upgrade to CD 700+ ?

    Thx
     
  22. Offline

    grandwazir

    Also getting this error on CB 714:

    Code:
    2011-04-24 13:57:51 [SEVERE] Could not pass event ENTITY_DEATH to DropBonus
    java.lang.StackOverflowError
            at java.util.Arrays.copyOf(Arrays.java:2894)
            at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:117)
            at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:553)
            at java.lang.StringBuilder.append(StringBuilder.java:215)
            at org.bukkit.craftbukkit.entity.CraftWolf.toString(CraftWolf.java:36)
            at java.lang.String.valueOf(String.java:2838)
    
     
  23. Offline

    City Builder

    My server log is filled up with stuff such as this:
    Code:
    2011-04-24 21:20:34 [SEVERE] Could not pass event VEHICLE_DAMAGE to DropBonus
    java.lang.NoSuchFieldError: a
        at com.nohupgaming.minecraft.listener.vehicle.DropBonusVehicleListener.onVehicleDamage(DropBonusVehicleListener.java:44)
        at org.bukkit.plugin.java.JavaPluginLoader$51.execute(JavaPluginLoader.java:514)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:257)
        at net.minecraft.server.EntityMinecart.damageEntity(EntityMinecart.java:109)
        at net.minecraft.server.EntityHuman.d(EntityHuman.java:532)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:776)
        at net.minecraft.server.Packet7UseEntity.a(SourceFile:33)
        at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:73)
        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)
    2011-04-24 21:20:37 [SEVERE] Could not pass event VEHICLE_DAMAGE to DropBonus
    

    Any clues what is's all about?
     
  24. Offline

    Scyfi

    The program is looking for any sort of bonus that may be applied when the event is called. Problem is with 1.5 that event was changed and the mod needs to be updated with the new event.
     
  25. Offline

    Kane

    Does @Nohup still work on this? Kind wish he would do this plugin hehe.
     
  26. Offline

    Darktrance

    1.5 incompatible atm. Need Up2Date this cool Plugin pls hurry!!!
     
  27. Offline

    Cid

    I definately hope that support continues for this plugin. Our server can survive without it but we have to run about 5 different plugins just to get the functionality of this one amazing plugin.

    I will be patiently waiting and watching. :D

    Thanks...
     
  28. Offline

    Nohup

    Will try and get updated tonight now that there is a RB. My son is on my case about it too since he wants it on our server. Will be interesting to see what the newly announced API does to Bukkit's progress...
     
  29. Offline

    Calvin

    please say when you think it will be working for cb build 733 :3 thanks
     
  30. Offline

    Nohup

    Updated to work with 733 and not bomb. Didn't add anything new, sorry but have to update my others and still have work to do tonight.
     
  31. Offline

    kyle921

    I get this spammed to chat on CB 733 when anyone uses a boat:
    Code:
    2011-04-27 22:33:52 [INFO] ?9[PLAYER_COMMAND] kyle921: /item boat
    2011-04-27 22:33:59 [INFO] onVehicleDamage: 6damage, 0 exists
    2011-04-27 22:34:03 [INFO] onVehicleDamage: 1damage, 0 exists
    2011-04-27 22:34:03 [INFO] onVehicleDamage: 1damage, 5 exists
    2011-04-27 22:34:03 [INFO] onVehicleDamage: 1damage, 10 exists
    2011-04-27 22:34:03 [INFO] onVehicleDamage: 1damage, 15 exists
    2011-04-27 22:34:04 [INFO] onVehicleDamage: 1damage, 20 exists
    2011-04-27 22:34:04 [INFO] onVehicleDamage: 2damage, 0 exists
    2011-04-27 22:34:04 [INFO] onVehicleDamage: 1damage, 25 exists
    2011-04-27 22:34:04 [INFO] onVehicleDamage: 1damage, 30 exists
    2011-04-27 22:34:04 [INFO] onVehicleDamage: 1damage, 35 exists
    2011-04-27 22:34:23 [INFO] onVehicleDamage: 2damage, 0 exists
    2011-04-27 22:34:23 [INFO] onVehicleDamage: 2damage, 15 exists
    2011-04-27 22:34:23 [INFO] onVehicleDamage: 2damage, 30 exists
     

Share This Page