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).
@Raulzus
Is your file the "- gamble_ores.yml"? You need to remove the hash character (#) from the front of the line as this indicates a comment.
Otherwise if you have tried this let me know (I just tested include files and they still appear to be working fine).
Spigot 1.9 did change a couple of things (no more PaintingBreakEvent - not that anyone probably uses that :)) so there's a new dev build up (link at top of GitHub page) to be posted here properly as soon as I have it properly tested (initial brief test looks good).
Using separate dropfiles doesn't work for me. I'm trying to make it so diamond and gold ore have a chance for something to happen when you break them.
When I put them in the otherdrops-drops.yml, they work perfectly fine but they stop working when I put them in a separate file.
http://pastie.org/private/k6wg6siacpzn1m7qpchixg
Here's the otherdrops-drops.yml: http://pastie.org/private/m8hckoqz0vnu6xgsxo0rq
I don't use any block drops I've only used it for mob drops so I guess that's why it seems completely broken to me. Everything was working fine til I updated to 1.9 and I do believe my spigot is up to date, my server host updates the jars automatically and I waited until the third and final one they posted to update my server.
@ZariusT
I can confirm that block drops work (drop egg after breaking grass) but all drops from mobs don't work. I set loglevel to "extreme" but there isn't even a small notice in the log after killing a mob (but there is one after breaking the grass).
I've just tested against my latest build and against the latest one on here (2.8b.582) and they both work fine - a couple of errors relating to metrics but drops still work. One odd thing I noticed is that the drops appear to go flying up into the air...
If you're still having problems I'd suggest trying with the latest Spigot build (I tested with git-Spigot-dd155ed-3e3516e (MC: 1.9) (Implementing API version 1.9-R0.1-SNAPSHOT)) and a simple "grass: egg" config on your test server - otherwise send me a copy of the config (via pastebin is fine) and I'll see if that's the problem.
@Cattraknoff
Thanks for the donation - appreciate it :)
@MicroCuts327
Yes, there is a way to get it working with custom mobs but I haven't tried it for a while. I'd need to build a custom version of OtherDrops with the code activated (as I haven't managed to get it the custom mob code to be ignored with normal Bukkit so had to comment it out entirely). I'll PM you my details and we can sort out sometime to test it.
@MicroCuts327
I believe there was a mocreatures list of entity id's somewhere on their forum on pmc or bukkit or something like that. It was years ago though so it may be buried now.
@Zarius you should have a few extra dollars in your coffee fund :) Sorry I can't give more my server is very new but I just wanted to let you know how much I appreciate your work.
@Cattraknoff
Yeah, I tried names and it doesn't recognize it, which is why I'm thinking entity id's. I need to get this to work for my server… x.x
@MicroCuts327
If there is any chance it would be with the MOB ID numerically in place of a name if such a thing exists. I think I tried to do something like this at one point with a mo creatures server but I don't recall if I ever got it working. But yeah the names will probably not be recognized.
Hey guys, I was not able to find solid info on if this plugin works with non-vanilla mobs, specifically Lycanites and MoCreatures. I am looking to make loot tables for my server and I would like them to drop emeralds (my servers form of currency).
I got emerald drops working no problem on vanilla mobs, but how do I get it to work with custom mobs?
Thanks!
I appreciate it, it's a really nice plugin I am probably going to use monster apoc's feature since I use that plugin anyway until it's fixed but I prefer this plugin because it allows me to use item number designations so I can get any item from it.
@Cattraknoff
Working on testing and fixing this :)
Yeah I'm getting the same issue as meytro using Spigot 1.9 plugin appears to load but doesn't change the drops.
@ZariusT
With Spigot 1.9 the plugin loads without errors but drops aren't modified in any way. I hope you can fix it.
@AtracadorThe
Not at this stage - it only just came out! :) Depending on Bukkit/Spigot support then OtherDrops should automatically support majority of new blocks/items.
Anything in particular you think should be added?
Any updates on 1.9?
Hi i have the neewest Version of ur plugin(my serwer Verison is 1.7.10 and engine: spigot for 1.7.10) and that bug: [23:36:20 ERROR]: Could not pass event LeavesDecayEvent to OtherDrops v2.8b.582 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) [spigot_1.7.10.jar:git-Spigot-1646] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [spigot_1.7.10.jar:git-Spigot-1646] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514) [spigot_1.7.10.jar:git-Spigot-1646] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499) [spigot_1.7.10.jar:git-Spigot-1646] at net.minecraft.server.v1_7_R4.BlockLeaves.e(BlockLeaves.java:127) [spigot_1.7.10.jar:git-Spigot-1646] at net.minecraft.server.v1_7_R4.BlockLeaves.a(BlockLeaves.java:118) [spigot_1.7.10.jar:git-Spigot-1646] at net.minecraft.server.v1_7_R4.WorldServer.g(WorldServer.java:433) [spigot_1.7.10.jar:git-Spigot-1646] at net.minecraft.server.v1_7_R4.WorldServer.doTick(WorldServer.java:215) [spigot_1.7.10.jar:git-Spigot-1646] at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:690) [spigot_1.7.10.jar:git-Spigot-1646] at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [spigot_1.7.10.jar:git-Spigot-1646] at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [spigot_1.7.10.jar:git-Spigot-1646] at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [spigot_1.7.10.jar:git-Spigot-1646] at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [spigot_1.7.10.jar:git-Spigot-1646] Caused by: java.lang.IncompatibleClassChangeError: Found interface com.sk89q.worldguard.protection.ApplicableRegionSet, but class was expected at com.gmail.zariust.otherdrops.listener.OdBlockListener.checkWorldguardLeafDecayPermission(OdBlockListener.java:62) [?:?] at com.gmail.zariust.otherdrops.listener.OdBlockListener.onLeavesDecay(OdBlockListener.java:78) [?:?] at sun.reflect.GeneratedMethodAccessor517.invoke(Unknown Source) [?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [?:1.7.0_95] at java.lang.reflect.Method.invoke(Method.java:606) [?:1.7.0_95] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298) [spigot_1.7.10.jar:git-Spigot-1646] ... 12 more
Please fix this. I see it very usual in my console :(
Ok so, durability don't work. Every block I do my durability goes down by one when it have unbreaking 10.
How make it so it doesn't do that? please make a update where you can set it to true or false! I have tried everything, but if you're going to tell me how to do it please be VERY precise.
@Isaacey
You might be trying the dev builds link - that's not working yet. It's at the top of the GitHub source page - https://github.com/Zarius/Bukkit-OtherBlocks/
@ZaruisT
Can you please link me to that download, it's broken.