Parameters
This page lists all parameters which you can use in your drop file to change the way drop events work (see the Drop file page to learn about the anatomy of this file and how it should be structured).
The following parameters are available:
Conditions
Conditional parameters determine whether the drop event should occur. (If using a drop group, these parameters — with one exception — may appear either inside the individual drops or outside the drop group.)
Triggers
A "trigger:
" (Alias - trig:
) parameter determines the means by which the drop event is triggered. (If using a drop group, the trigger must be placed outside the drop group; this is the only parameter not allowed inside a drop group.)
Values:
BREAK: | Triggers when a block breaks or an entity is destroyed. (This is the default action trigger and doesn't need to be specified.) |
LEFT_CLICK: | Triggers when you left-click a block/entity. |
RIGHT_CLICK: | Triggers when you right-click a block/entity. |
LEAF_DECAY: | Triggers when a LEAVES block decays naturally. |
FISH_CAUGHT: | Triggers when a player catches a fish (you must specify "PLAYER" as the object) |
FISH_FAILED: | Triggers when player finishes fishing with no catch |
MOB_SPAWN: | Triggers when a mob spawns |
HIT: | Triggers when the target is hit |
BLOCK_PLACE | Triggers when a block is placed |
POWER_UP | Triggers when a block receives a redstone signal |
POWER_DOWN | Triggers when a block loses a redstone signal |
PLAYER_MOVE | Triggers when a player moves over a specified block type (Warning - Don't overuse this) |
PLAYER_JOIN | Triggers when a player joins the server |
PLAYER_RESPAWN | Triggers when a player re-spawns |
CONSUME_ITEM | Triggers when a player eats or drinks an item ("PLAYER" is the object; the fooditem is the tool) |
BLOCK_GROW | Triggers when a block(Plants) grow a stage |
PROJECTILE_HIT_BLOCK | Triggers when a projectile hits a block |
Plugins may also add their own actions (see API page for more info).
You may specify multiple actions using square brackets; for example, giving LEAVES a parameter of trigger: [BREAK, LEAF_DECAY]
would trigger either when a player broke the leaf block or it decayed naturally.
Other Conditions
In the following condition parameters, you can specify multiple values using brackets and commas, such as time: [DUSK, DAWN]
. With most of the conditions, you may also create a negative match with a minus sign, such as tool: [ANY_SWORD, -WOOD_SWORD]
; in this example, any sword except a wood sword would trigger the drop event.
- tool:
- The drop will trigger only for the specified tool(s) (see Tools page for usable values). Negative matches allowed. Default:
ANY
- world:
- World(s) in which this drop can trigger. Negative matches allowed. Default:
ANY
- region:
- WorldGuard region(s) in which this drop can trigger. Negative matches allowed. Default:
ANY
- biome:
- Biomes in which this drop can trigger. Negative matches allowed. Default:
ANY
- permission:
- The drop will only trigger for players with the specified permission(s). Negative matches allowed. Example:
permissions: [hunter, thief]
would trigger only for players with one or both of the permissions nodesotherdrops.custom.hunter
orotherdrops.custom.thief
- msir:
- The drop will only trigger if there is a mob spawner within the specified range.
Example - (msir: 15)
- msir.not:
- The drop will only trigger if there is
not
a mob spawner within the specified range.Example - (msir.not: 15)
- time:
- The drop can only trigger during the specified time of day (
DAY/NIGHT/DUSK/DAWN/DARKNESS
, where DARKNESS is anything but DAY). Negative matches allowed. Default:ANY
- weather:
- The drop can only trigger in the specified weather conditions (
RAIN/SNOW/THUNDER/CLEAR/CLOUD/NONE/STORM
, where NONE=Nether). Default:ANY
- lorename:
- The drop can only be triggered if the player is using the specifically named item. (Ex.
lorename: SuperShovel
) Can be combined with a tool parameter to require a specific tool being that name. Supports colors (eg. &a, etc) but you need to surround the name in quotes (eg.lorename: "&aSuperShovel"
). - spawnedby:
- The drop can only trigger if the mob was spawned in this fashion. (Ex.
spawnedby: SPAWN_EGG
) Check the Spawn Reason page for a list of other triggers. - height:
- The drop can only trigger at the specified y-coordinate range. Examples (quotes are required):
"<15"
,">64"
,"=30"
- lightlevel:
- Similar to "height" above, but determines the light level (0-15) within which the drop can trigger.
- attackrange:
- Similar to "height" above, but determines an attack range (i.e. when attacking a mob) within which the drop can trigger.
- flags:
- Specifies one or more binary conditions that must hold (use the square bracket format to indicate multiple flag requirements). Currently supported flags:
- IN_MOB_ARENA allows the drop event to occur in MobArena arenas.
- UNIQUE prevents further drop event processing for the current object once this drop event processes successfully. Note that OtherDrops will evaluate drops flagged as UNIQUE first even if they aren't listed first in your drop file.
- face:
- If the action is
LEFT_CLICK
orRIGHT_CLICK
, this parameter restricts the trigger to a certain side of the block (UP, DOWN, NORTH, SOUTH, WEST, or EAST). Negative matches allowed. Alias:faces:
.
Randomness and Delays
- chance:
- Determines the odds that the drop will occur (specify as a percentage, eg.
50%
). A chance of 100% (the default) will override the object's default drop (players aside) unless you also specifydrop: DEFAULT
somewhere for that object. Values below 1% are allowed (eg. 0.0000002%) - delay:
- Delays the drop by the specified number of ticks (20 ticks are generally equal to 1 second). This parameter is listed with conditions because it, too, is allowed inside a drop group; if used inside, it will delay only the sub-drop to which it pertains.
Results
Result parameters determine the result of the drop event once it triggers. (If using a drop group, these parameters must be placed inside the drop group.)
Drops
Specify what (if anything) drops as a result of the drop event.
- drop:
- Determines what drops (see Drops page for usable values, as well as how to specify multiple values). Special values worth mentioning here include
drop: NOTHING
(to disable the default drop) anddrop: DENY
(prevents the event from even happening at all; thus nothing gets dropped, and what normally would have happened gets canceled completely). - quantity:
- The quantity to drop. You may specify a range (eg.
0-4
) for a randomized drop quantity. Default:1
- data:
- Specify an optional color or data value for the drop. Alternately, specify this with an @ sign after the drop name (eg.
drop: WOOL@RED
). Alias:color:
. Data can also be represented as an integer drop value (eg. drop: 318@1022) - enchantments:
- Enchantments can be added to item drops after the data value (eg. drop: diamond_sword@!damage_all#2) - use #x at the end for the enchantment level.
- lorename:
- The name of the dropped item can also be changed by specifying it with an @!~ after the drop name (ex.
drop:
). If using data values or enchantments the lorename comes last.RAW_FISH@!~Raw Tuna
- dropspread:
- Determines whether drop quantities greater than 1 are deposited individually (otherwise they will be grouped into a single stack when dropped). Can be set to
TRUE
,FALSE
, or a percentage (eg.50%
) for randomized odds of dropping individually. Default:TRUE
- money:
- This can be set as an integer, or a percentage to remove a certain amount of money from a player. (i.e. "-5" will remove 5 points from a player, and "2%" will increase the player's asset by 2%.) Extensions of this parameter include ".victim" and ".steal", along with all the other standard extensions such as ".server".
The quantity and chance (chance is listed under "Conditions > Randomness and Delays," above) can be written inline with the drop in an abbreviated format using slash separators. Examples:
drop: WOOL
drop: WOOL@RED
drop: WOOL/1-3
drop: WOOL@RED/1-3
drop: WOOL/50%
drop: WOOL/1-3/50%
drop: WOOL/50%/1-3
Actions
The following parameters execute some action when the drop event occurs.
message: | Show a message to the player who triggered the action (alias: message.attacker) |
message.victim: | Show a message to the player killed (or interacted with) |
message.world: | Send a message to all players in the world in which the event occurred |
message.server: | Send a message to all players on the server |
message.radius: | Sends a message to all players within the radius set in otherdrops.config |
Enclose messages with quotation marks. To choose randomly from multiple message options, use brackets and commas (i.e. message: ["Watch out!", "Boo!"]
). Variables can also be used in lore and custom names. The following special values are supported:
%loc.x | Displays the X coordinate of the player/drop |
%loc.y | Displays the Y coordinate of the player/drop |
%loc.z | Displays the Z coordinate of the player/drop |
%loc.world | Displays the WORLD of the player/drop |
%date | Displays the date |
%time | Displays the time |
%displayname | Shows the custom name of the tool or mob used |
%deathmessage | Shows the death message for the tool or mob used |
%t | Displays as the name of the tool used |
%q | Displays as the drop quantity in-message |
%p | Displays as the (attacking) player's name (or player who broke the block) |
%v | Displays as the victim's name (or block-name if a block is broken) |
&x | Changes the text color (where "x" is a color code) |
&& | Displays as a single ampersand (used in situation where a single ampersand may be interpreted as a color, eg. "white&&black") |
- command:
- Perform a command - all variables as per "message" are accepted (eg. %p, %v, etc). Enclose commands with quotation marks. To run multiple commands, use brackets and commas (similar to
message:
example above). Alias:commands:
. Use the following command prefixes:
Prefix | Run as... | Send resulting messages to... |
---|---|---|
/ | Player | Player |
/! | Player | Console |
/* | Player (OP override) | Player |
/!* | Player (OP override) | Console |
/$ | Console | Player |
/!$ | Console | Console |
- damage.[attacker/victim/radius/world/server]:
- Inflict damage on the player or creature who triggered the action [attacker], the entity receiving the action, if applicable [victim], a radius around the attacker [radius], the entire world [world], or server [server].
- This damage will ignore armor, and is specified as an integer - e.g. "2" would be one heart of damage.
- Negative values will instead heal.
For radius (damage.radius), you must specify "@integer" like "@3" in addition to the integer that determines damage, to determine the size of the radius in blocks. (e.g. 2@3; two hearts in a three block radius)The radius of (damage.radius) depends on the integer-value you set for it in your global configuration file.- You can also add "FIRE" and "LIGHTNING" (e.g. LIGHTNING@20).
- pset.[hunger/exhaustion/xp/speed]:
- Change a player-related attribute. [hunger] refers to the player's hunger bar. [exhaustion] refers to the player's saturation (their "hidden" hunger bar). [xp] refers to the player's experience points/levels (needs confirmation on which one it is). [speed] refers to the player's innate speed level, set by NBT tags.
- All integers should be surrounded in double quotes; for example: [pset.hunger: "5"].
- Specifying just an integer will set it to that exact amount (i.e. pset.hunger: "5" will set your hunger to 5 no matter what). Specifying "+" or "-" in front of the integer will make it add or subtract from the player's current value, thus making it relative (i.e. pset.hunger "+5" will add 5 points to your current hunger).
- replacementblock:
- Replace the affected object (e.g. a block or an entity) with another object.
- loc-offset:
- Add a location offset for drops, events, and effects. Use X, Y, and Z coordinates separated with slashes (eg.
loc-offset: 4/0/4
). - loc-randomise:
- Similar to above, but randomized up to the specified X/Y/Z amounts.
Tool Actions
The following actions affect the tool which was used for the action. Keep in mind you must specify a positive integer; negative integers are not accepted. The values you specify here are read as integers, not percentages.
- damagetool:
- Add damage points to a tool which uses a damage bar (adding damage points makes the tool lose durability). Items vary in the amount of damage points they can take before breaking (reference tables here). This parameter does nothing to blocks/items which don't use the damage bar.
- fixtool:
- As above, but subtracts damage points (i.e. restores the tool's durability). Ignored if
damagetool:
is present. - consumetool:
- Reduce the quantity of the tool by the specified amount. (For tools that use the damage bar, this parameter applies only at the moment the tool would break; in this case, a value of
0
could prevent the tool from disappearing.) - growtool:
- As above, but adds to the quantity of the tool. Ignored if
consumetool:
is present. - replacetool:
- Replaces the tool with whatever item/block you specify. (For tools that use the damage bar, this parameter applies only at the moment the tool would break.) This parameter does not presently accept group synonyms or bracketed lists.
- potioneffects:
- apply potion effects (defaults to attacker) <effect name>@<duration>@<strength> (can also use, potioneffects.victim, .attacker, .world, .server)
Events
An "event:
" parameter can trigger one of a number of preset in-game events.
Values:
- NOPHYSICS
- Prevents surrounding blocks from checking whether they should fall. (This event is not yet working in 2.0.)
- LIGHTNING
- Produces a lightning bolt. Optionally accepts the following data values:
@HARMLESS
(just for show),@PLAYER
(the player's current location),@PLAYERLOCATION
(the player's original location; may differ from current location if a delay is used). - STORM
- Changes the weather to cloudy (accepts optional data values of @ON, @OFF).
- THUNDER
- Changes the weather to a thunderstorm (accepts optional data values of @ON, @OFF).
- EXPLOSION
- Trigger a generic explosion. Accepts multiple parameters - power@FIRE@NOBREAK (fire sets random fires within explosion radius, nobreak will not break blocks). Power testing discovered: # 0 = sound, effect, no player or block damage, # 0.5 = sometimes hurts player, destroys 1 block, # 0.75 = 2.5 hearts damage, destroys about 4 blocks, # 2 = 6-8 hearts damage, about 40 blocks, # 4 = default setting for "EXPLOSION", # 100 = blows away half a mountain, # 1000 = server times out, devastates 100 block radius, when joinable server lags due to massive number of dropped blocks. Examples: event: EXPLOSION@2@FIRE@NOBREAK, EXPLOSION@FIRE, EXPLOSION@10@NOBREAK, etc. (note: NOBREAK is only from version 2.8b.363 onwards).
- TREE
- Try to grow a tree on the spot. Optionally accepts the following data values:
@BIG_TREE
,@BIRCH
,@REDWOOD
,@TALL_REDWOOD
. - FORCETREE
- Ignores some of Minecraft's checks for where a tree is allowed to grow (eg. dirt below, space above). It will still not grow directly above a tile entity such as a chest unless your global config contains the line
events.trees.force-tile-entities: true
(because this requires OtherDrops to temporarily replace the block below with dirt to trick the tree into growing; note that this function is experimental).
Plugins may also add their own events (see API page for more info).
Sheep Events
Some "event:
" parameters affect a sheep in some way when the drop event occurs (provided the object is actually a sheep).
Values:
- SHEAR
- Changes the sheep to sheared.
- UNSHEAR
- Changes the sheep to unsheared.
- SHEARTOGGLE
- Toggles the sheep's sheared status.
- DYE
- Dyes the sheep a new color (example:
sheep: DYE@RED
).
Effects
An "effect:
" parameter produces some effect (generally a sound or visual effect) when the drop event occurs.
Current values (see Bukkit Effects page for the most up-to-date list)
- BLAZE_SHOOT
- Same as a Ghast fireball sound effect.
- BOW_FIRE
- Produces the a bow-firing sound effect.
- CLICK1
- Produces a click sound effect.
- CLICK2
- Produces a different click sound effect.
- DOOR_TOGGLE
- Produces a door-toggle sound effect.
- ENDER_SIGNAL
- unverified - Not working as of latest version.
- EXTINGUISH
- Produces a fire extinguish sound effect.
- GHAST_SHOOT
- Same basic effect as a Blaze shoot, makes the sound of a fireball coming at you.
- GHAST_SHRIEK
- Produces a Ghast shriek, the one when they are being hit.
- MOBSPAWNER_FLAMES
- visual effect - many small flames as you see on mobspawners
- POTION_BREAK
- Produces a blue splash potion effect and sound.
- RECORD_PLAY
- Begins playing music (specify
@GREEN_RECORD
or@GOLD_RECORD
- default is a random pick from these two). - SMOKE
- Produces smoke (specify a direction, eg.
@NORTH
or@SELF
- default is a random direction - see here for list of all directions). - STEP_SOUND
- Produces the particle and sound effect of breaking a block according to the block specified (must specify a block type, eg.
@STONE
will produce a stone-breaking sound effect, and will make stone-block particles).
For basic sound effects, a radius may be specified (eg. @10
). For sound effects which already include a data value, a radius may be specified with a slash (eg. @GREEN_RECORD/20
).
Deprecated Parameters
The following parameters are deprecated (they still work but are not recommended):
"Exception" parameters which are parameters dedicated to excluding a variable from a list. These include: toolexcept, worldexcept, regionexcept, permissionexcept, permissiongroups, & permissiongroupsexcept. Use their non-excepting variants instead; you can specify something to be negated simply by adding "-" in front of the variable. (e.g. tool: [ANY_ITEM, -DIAMOND])
The "exclusive" parameter has been removed in favor of "flags: UNIQUE".
The "action" parameter has been entirely replaced by "trigger" - it's recommended to replace every instance of "action" within your drops files with "trigger".