OtherDrops
Make anything drop anything, anyhow!
Minecraft 1.7 features (click)!!
OtherDrops allows you to add anything from a simple "glass drops glass" or mob rewards, to a complex overhaul of your servers drops with drops differing depending on tools, biome, time, weather and much more, along with custom messages, actions and commands.
OtherDrops is lightweight* (it only acts on what you configure) and respects most protection plugins (eg. WorldGuard, Regios) settings. Many examples are included that you can enable and/or customize as you wish.
Getting Started (tutorials)
- Install & setup first custom drops
- Customising mob & block drops
- Customising money & XP rewards
- Customising fishing rewards
- Customising mob spawns
Core Features
- Drop anything!* (*from Bukkit - if it doesn't, let me know)
- Use triggers such as block break, combat, fishing & more
- Conditions to fine-tune your drops such as tool, world, regions, weather, permissions & more
- Add actions including damage, healing, messages, potion effects & more
- Easy syntax allows you to quickly customize drops & rewards for your server
- Future Support
- Where-ever possible the official Bukkit lists are used so OtherDrops supports all current and future:
- blocks, items, mobs, enchantments, potion effects, biomes,
- spawn reasons, tree, villager professions, cat & skeleton types
- Support for special item data:
- Custom names & lore text
- Enchanted weapons & armour (or add random enchantments)
- Enchant anything with unlimited levels (dirt with level 30 damage?)
- Enchanted books with any enchantment
- Written books (wtih custom title/author/pages)
- Leather armour colors
- Custom fireworks colors
- Skull types & custom player heads
- Support for special mob data:
- Custom names, HP (health) & equipment for any mob
- Baby animals (all "Ageable" mobs - chicken, cow, pig, zombie etc)
- Tame wolves (including collar color) or cats (& different cat types)
- Sheep colors (and sheared/unsheared)
- Villager professions, villager zombies, powered creepers & agressive level for pig-zombies
- Wither skeletons, Slime & lava-slimes of any size
- Economy support (via Vault)
- Support for all major economy plugins (see Vault project page)
- Players can gain, lose or steal money based on fixed amount or percentage
- Compatible with "MoneyDrop" to drop physical money items.
Conditions
- Multi-world support - create separate files to handle each world
- Add super rare drops with chance values down to 0.000000001%
- Specify tools required (or a list of tools eg. [any sword, -diamond sword])
- Lorename, Heroes (class & level) conditions
- Cooldowns
Actions
- Apply actions alongside the drop (or even without a drop)
- Damage tools and/or consume items (eg. use dyes to color wool)
- Damage or heal the victim, player or even the whole world
- Apply potion effects to the victim, player, radius, world or server
- Display custom messages (or a list of messages with one selected at random)
- Create explosions, lightning, visual effects (including particles), sound effects
- Run commands
Ideas
- Give leaves various chances of dropping apples, sticks, cocoa beans, saplings, etc on break and/or leaf decay.
- Make glass, stairs, and boats reclaimable (can be tool-specific if you wish).
- Allow gold and iron to be mined directly into ingots with a golden pickaxe.
- Allow users to right-click on cobblestone with vines in hand to turn the cobblestone mossy.
- Nerf mob traps by disabling drops from environmental damage.
- Unleash the zombie apocalypse by setting zombies to drop zombies when they die! (This can be world-specific.)
- Make mobs that don't normally spawn naturally spawn.
- Make mob spawning, drops, and events biome specific!
Documentation
Dev Builds
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
Help Wanted
Would you like to help improve OtherDrops? Here are some ways to get involved:
- Media/art: OtherDrops could really do with some tutorial and example videos.
- Testers: Testers who are able to go through the plugin and rigorously check that things (both existing and new features) work as they should. PM Zarius your Skype (or other IM) details if you're interested or jump on the IRC channel.
- Programming: any assistance is welcomed - see the todo list here for some ideas. Anyone with refactoring and/or automated testing experience that wants to assist would be great.
Thanks
Many thanks to these people who helped with OtherDrops:
- Cyklo: creator of the original OtherBlocks. OtherDrops is a continuation of Cyklo's original OtherBlocks (2011) plugin.
- Celtic Minstrel: many code commits and a major overhaul of the code moving into version 2.0. Moved on to create DropFactory.
- Rofang: major update of OtherDrops documentation.
- RugRats13: lots of testing and some documentation.
- Faldonboy & Steelsouls: currently maintaining and improving the documentation.
- CommodoreAlpha: community support on the comments/forum, assisting with documentation.
Many long nights are spent improving OtherDrops so if you like it please consider a donation to my coffee fund :)
- OtherDrops uses Metrics for anonymous usage stats (learn more).
Hello, first I wanted to say great plugin.
I have read through most of the pages but I have not found my answer. Basicly I am trying to make a technic style server with a custom map where Stone blocks have a 1% chance of dropping any ore redpower and ic add to the game. Like Tin Ore, Silver Ore, ect but I am unable to figure out how to get them to spawn without using the id number like /i 247 or something. When I try to use the id number in the drops.yml I crash in game when I break that block.
Is there any way to add these items as drops?
btw /i tinore, /i tin_ore and a bunch of other names fail to work.
Thank you in advance
Not sure why this isn't working...anyone have some insight?
CREATURE_ZOMBIE:
- tool : [ANY_SWORD, ANY_AXE, BOW, ARROW]
drop : EXP/3
quantity: 1
chance: 50%
- tool : [ANY_SWORD, ANY_AXE, BOW, ARROW]
drop : {MONEY/10-30/70%, GOLD_NUGGET/1-2/10%, DIAMOND/1/1%}
- tool : ALL
drop : GLOWSTONE_DUST/2-4/90%
- tool : ALL
drop : BOOK/1-3/25%
- tool : ALL
drop : ROTTEN_FLESH/1-2/5%
- tool : ALL
drop : COOKIE/1-2/5%
Basically I want the zombie to drop EXP every other time one is killed.
Then I want it to drop only one instance of money, gold nugget, or diamond; but only one of the three.
Then I want it to always have a chance to drop some glow-stone dust, some books, some rotten flesh, and/or some cookies.
On that last part I want it to always have a chance to drop any of them, or all of them, or none of them (should I set the range from 0-X instead of 1-X?)
I've been playing with syntax for a couple days now and can't seem to get it to work. Especially the EXP. If I exclude everything else from the drop it works, if I include even one other drop then it doesn't work (the EXP that is).
Heres how i disable drops:
First make the zombie drop nithing
That drops air, or nothing all the time, no matter what tool/weapon/block you hold when you slay it. ALL also covers death by fire, fall damage and so on....
After you simply add the drop you want to occour so it would look like this:
Thats basically it. Keep in mind the above code is not copy+pastable
@RealityIntern
Well I just looked and it said that when you have a chance like FEATHERS/50%, and leave the rest blank, it says when the 50% chance is false, it will revert back to the original drop, so the other 50% turns into dropping rotten flesh like normal. I just read it, maybe I missed something so I will just write NOTHING in there just to be safe. Thanks for the help!
@calvissuperman
Theoretically this should work:
ZOMBIE:
- drop: {FEATHER/75%}
I haven't tested that, though. It's a 75% chance to drop a feather, otherwise drop nothing. (items in brackets choose one or drops nothing, based on doc) You could add NOTHING to one of the options if that doesn't work. I just like to use as small a config as possible, for no good reason.
ZOMBIE:
- drop: {FEATHER/75%, NOTHING/25%}
Which I think this is the same as:
ZOMBIE:
- drop: FEATHER
chance: 75%
- drop: NOTHING
chance: 25%
As well as:
ZOMBIE:
- drop: FEATHER/75%
- drop: NOTHING/25%
But the remainder chance% for NOTHING is probably not necessary in any of those. There's multiple ways of writing that (more than I just wrote, even). Just choose whichever is more logical to you.
So I've skimmed the configuration files a bit, and the online help, but I haven't found how to erase the default drops of blocks. So say I want a Zombie no longer to drop rotten flesh at all, but I only want feathers to drop 75% of the time, how would I write that one out? Thanks again for the help!
@Calvissuperman
I'll be honest, at first it seems like a lot; but once you get the hang of it there are things that this plugin can do that no other plugin does so well. I went from having 3 plugins to handle things, down to just this 1 that does the job of all three others and then some. This plugin is without a doubt a must have for anyone with a server. No other plugin controls drops so well, and so elegantly
@mike0fmikes
@RealityIntern
Thank you very much, I really appreciate it when people take the time to give detailed information on a question that I have. I will try it out, I've had a different block drop plugin before, and that's why I want this one so much.
Thanks once again!!
@Calvissuperman
It works fine with me, with no errors in console ( beta8 )
However, I think Essentials is jacking the EXP drop. When I boot the server with Essentials gone, EXP works fine. When I boot with Essentials, no EXP drops
@calvissuperman
It works well for me, though there are some features that don't work. If you don't want to troubleshoot, this probably isn't the plugin you want even if everything was working perfectly to the documentation. There's very specific configuration that you have to do. I love it, personally, as it's very flexible so that I can replicate the functionality of dozens of plugins. It just needs to be updated.
So have people been able to get this working for 1.0.1? Because I'm running a lot of plugins already, and I don't want to have to troubleshoot too much :/ Just wondering, thanks for any feedback!
a wild error appears (right after I get my first issue straightened out)
2011-12-29 15:39:07 [SEVERE] Could not pass event BLOCK_BREAK to OtherDrops java.lang.NullPointerException at com.gmail.zariust.otherdrops.event.CustomDropEvent.isWeather(CustomDropEvent.java:244) at com.gmail.zariust.otherdrops.event.CustomDropEvent.matches(CustomDropEvent.java:97) at com.gmail.zariust.otherdrops.OtherDrops.performDrop(OtherDrops.java:358) at com.gmail.zariust.otherdrops.listener.OdBlockListener.onBlockBreak(OdBlockListener.java:84) 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.dig(ItemInWorldManager.java:98) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:498) 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 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)
@Folas1337
Thank you!!!! Exactly what I needed.
@folas1337
Don't put actions inside drops in a dropgroup. That's why it was getting double explosions. Example:
TNT:
- dropgroup: delayedexplosion
action: LEFT_CLICK
chance: 50
drops:
- message: "Watch out!"
drop: NOTHING
- delay: 50
event: EXPLOSION
I did something similar the other day in an attempt to spice up a spleef arena with color coded wool blocks. Tick tick tock BOOM!
WOOL@RED:
- dropgroup: explodingwool
action: RIGHT_CLICK
region: spleef
drops:
- effect: CLICK1
- delay: 10
effect: CLICK1
- delay: 20
effect: CLICK2
- delay: 30
event: EXPLOSION
@mike0fmikes
I got them working as described in the "pages". Simply type
drop: Exp/(how many exp per orb)
quantity: (how many orbs)
That should be it :D
@po5
I'll work a little more on that and tell you bout the results :)
Wow... That really worked O.O I'll give my config to everyone who maybe wants to also use this =)
has anyone gotten EXP drops to work?
Cool beans Foloas.
Did you get the explosion event working?
I did it once, using drop groups. Cant remember how tho. So its possible
How to fix the not playing death-animation:
Simply add "delay: 20" and the whole animation will play and the drop will pop out after the animation.
That's how I do it :) Have fun and a nice day :)
@Folas1337
Try drop groups. Put a message in the first one, then put a delay on a second one with the explosion.
@slimpyman
Darng but thanks for the help. I'll watch out if something like this will be implemented soon :D