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).
@CommodoreAlpha
Hey,
Is there currently no support for named items that aren't equipment? I have custom recipes on my server and was looking forward to making some buffed foods, like a Cookie that spawns animals when eaten, but I can't get this drop working;
@Noxcode
Horse was added recently (on my request); use the latest dev build for that (on the dev build page).
Your suggestion concerning xp is feasible to implement (make a ticket for that), but there's no current way to do it in OtherDrops. That's because changing experience points is handled only as an effect (AKA a result) rather than looked at as a condition.
And as for your question why it's not in the creature list, it's because I haven't documented it yet. And it's people like you who remind me of what isn't currently documented, and how I get anything done nowadays. :)
EDIT: Done, and I've included every possible value. (If you're curious as to why "SADDLED" is a value on the PIG but not the HORSE, it's because the data for saddles is handled differently between them. Horses have an inventory for the saddle whereas Pigs do not and must handle it as a state.)
Hi,
I've now add so many things with this awesome plugin (more than 700 lines) and it continues to well work. This is truly the best plugin I know. :)
However I still meet some annonying constraints :
- Is there no possibility to use horse as an object ? I don't see it in the creature pages.
- I saw it exists a parameter to remove "xp" from the player when he performs a specific action, but there's no condition to limit it (when you want the player need at least 100xp).
Any solution or just infeasable ? :(
EDIT : I would better try before say something. the object HORSE is well working. Why not add it in the creature list ?
@Treijim
Sorry, meant to say remove the item with consumetool: 1, I think.
@Treijim
Yeah, that should be right.
@CommodoreAlpha
That makes a lot of sense, thanks! You guys are really good at answering questions here. So I should add every altered food item into the one player object section, right?
@ZariusT
Thanks. What does "ringing" the item mean and how do I do it?
@Treijim
The example below should work, only works for edible items because it listens for Minecraft to say something is being eaten. You can fake it with other items by listening to right_click trigger, removing the item and performing some effect.
@Treijim
Concerning objects, the question asked is "what is being done?" In this case, something is consuming an item, and only players can consume items, so the object must be "PLAYER:". If the trigger is "BREAK", both mobs and blocks can "be broken" and so on.
Another question to ask would be "what is the player eating," or rather "what is the player eating with," indicating that the food being eaten is the "tool:" parameter.
In hindsight, you could arrive at the opposite conclusion due to my vague wording and switching between passive and active (i.e. the apple is the object because it is being eaten and the thing eating it is the player so the player is the tool), but this is the correct way to approach it.
Here is an example where eating an apple makes you explode.
How do I use the "consume_item" trigger? Can I have a quick example, because I don't know what situation to use it in. And can it be used to make other items edible, or just edible ones?
@Becto
That should work.
@jhicks32917
OtherDrops cannot change the enchantment names at all, only affect what enchantment the custom drops have.
Is it possible to customize the names of Vanilla Enchantments or remove the names entirely?
Would this tag work to disable custom drops from mobs spawned by a mob spawner? spawnedby.not: spawner
Oh well... :/ so I will try to use another NBT to custom the bow. :) Thank you
EDIT : okay I found a very simple solution. If you want to custom the texture of a bow or any weapon held by a mob, just exceed the damage tag in its CIT propreties files. So you can give a bow to a Skeleton which has a damage of 385 (real value: -1) (because a mob can't break a weapon).
By the way, adding enchantment on a mob equipment seem to be ignored.
@Noxcode
Watch out when you include the
~
character in your comment. It won't render in WikiCreole markupunless you tell it to not format your text.
Currently, the format for specifying equips on mobs is this:
MOBNAME@eq:{slot}:{material}@{data}\!{enchantment}#{ench level}<{dropchance}!!{next slot...}
So I don't think it currently supports naming. "Data" refers to the data value of the item - nothing more. To support equipping mobs with named items, the format above would have to be restructured, and that would take awhile (mainly because @ZariusT will need to find a way to distinguish renaming items and renaming mobs as they both use the
~
character to parse that parameter).Hi,
I provide to create a skeleton which has a special bow (with a texture pack) in iced regions.
However, when I try to create a drop :
It names the Skeleton instead of the item "261"
Is it possible to name the weapon ?
Thank you in advance !
@ZariusT
That's what it's set to already, so it doesn't work. 582 also spams an error regarding leafdecay, which is the reason I updated it to 596:
@CommodoreAlpha
Yes, this is correct - ZOMBIE refers to any zombie, named or unnamed. You can try ZOMBIE@~ (I.e. just one tilde and no name) to indicate zombie with no name.
@Treijim
That may be because the "unnamed" zombie extends to zombies in general, if you specified it as "ZOMBIE:" instead of "ZOMBIE@20h" or something. Still, only @ZariusT can say whether that's intended behaviour.
@ZariusT
582 seems to read the names properly but it seems to be reading them together; if I kill a zombie named Bandit, it will pick things from both Bandit and the regular "unnamed" zombie's drop options.
@Treijim
Unfortunately names are broken on 596, try 582.