[MECH/FUN] Fruitful v0.7.4 - Drop apples, cocoa beans, and more from any block [1597]

Discussion in 'Inactive/Unsupported Plugins' started by Patrick Crespo, Jun 16, 2011.

  1. Offline

    Patrick Crespo

    Fruitful - Drop nearly anything from blocks:
    Version: 0.7.4

    I've moved this project to the BukkitDev site. Check there for help and future updates.
     
    Xordaii likes this.
  2. Offline

    landstreet

    Wich file do i paste this into? Simple_config or config?
     
  3. Offline

    Patrick Crespo

    Simple_config.yml is only an example. this goes in your config.yml.
     
  4. Offline

    landstreet

    when i put it in the config file and opens the server, it comes with an error
    Code:
    [INFO] WorldGuard 5.2.2 enabled.
    2011-09-12 00:31:11
    [SEVERE] Error occurred while enabling Fruitful v0.7.1 (Is it up to date?): null
    java.lang.NullPointerException
        at com.ughcentral.fruitful.Fruitful.loadSuperPerms(Fruitful.java:130)
        at com.ughcentral.fruitful.Fruitful.duringEnable(Fruitful.java:83)
        at com.ughcentral.fruitful.Fruitful.onEnable(Fruitful.java:62)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:126)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:885)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:278)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:178)
        at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:161)
        at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:452)
        at org.bukkit.command.SimpleCommandMap$ReloadCommand.execute(SimpleCommandMap.java:281)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:129)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:344)
        at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:489)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:468)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:363)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-09-12 00:31:11
     
  5. Offline

    Patrick Crespo

    Sorry, it's defaults, not default. Add in an 's' and it should work. :)
     
  6. Offline

    landstreet

    lol xD ok i dont get the error any more, but it still wont drop slimeballs or apples only sapling, is my config setup wrong?
    (srry i neeed so much help)
    Code:
    # Fruitful v0.7 default 'config.yml'
    
    ###########
    # Options #
    ###########
    
    options:
        Permissions: true       # Whether or not to use Permissions 3.x (or
                                 #   compatible) instead of Bukkit SuperPerms.
                                 #   defaults to use SuperPerms (i.e. false).
    ###########
    # Default #
    ###########
    
    # default:
    #     blocktype:
    #         keywords: [blockkeyword1, blockkeyword2]
    #         drop1:
    #             range: [number] or [min, max]
    #             chance: <Percentage>, <Ratio>, or <Double>
    #             keywords: [drop1keyword1, drop1keyword2]
    #         drop2:
    #             ...
    # Chance can be a percentage "2.5%", a ratio "1:40", or a double precision
    #   number "0.025".  The chance is processed as a string, so if you're having
    #   strange issues, put the chance in single quotes (apostrophes).  This
    #   happens mostly with ratios.  (For a good example, remove the single quotes
    #   from apples under oak.)
    #
    # If the keywords are left out, no keywords are assumed.  Two keywords:
    # SHEARABLE and BURNABLE need to be present on both the blocktype AND drop
    # if you want the item to drop for that event.  See "treetrunk" for an example.
    #
    # Keywords on the block get processed before they do on the drops.  So any of
    #   the event overrides will prevent all drops from happenting for that event
    #   on the block.  (i.e. a no_boom on the blocktype means that explosions will
    #   never drop anything from it.)
    #
    # Valid Block- and Drop-based keywords:
    #     NO_BREAK:     Deny this when a player breaks a block
    #     NO_BOOM:      Deny this when an explosion breaks the block
    #     NO_DECAY:     Deny this due to leaf decay
    #     NO_WATER:     Deny this due to water flowing and breaking the block
    #     SECURE:       Deny this when NOT broken by a player
    #     NO_OVERRIDE:  Do not override existing drops by cancelling the event
    #                   Use this if you want to make sure events get logged in your
    #                   block logger, if you have some other tracking plugins, or
    #                   If you're lazy and don't want to add back in stuff. :)
    #     DISABLED:     Don't do this. (Useful for overriding settings in worlds)
    #                   If you want natural drops to happen, you must also include
    #                   NO_OVERRIDE.  Works on drops too, but isn't necessary.
    #                   (You can just leave them out)
    #     BURNABLE:     Allow fire burning this block to drop this item
    #                   This and SHEARABLE must be on both the block and the drop
    #                   for them to work properly.
    #     SHEARABLE:    Alow shears breaking this block to drop this item.  Only
    #                   applies to leaf blocks, so you don't need to add shearable
    #                   to everything.  Specifying this will override shears
    #                   dropping leaves unless used with NO_OVERRIDE.
    #
    # Since "pine" doesn't have the no_override keyword, nothing will drop from
    #   it, not even saplings.  In this case, it's better to not define "pine"
    #   here at all, if you want it to behave like normal.
    defaults:
        generic:
            keywords: [no_override]
            apple:
                range: [1]
                chance: '1:64'
            slimeball:
                range: [1, 2]
                chance: '1:64'
        birch:
            keywords: [no_override]
            cocoabeans:
                range: [1]
                chance: '1:64'
            slimeball:
                range: [1, 2]
                chance: '1:64'
        redwood:
            keywords: [no_override]
            slimeball:
                range: [1, 2]
    
    #    pine:
    #        spider:
    #            range: [1]
    #            chance: 0.05%
    #        keywords: [disabled]
    ##########
    # Worlds #
    ##########
    
    # Works similar to the above configuration, except use:
    #
    # worlds:
    #     WorldName:
    #
    # Any setting here will override the defaults, any blocktype missing, will
    #   use the default settings for that blocktype, so add:
    #
    # worlds:
    #     WorldName:
    #         blocktype:
    #             keywords: [disabled, no_override]
    #
    # This will prevent processing that block for drops.
    worlds:
        world_nether:
            birch:
                keywords: [Disabled, no_OvErRiDe]
            hellishoak:
                apples:
                    range: [1, 2]
                    chance: 0.005
                electrifiedcreeper:
                    range: [1]
                    chance: 100%
                    keywords: [no_decay]
                keywords: [no_boom]
    ################
    # Valid values #
    ################
    
    # For organizational reasons.
    valid:
        blocktypes:
            generic:
                type: 18
                data: [0]
            redwood:
                type: 18
                data: [1]
            birch:
                type: 18
                data: [2]
    ###############
    # Block Types #
    ###############
    
    #     blocktypes:
    #         name:
    #             type: <Material> OR <ID>
    #             data: [ value1, value2, value3 ]
    #             biomes: [ Biome1, Biome2, Biome3 ]
    #
    # Data values are numbers, the entire parameter must be in a bracket.  Leaving
    #   this out will assume "All values" (0-15).
    # Biomes are the Bukkit Biomes, case insensitive, but must contain the proper
    #   name, e.g. Ice_desert is valid, however ICEDESERT is not.  Leaving this
    #   assumes all 13 biomes.
    #
    # Having multiple blocks with the same material, data, and biomes is okay,
    # however the more 'specific' the match the higher the preference.
    #
    # List of valid Biomes - Check http://www.minecraftwiki.net/wiki/Biomes for
    #                        descriptions
    #     RAINFOREST
    #     SWAMPLAND
    #     SEASONAL_FOREST
    #     FOREST
    #     SAVANNA
    #     SHRUBLAND
    #     TAIGA
    #     DESERT
    #     PLAINS
    #     TUNDRA
    #     ICE_DESERT:      Doesn't occur naturally
    #     HELL:            Nether specific
    #     SKY:             Skylands specific
    #
    # Check out http://www.minecraftwiki.net/wiki/Data_values for a list of
    #   block/item IDs
        blocktypes:
            oak:
                type: leaves         # Bukkit material name, case insensitive
                data: [0]
            pine:
                type: 18             # Minecraft block ID, decimal value is also okay
                data: [1]
            birch:
                type: 0x12           # Minecraft block ID, hexadecimal works too
                data: [2]
            hellishoak:
                type: Leaves
                data: [0]
                biomes: [ Hell ]
            wool:                    # With no data, this applies to all wool colors
                type: wool
            grass:
                type: Long_Grass
                data: [1, 2]
            crop:
                type: CROPS
                data: [7]            # Only ripe crops!
            treetrunk:
                type: log
    
    #########
    # Items #
    #########
    
    #     items:
    #         name:
    #             type: <Material> OR <ID>
    #             data: [value1, value2, value3]
    #             keywords: [keyword1, keyword2]
    #
    # The name must be unique to all item, creature and group drops.
    # As above, the Bukkit Material or Block/Item ID works.
    #
    # The data values are what it *can* be.  A simple random choice will be made
    #   from the list of values given.  A single value must still be enclosed in
    #   brackets.  Omitting the value assumes "[0]".
    #
    # The keywords can be any valid drop based keyword.
    #
        items:
            apple:
                type: 260
            cocoabeans:
                type: 351
                data: [3]
            slimeball:
                type: 341
    #############
    # Creatures #
    #############
    
    #     creatures:
    #         name:
    #             creature: <CreatureType>
    #             keywords: [keyword]
    #
    # The name must be unique to all item, creature and group drops.
    # The CreatureType is the bukkit CreatureType.
    #
    # Keywords can be drop-based or creature-based.
    # Creature based keywords:
    #     BURNING:      Set this creature on fire when it spawns.  Why?  Cause. :)
    #     ELECTRIC:     Make this creeper Super-charged when it spawns.  For
    #                   masochists/mean server ops only. :)
    #     RAINBOW:      Sheep will naturally spawn with the same chance of color
    #                   that they do normally.  This keyword makes the sheep that
    #                   spawns a random non-natural color.  (Well, pink sheep are
    #                   included)
    #     SHEARED:      Spawn a sheep pre-sheared for... whatever reason.
    #     SADDLED:      Put a saddle on that there pig.
    #     ANGRY:        Will find the nearest player, and attack.  For Spiders,
    #                   Wolves, and Zombie Pigmen.
        creatures:
            sheep:
                creature: SHEEP
            shearedsheep:
                creature: sheep
                keywords: [sheared]
            rainbowsheep:
                creature: sHeEp
                keywords: [rainbow]
            electrifiedcreeper:
                creature: Creeper
                keywords: [electric]
            zombie:
                creature: Zombie
            spider:
                creature: Spider
                keywords: [Angry]
            flamingballodeath:
                creature: Slime
                keywords: [Burning]
            mightysteed:
                creature: pig
                keywords: [saddled]
    
    ##########
    # Groups #
    ##########
    
    #     groups:
    #         name:
    #             keywords: [groupKeyword1, groupKeyword2]
    #             drop1:
    #                 range: [number] OR [min, max]
    #                 chance: <Percentage>, <Ratio>, <Double>
    #                 keywords: [drop1Keyword1, drop1Keyword2]
    #             drop2:
    #                 ...
    #
    # The name must be unique to all item, creature and group drops.
    # Each drop must be already defined in the "items" or "creatures" section.
    #   Also, due to limitations in the Bukkit yml implementation, you cannot use
    #   duplicate drop names.  If you want a group to have a chance of one apple,
    #   two apples, or three apples, you need three separate "apple" drops.  See
    #   "fruitful" for an example.
    # Range is a single number in brackets [1] or two numbers [1, 3] for min, max.
    #
    # Chance can be a percentage "2.5%", a ratio "1:40", or a double precision
    #   number "0.025".  For the group, it's just a weight, i.e. all the possible
    #   values are added up, then the weight is divided by it to come up with the
    #   chance a particular item will drop.  See "sheepparty" for an example.  In
    #   this case, since the 'total' percentage is 433%, sheep have a ~69% chance,
    #   rainbowsheep have a ~23% chance, and shearedsheep have an ~8% chance.
    #
    # The keywords can be any valid drop based keyword.  Any keywords in the drops
    #   will affect the 'chance' that items can drop.  Drops that cannot drop will
    #   be 'skipped' when checking for the total weight.  For example,
    #   in "sheepparty" if it's triggered by a leaf decay event, there is a 100%
    #   chance a sheared sheep will drop because of the NO_DECAY and SECURE
    #   keywords on the other two possibilities.
        groups:
            apples:
                apple:
                    range: [1]
                    chance: 99%
                goldenapple:
                    range: [1]
                    chance: 1%
                    keywords: [no_boom]
            sheepparty:
                sheep:
                    range: [1, 2]
                    chance: 300%
                    keywords: [no_decay]
                rainbowsheep:
                    range: [1, 2]
                    chance: 100%
                    keywords: [secure]
                shearedsheep:
                    range: [1, 2]
                    chance: 33%
            fruitful:
                apple:
                    range: [1]
                    chance: 70%
                apple2:
                    range: [2]
                    chance: .125
                apple3:
                    range: [3]
                    chance: '1:20'
                cocoabeans:
                    range: [1, 3]
                    chance: 12.5%
    
     
  7. Offline

    Patrick Crespo

    You have two "blocktypes:" subsections in the config. Just delete the whole thing and paste what I gave you into a new file, changing default to defaults. :)
     
  8. Offline

    landstreet

    thx for the help mate! You rock!! :D
     
  9. Offline

    kalez

    will you be updating this for 1.0? im loving this compared to other block drop plugins.
     
  10. Offline

    Patrick Crespo

    Yes, I'm currently working on a minor update for 1.0, then a major one. It should still work for 1.0 though, (At least it did fine on my test server.)
     
  11. Offline

    kalez

    Awesome! Were not updating to 1.0 yet anyway so youve got some time :p
     
  12. Offline

    CODsniperkid

    Servers shouldn't even update to 1.0 yet if they are using Bukkit because the actual 1.0 Bukkit isn't officially released(although some threads can give you a link to the new version). But the problem is that most plugins aren't even up to 1.0(including Essentials), so, in my mind, I would just wait for a bit.
     
  13. Offline

    kalez

    I know, but some are, thats why i said it. I was simply curious cause the version was still 1060.
     
  14. Offline

    CODsniperkid

    Ok well good luck with your server and have a nice day! :)
     
  15. Offline

    kalez

    :p Thanks! Sorry if that sounded rude, was just stating the fact.
     
  16. Offline

    Patrick Crespo

    So you're aware, if you go to the BukkitDev site, that's where I'll be posting the update. Although I may update this post as well. As far as 1.0 compatibility goes, the only thing that might not work is creature related. Everything else should be okay, except for maybe water flowing into nether wart.
     
  17. Offline

    CODsniperkid

    Nah it's all good ;)
     
  18. Offline

    enchanter100

    would MCMMO double drops and such interfere with this mod? I can't seem to get it working at all and I'm running mcmmo.
     
  19. Offline

    Patrick Crespo

    I've heard that it can cause issues with extra things dropping, but I haven't heard about it not working at all with it, unless MCMMO cancels the event at a lower priority. I can take a peek at their code and see if that's the case, but if it does, then they may just not work in conjunction with each other. Do you get error messages or anything? And are you using the latest version from http://dev.bukkit.org? :)
     
  20. Offline

    enchanter100

    I have version 0.7.4 and I simply added coalore to drop diamond at a 100% chance. I want it to be more like 1% but I was using 100% to test. Nothing. Still only dropped coal.
     
  21. Offline

    Patrick Crespo

    So if you have the following sections (in their correct places): *edit* err.. yeah, but diamonds...
    Show Spoiler
    Code:
    valid:
      blocktypes:
        coalore:
          type: 16
      items:
        diamond:
          type: 264
    default:
      coalore:
        diamond:
          amount: [1]
          chance: 100%
    And it's still not working, then It's probably an incompatibility with mcMMO. I took a peek at their code, and it looks like they have handlers to cancel the events and throw fake ones. If they throw the fake events with the mining plugin or logging one (I assume you're using one of those) Fruitful should still process them correctly.

    Hopefully, I'll get unlazy enough over the next couple weeks to finish some of the features I'm adding to Fruitful (It's difficult during the holiday season to stay focused :)) and I'll do some testing with mcMMO as well.
     
  22. Offline

    enchanter100

    diamond needs an s? It's not mcmmo cause I disabled it and it still won't drop. Give me a sec and i'll add an s..

    Maybe I'm doing something wrong

    Code:
    # Fruitful v0.7.4 default 'config.yml'
    
    ###########
    # Options #
    ###########
    
    options:
        Permissions: false       # Whether or not to use Permissions 3.x (or
                                 #   compatible) instead of Bukkit SuperPerms.
                                 #   defaults to use SuperPerms (i.e. false).
    ###########
    # Default #
    ###########
    
    # default:
    #     blocktype:
    #         keywords: [blockkeyword1, blockkeyword2]
    #         drop1:
    #             range: [number] or [min, max]
    #             chance: <Percentage>, <Ratio>, or <Double>
    #             keywords: [drop1keyword1, drop1keyword2]
    #         drop2:
    #             ...
    # Chance can be a percentage "2.5%", a ratio "1:40", or a double precision
    #   number "0.025".  The chance is processed as a string, so if you're having
    #   strange issues, put the chance in single quotes (apostrophes).  This
    #   happens mostly with ratios.  (For a good example, remove the single quotes
    #   from apples under oak.)
    #
    # If the keywords are left out, no keywords are assumed.  Two keywords:
    # SHEARABLE and BURNABLE need to be present on both the blocktype AND drop
    # if you want the item to drop for that event.  See "treetrunk" for an example.
    #
    # Keywords on the block get processed before they do on the drops.  So any of
    #   the event overrides will prevent all drops from happenting for that event
    #   on the block.  (i.e. a no_boom on the blocktype means that explosions will
    #   never drop anything from it.)
    #
    # Valid Block- and Drop-based keywords:
    #     NO_BREAK:     Deny this when a player breaks a block
    #     NO_BOOM:      Deny this when an explosion breaks the block
    #     NO_DECAY:     Deny this due to leaf decay
    #     NO_WATER:     Deny this due to water flowing and breaking the block
    #     SECURE:       Deny this when NOT broken by a player
    #     NO_OVERRIDE:  Do not override existing drops by cancelling the event
    #                   Use this if you want to make sure events get logged in your
    #                   block logger, if you have some other tracking plugins, or
    #                   If you're lazy and don't want to add back in stuff. :)
    #     DISABLED:     Don't do this. (Useful for overriding settings in worlds)
    #                   If you want natural drops to happen, you must also include
    #                   NO_OVERRIDE.  Works on drops too, but isn't necessary.
    #                   (You can just leave them out)
    #     BURNABLE:     Allow fire burning this block to drop this item
    #                   This and SHEARABLE must be on both the block and the drop
    #                   for them to work properly.
    #     SHEARABLE:    Alow shears breaking this block to drop this item.  Only
    #                   applies to leaf blocks, so you don't need to add shearable
    #                   to everything.  Specifying this will override shears
    #                   dropping leaves unless used with NO_OVERRIDE.
    #
    # Since "pine" doesn't have the no_override keyword, nothing will drop from
    #   it, not even saplings.  In this case, it's better to not define "pine"
    #   here at all, if you want it to behave like normal.
    defaults:
        oak:
            apples:
                range: [1]
                chance: '1:50'
            keywords: [No_Override]
    #    pine:
    #        spider:
    #            range: [1]
    #            chance: 0.05%
    #        keywords: [disabled]
        birch:
            keywords: [NO_OVERRIDE]
            cocoabeans:
                range: [1, 3]
                chance: 5%
        crop:
            cocoabeans:
                range: [1, 2]
                chance: 0.05
            zombie:
                range: [1]
                chance: '1:500'
            keywords: [no_override]
        treetrunk:
            charcoal:
                range: [1]
                chance: 25%
                keywords: [burnable, no_break]
            keywords: [burnable, no_override]
        coalore:
            diamonds:
                range: [1]
                chance: 100%
            keywords: [no_override]
    ##########
    # Worlds #
    ##########
    
    # Works similar to the above configuration, except use:
    #
    # worlds:
    #     WorldName:
    #
    # Any setting here will override the defaults, any blocktype missing, will
    #   use the default settings for that blocktype, so add:
    #
    # worlds:
    #     WorldName:
    #         blocktype:
    #             keywords: [disabled, no_override]
    #
    # This will prevent processing that block for drops.
    worlds:
        world_nether:
            birch:
                keywords: [Disabled, no_OvErRiDe]
            hellishoak:
                apples:
                    range: [1, 2]
                    chance: 0.005
                electrifiedcreeper:
                    range: [1]
                    chance: 100%
                    keywords: [no_decay]
                keywords: [no_boom]
     
    ################
    # Valid values #
    ################
    
    # For organizational reasons.
    valid:
    
    ###############
    # Block Types #
    ###############
    
    #     blocktypes:
    #         name:
    #             type: <Material> OR <ID>
    #             data: [ value1, value2, value3 ]
    #             biomes: [ Biome1, Biome2, Biome3 ]
    #
    # Data values are numbers, the entire parameter must be in a bracket.  Leaving
    #   this out will assume "All values" (0-15).
    # Biomes are the Bukkit Biomes, case insensitive, but must contain the proper
    #   name, e.g. Ice_desert is valid, however ICEDESERT is not.  Leaving this
    #   assumes all 13 biomes.
    #
    # Having multiple blocks with the same material, data, and biomes is okay,
    # however the more 'specific' the match the higher the preference.
    #
    # List of valid Biomes - Check http://www.minecraftwiki.net/wiki/Biomes for
    #                        descriptions
    #     RAINFOREST
    #     SWAMPLAND
    #     SEASONAL_FOREST
    #     FOREST
    #     SAVANNA
    #     SHRUBLAND
    #     TAIGA
    #     DESERT
    #     PLAINS
    #     TUNDRA
    #     ICE_DESERT:      Doesn't occur naturally
    #     HELL:            Nether specific
    #     SKY:             Skylands specific
    #
    # Check out http://www.minecraftwiki.net/wiki/Data_values for a list of
    #   block/item IDs
        blocktypes:
            oak:
                type: leaves         # Bukkit material name, case insensitive
                data: [0]
            pine:
                type: 18             # Minecraft block ID, decimal value is also okay
                data: [1]
            birch:
                type: 0x12           # Minecraft block ID, hexadecimal works too
                data: [2]
            hellishoak:
                type: Leaves
                data: [0]
                biomes: [ Hell ]
            wool:                    # With no data, this applies to all wool colors
                type: wool
            grass:
                type: Long_Grass
                data: [1, 2]
            crop:
                type: CROPS
                data: [7]            # Only ripe crops!
            treetrunk:
                type: log
    
    #########
    # Items #
    #########
    
    #     items:
    #         name:
    #             type: <Material> OR <ID>
    #             data: [value1, value2, value3]
    #             keywords: [keyword1, keyword2]
    #
    # The name must be unique to all item, creature and group drops.
    # As above, the Bukkit Material or Block/Item ID works.
    #
    # The data values are what it *can* be.  A simple random choice will be made
    #   from the list of values given.  A single value must still be enclosed in
    #   brackets.  Omitting the value assumes "[0]".
    #
    # The keywords can be any valid drop based keyword.
    #
        items:
            apple:
                type: apple
            apple2:
                type: 260
            apple3:
                type: 0x104
            goldenapple:
                type: 322
            cocoabeans:
                type: 0x15f
                data: [3]
            randomDye:
                type: Ink_Sack
                data: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
            charcoal:
                type: coal
                data: [1]
    
    #############
    # Creatures #
    #############
    
    #     creatures:
    #         name:
    #             creature: <CreatureType>
    #             keywords: [keyword]
    #
    # The name must be unique to all item, creature and group drops.
    # The CreatureType is the bukkit CreatureType.
    #
    # Keywords can be drop-based or creature-based.
    # Creature based keywords:
    #     BURNING:      Set this creature on fire when it spawns.  Why?  Cause. :)
    #     ELECTRIC:     Make this creeper Super-charged when it spawns.  For
    #                   masochists/mean server ops only. :)
    #     RAINBOW:      Sheep will naturally spawn with the same chance of color
    #                   that they do normally.  This keyword makes the sheep that
    #                   spawns a random non-natural color.  (Well, pink sheep are
    #                   included)
    #     SHEARED:      Spawn a sheep pre-sheared for... whatever reason.
    #     SADDLED:      Put a saddle on that there pig.
    #     ANGRY:        Will find the nearest player, and attack.  For Spiders,
    #                   Wolves, and Zombie Pigmen.
        creatures:
            sheep:
                creature: SHEEP
            shearedsheep:
                creature: sheep
                keywords: [sheared]
            rainbowsheep:
                creature: sHeEp
                keywords: [rainbow]
            electrifiedcreeper:
                creature: Creeper
                keywords: [electric]
            zombie:
                creature: Zombie
            spider:
                creature: Spider
                keywords: [Angry]
            flamingballodeath:
                creature: Slime
                keywords: [Burning]
            mightysteed:
                creature: pig
                keywords: [saddled]
    
    ##########
    # Groups #
    ##########
    
    #     groups:
    #         name:
    #             keywords: [groupKeyword1, groupKeyword2]
    #             drop1:
    #                 range: [number] OR [min, max]
    #                 chance: <Percentage>, <Ratio>, <Double>
    #                 keywords: [drop1Keyword1, drop1Keyword2]
    #             drop2:
    #                 ...
    #
    # The name must be unique to all item, creature and group drops.
    # Each drop must be already defined in the "items" or "creatures" section.
    #   Also, due to limitations in the Bukkit yml implementation, you cannot use
    #   duplicate drop names.  If you want a group to have a chance of one apple,
    #   two apples, or three apples, you need three separate "apple" drops.  See
    #   "fruitful" for an example.
    # Range is a single number in brackets [1] or two numbers [1, 3] for min, max.
    #
    # Chance can be a percentage "2.5%", a ratio "1:40", or a double precision
    #   number "0.025".  For the group, it's just a weight, i.e. all the possible
    #   values are added up, then the weight is divided by it to come up with the
    #   chance a particular item will drop.  See "sheepparty" for an example.  In
    #   this case, since the 'total' percentage is 433%, sheep have a ~69% chance,
    #   rainbowsheep have a ~23% chance, and shearedsheep have an ~8% chance.
    #
    # The keywords can be any valid drop based keyword.  Any keywords in the drops
    #   will affect the 'chance' that items can drop.  Drops that cannot drop will
    #   be 'skipped' when checking for the total weight.  For example,
    #   in "sheepparty" if it's triggered by a leaf decay event, there is a 100%
    #   chance a sheared sheep will drop because of the NO_DECAY and SECURE
    #   keywords on the other two possibilities.
        groups:
            apples:
                apple:
                    range: [1]
                    chance: 99%
                goldenapple:
                    range: [1]
                    chance: 1%
                    keywords: [no_boom]
            sheepparty:
                sheep:
                    range: [1, 2]
                    chance: 300%
                    keywords: [no_decay]
                rainbowsheep:
                    range: [1, 2]
                    chance: 100%
                    keywords: [secure]
                shearedsheep:
                    range: [1, 2]
                    chance: 33%
            fruitful:
                apple:
                    range: [1]
                    chance: 70%
                apple2:
                    range: [2]
                    chance: .125
                apple3:
                    range: [3]
                    chance: '1:20'
                cocoabeans:
                    range: [1, 3]
                    chance: 12.5%
    
    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 16, 2016
  23. Offline

    Patrick Crespo

    Diamonds doesn't need an s, but what you do need to do is tell the plugin what a diamond is. Under "items" in the valid: section, add a "diamond:" sub key, or "supercalifragilistic:" key, whatever you want to call it.

    The reason I did this was to not limit the plugin to what bukkit has in case you had third party mods (Like BuildCraft for bukkit). If you look at what I put in, I just used the minecraft ID for diamonds.
    So in your configuration at the end of this section:
    Show Spoiler
    Code:
    #########
    # Items #
    #########
    
    #     items:
    #         name:
    #             type: <Material> OR <ID>
    #             data: [value1, value2, value3]
    #             keywords: [keyword1, keyword2]
    #
    # The name must be unique to all item, creature and group drops.
    # As above, the Bukkit Material or Block/Item ID works.
    #
    # The data values are what it *can* be.  A simple random choice will be made
    #   from the list of values given.  A single value must still be enclosed in
    #   brackets.  Omitting the value assumes "[0]".
    #
    # The keywords can be any valid drop based keyword.
    #
        items:
            apple:
                type: apple
            apple2:
                type: 260
            apple3:
                type: 0x104
            goldenapple:
                type: 322
            cocoabeans:
                type: 0x15f
                data: [3]
            randomDye:
                type: Ink_Sack
                data: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
            charcoal:
                type: coal
                data: [1]
    add:
    Code:
            diamond:
                type: 264
    Then use "diamond" as the key value for the drop.
     
  24. Offline

    Undectectable

    Hey if im trying to limit drops how can i do that? for example iron, instead of dropping everytime you mine it i want ti to only drop 50% of the time and the other 50% its cobble or air or something else.
    How can i do that? thanks :)
     
  25. Offline

    gdea73

    This plugin is said to be updated to 1.0.1-RB, however I can't get it to work.

    Code:
    21:58:41 [SEVERE] Could not load 'plugins/Fruitful.jar' in folder 'plugins': 
    java.lang.UnsupportedClassVersionError: com/ughcentral/fruitful/Fruitful : Unsupported major.minor version 51.0
    	at java.lang.ClassLoader.defineClass1(Native Method)
    	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
    	at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
    	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    	at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    	at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    	at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    	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:306)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    	at java.lang.Class.forName0(Native Method)
    	at java.lang.Class.forName(Class.java:247)
    	at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:170)
    	at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:215)
    	at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:136)
    	at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:151)
    	at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:127)
    	at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:52)
    	at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:145)
    	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:399)
    	at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
    
    I have no idea what this error means, and I'd really appreciate it if you could complete the update. This plugin is the best and I want to use it on my server, but it won't even launch currently :(
     
  26. Offline

    Patrick Crespo

    Hm, I'm using it on my server just fine, let me download the plugin from BukkitDev and see if it matches okay. :) A quick question though, what version of Java are you using? I use java 7 for my CB server. If it's possible, you should try updating to Java 7 and see if that fixes it.

    The problem is I have it set up to compile against Java 7 instead of Java 5 like bukkit, so if you're running an older version of Java you can get that error. I submitted a fix to Bukkit Dev, but in the meantime, here's a dropbox link to the version that should run on 1.5 or newer:
    http://dl.dropbox.com/u/28452414/v0.7.4.1/Fruitful.jar

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

    gdea73

    Awesome, thanks. I'm running Java 1.6_26 or something, on Ubuntu, and I don't know (or want to know really) how to update to Java 7, especially if it would break other plugins and services I've got running on here. It was difficult enough to get Java 6 (or any Sun Java) to work at all...

    Thanks for fixing it though :)
     
  28. Offline

    shauwk

    omg this plugin is sooooooooo cool !!!!!!
    hahha its really fun !! ghasts coming out of dirt :D

    oh yea i get this error often . is there a fix?

    04:17:20 [SEVERE] Could not pass event BLOCK_BREAK to Fruitful
    java.lang.ClassCastException: org.bukkit.craftbukkit.entity.CraftSlime cannot be cast to org.bukkit.entity.Creature
    at com.ughcentral.fruitful.drops.Creature.spawnIt(Creature.java:48)
    at com.ughcentral.fruitful.drops.Creature.dropIt(Creature.java:121)
    at com.ughcentral.fruitful.Fruitful.chanceIt(Fruitful.java:223)
    at com.ughcentral.fruitful.FruitfulBlockListener.onBlockBreak(FruitfulBlockListener.java:54)
    at org.bukkit.plugin.java.JavaPluginLoader$40.execute(JavaPluginLoader.java:539)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339)
    at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:201)
    at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:165)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:501)
    at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:208)
    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:93)
    at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:550)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
    >

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

    Patrick Crespo

    You could try updating to a dev build of Bukkit. I'm pretty sure they mentioned something about fixing something to do with slimes after the RB was released. I assume you're trying to spawn slimes? :)
     

Share This Page