ItemsAdderAdditionsItemsAdderAdditions
Advancements

Triggers

Reference all built-in custom advancement trigger types.

Since v1.0.9

Triggers define what the player must do to complete a criterion. Each criterion has one trigger and an optional conditions block.

criteria:
  <criterion_id>:
    trigger: <trigger_type>
    conditions:
      # trigger-specific options

An advancement can have multiple criteria. All of them must be completed before the advancement is awarded. Every runtime trigger also supports an optional conditions.player predicate for extra player-state requirements; see Player predicates. Item conditions support ItemsAdder IDs, MMOItems IDs, vanilla item IDs, vanilla item tags, and supported ItemsAdderAdditions custom item tags. Block, furniture, and recipe conditions support custom tags where the matching path accepts tags. See IDs for the shared syntax.


obtain_item

Fires when the player picks up an item from the ground.

criteria:
  get_sword:
    trigger: obtain_item
    conditions:
      items:
        - my_pack:ruby_sword
        - my_pack:iron_sword
      amount: 1
KeyTypeDefaultDescription
item / itemsstring or list of strings[]Item IDs or supported item tags (IA, MMOItems, vanilla, #minecraft:tag, or custom tags). Any match triggers the criterion.
amountinteger1Minimum stack size the player must pick up at once.

consume_item

Fires when the player finishes eating or drinking an item.

criteria:
  eat_ruby_apple:
    trigger: consume_item
    conditions:
      item: my_pack:ruby_apple
KeyTypeRequiredDescription
itemstringyesItem ID or supported item tag (IA, MMOItems, vanilla, #minecraft:tag, or custom tags).

using_item

Fires when the player right-clicks (in air or on a block) while holding an item in their main hand.

criteria:
  use_staff:
    trigger: using_item
    conditions:
      item: my_pack:ruby_staff
KeyTypeRequiredDescription
itemstringyesItem ID or supported item tag (IA, MMOItems, vanilla, #minecraft:tag, or custom tags).

place_block

Fires when the player places an ItemsAdder custom block or a vanilla block.

criteria:
  place_ruby_ore:
    trigger: place_block
    conditions:
      block: my_pack:ruby_ore
KeyTypeRequiredDescription
blockstringyesItemsAdder block ID, vanilla block ID, vanilla block tag such as #minecraft:logs, or supported custom block tag.

break_block

Fires when the player breaks an ItemsAdder custom block or a vanilla block.

criteria:
  mine_ruby_ore:
    trigger: break_block
    conditions:
      block: my_pack:ruby_ore
KeyTypeRequiredDescription
blockstringyesItemsAdder block ID, vanilla block ID, vanilla block tag such as #minecraft:logs, or supported custom block tag.

place_furniture

Fires when the player places a custom furniture item.

criteria:
  place_lamp:
    trigger: place_furniture
    conditions:
      furniture: my_pack:ruby_lamp
KeyTypeRequiredDescription
furniturestringyesItemsAdder furniture ID (namespace:id) or supported custom furniture tag.

break_furniture

Fires when the player breaks a custom furniture item.

criteria:
  break_lamp:
    trigger: break_furniture
    conditions:
      furniture: my_pack:ruby_lamp
KeyTypeRequiredDescription
furniturestringyesItemsAdder furniture ID (namespace:id) or supported custom furniture tag.

interact_furniture

Fires when the player right-clicks a custom furniture item.

criteria:
  use_workbench:
    trigger: interact_furniture
    conditions:
      furniture: my_pack:ruby_workbench
KeyTypeRequiredDescription
furniturestringyesItemsAdder furniture ID (namespace:id) or supported custom furniture tag.

craft_recipe

Fires when the player crafts an item using a specific IAA recipe.

criteria:
  craft_sword:
    trigger: craft_recipe
    conditions:
      recipe: my_pack:ruby_sword_recipe
KeyTypeRequiredDescription
recipestringyesRecipe key as namespace:id, a bare id using the file namespace, or a supported custom recipe tag.

kill_entity_with_item

Fires when the player kills an entity while holding a specific item in their main hand.

criteria:
  slay_zombie:
    trigger: kill_entity_with_item
    conditions:
      item: my_pack:ruby_sword
      entity_type: minecraft:zombie  # optional
KeyTypeDefaultDescription
itemstring(required)Item ID or supported item tag the player must be holding.
entity_typestring(any)Vanilla entity type key (e.g. minecraft:zombie). If omitted, any entity matches.

player_hurt_entity

Fires when the player deals damage to an entity. Unlike kill_entity_with_item, this fires on every hit, not just the killing blow.

criteria:
  hit_zombie:
    trigger: player_hurt_entity
    conditions:
      item: my_pack:ruby_sword  # optional
      entity_type: minecraft:zombie  # optional
KeyTypeDefaultDescription
itemstring(any)Item ID or supported item tag the player must be holding. If omitted, any item (or bare hands) matches.
entity_typestring(any)Vanilla entity type key. If omitted, any entity matches.

entity_hurt_player

Fires when an entity deals damage to the player.

criteria:
  hurt_by_zombie:
    trigger: entity_hurt_player
    conditions:
      entity_type: minecraft:zombie  # optional
KeyTypeDefaultDescription
entity_typestring(any)Vanilla entity type key. If omitted, any attacker matches.

player_killed_entity

Fires when the player kills an entity (regardless of the weapon used).

criteria:
  kill_creeper:
    trigger: player_killed_entity
    conditions:
      entity_type: minecraft:creeper  # optional
      item: my_pack:ruby_sword  # optional
KeyTypeDefaultDescription
entity_typestring(any)Vanilla entity type key. If omitted, any entity matches.
itemstring(any)Item ID or supported item tag the player must be holding. If omitted, any item matches.

entity_killed_player

Fires when the player is killed by a non-player entity (projectile kills resolve to the shooter).

criteria:
  killed_by_skeleton:
    trigger: entity_killed_player
    conditions:
      entity_type: minecraft:skeleton  # optional
KeyTypeDefaultDescription
entity_typestring(any)Vanilla entity type key of the killer. If omitted, any entity matches.

killed_by_arrow

Fires when the player is killed by an arrow. The entity type matches the arrow's shooter, or the arrow itself if it had no shooter.

criteria:
  shot_by_skeleton:
    trigger: killed_by_arrow
    conditions:
      entity_type: minecraft:skeleton  # optional
KeyTypeDefaultDescription
entity_typestring(any)Vanilla entity type key of the shooter. If omitted, any arrow source matches.

tame_animal

Fires when the player tames an animal.

criteria:
  tame_wolf:
    trigger: tame_animal
    conditions:
      entity_type: minecraft:wolf  # optional
KeyTypeDefaultDescription
entity_typestring(any)Vanilla entity type key. If omitted, any tameable animal matches.

bred_animals

Fires when the player breeds two animals.

criteria:
  breed_cows:
    trigger: bred_animals
    conditions:
      entity_type: minecraft:cow   # optional, type of the offspring
      parent_type: minecraft:cow   # optional
      partner_type: minecraft:cow  # optional
KeyTypeDefaultDescription
entity_typestring(any)Entity type of the offspring.
parent_typestring(any)Entity type of the mother.
partner_typestring(any)Entity type of the father.

villager_trade

Fires when the player completes a trade with a villager.

criteria:
  buy_diamond:
    trigger: villager_trade
    conditions:
      item: minecraft:diamond  # optional
KeyTypeDefaultDescription
itemstring(any)Item ID or supported item tag of the trade result. If omitted, any trade matches.

enchanted_item

Fires when the player enchants an item at an enchanting table.

criteria:
  enchant_ruby_sword:
    trigger: enchanted_item
    conditions:
      item: my_pack:ruby_sword  # optional
      min_levels: 10            # optional
      max_levels: 30            # optional
KeyTypeDefaultDescription
itemstring(any)Item ID or supported item tag. If omitted, any item being enchanted matches.
min_levelsinteger0Minimum XP level cost of the enchantment.
max_levelsinteger(unlimited)Maximum XP level cost of the enchantment.

shoot_bow

Fires when the player shoots a projectile from a bow.

criteria:
  shoot_ruby_bow:
    trigger: shoot_bow
    conditions:
      item: my_pack:ruby_bow  # optional
KeyTypeDefaultDescription
itemstring(any)Item ID or supported item tag of the bow. If omitted, any bow matches.

shot_crossbow

Fires when the player shoots a projectile from a crossbow.

criteria:
  shoot_crossbow:
    trigger: shot_crossbow
    conditions:
      item: my_pack:ruby_crossbow  # optional
KeyTypeDefaultDescription
itemstring(any)Item ID or supported item tag of the crossbow. If omitted, any crossbow matches.

fishing_rod_hooked

Fires when the player reels in a fish or hooks an entity.

criteria:
  hook_fish:
    trigger: fishing_rod_hooked
    conditions:
      rod: my_pack:ruby_rod          # optional
      caught_entity_type: minecraft:cod  # optional
KeyTypeDefaultDescription
rodstring(any)Item ID or supported item tag of the fishing rod. If omitted, any rod matches.
caught_entity_typestring(any)Entity type of what was hooked. If omitted, any catch matches.

filled_bucket

Fires when the player fills a bucket with a liquid.

criteria:
  fill_lava:
    trigger: filled_bucket
    conditions:
      item: minecraft:lava_bucket  # optional
KeyTypeDefaultDescription
itemstring(any)Item ID or supported item tag of the resulting bucket. If omitted, any filled bucket matches.

item_durability_changed

Fires when an item in the player's hand takes durability damage.

criteria:
  damage_ruby_sword:
    trigger: item_durability_changed
    conditions:
      item: my_pack:ruby_sword  # optional
KeyTypeDefaultDescription
itemstring(any)Item ID or supported item tag of the damaged item. If omitted, any item matches.

item_used_on_block

Fires when the player right-clicks a block with an item in their main hand.

criteria:
  use_on_crafting_table:
    trigger: item_used_on_block
    conditions:
      item: my_pack:ruby_wand          # optional
      block: minecraft:crafting_table  # optional
KeyTypeDefaultDescription
itemstring(any)Item ID or supported item tag the player must be holding.
blockstring(any)ItemsAdder block ID, vanilla block ID, or vanilla block tag.

recipe_crafted

Fires when the player crafts any item using the vanilla crafting system.

criteria:
  craft_diamond_sword:
    trigger: recipe_crafted
    conditions:
      recipe: minecraft:diamond_sword  # optional
KeyTypeDefaultDescription
recipestring(any)Recipe key as namespace:id or a supported custom recipe tag. If omitted, any crafting action matches.

recipe_unlocked

Fires when the player discovers a new recipe.

criteria:
  unlock_diamond_sword:
    trigger: recipe_unlocked
    conditions:
      recipe: minecraft:diamond_sword  # optional
KeyTypeDefaultDescription
recipestring(any)Recipe key as namespace:id or a supported custom recipe tag. If omitted, any discovered recipe matches.

player_interacted_with_entity

Fires when the player right-clicks an entity with their main hand.

criteria:
  name_a_villager:
    trigger: player_interacted_with_entity
    conditions:
      entity_type: minecraft:villager  # optional
      item: minecraft:name_tag         # optional
KeyTypeDefaultDescription
entity_typestring(any)Vanilla entity type key. If omitted, any entity matches.
itemstring(any)Item ID or supported item tag the player must be holding. If omitted, any item (or empty hand) matches.

player_sheared_equipment

Fires when the player shears an entity.

criteria:
  shear_sheep:
    trigger: player_sheared_equipment
    conditions:
      entity_type: minecraft:sheep  # optional
KeyTypeDefaultDescription
entity_typestring(any)Vanilla entity type key. If omitted, any shearable entity matches.

bee_nest_destroyed

Fires when the player breaks a beehive or bee nest.

criteria:
  break_beehive:
    trigger: bee_nest_destroyed
    conditions:
      block: minecraft:beehive  # optional
KeyTypeDefaultDescription
blockstring(any)Block ID or supported block tag (minecraft:beehive, minecraft:bee_nest, or a tag). If omitted, either hive block matches.

started_riding

Fires when the player mounts an entity.

criteria:
  ride_horse:
    trigger: started_riding
    conditions:
      entity_type: minecraft:horse  # optional
KeyTypeDefaultDescription
entity_typestring(any)Vanilla entity type key. If omitted, any mount matches.

effects_changed

Fires when the player gains or has a potion effect changed.

criteria:
  get_speed:
    trigger: effects_changed
    conditions:
      effect: minecraft:speed  # optional
KeyTypeDefaultDescription
effectstring(any)Potion effect key (e.g. minecraft:speed). If omitted, any effect addition or change matches.

changed_dimension

Fires when the player changes world environment.

criteria:
  enter_nether:
    trigger: changed_dimension
    conditions:
      to: nether    # optional
      from: normal  # optional
KeyTypeDefaultDescription
tostring(any)Target Bukkit environment: normal, nether, or the_end.
fromstring(any)Source Bukkit environment: normal, nether, or the_end.

slept_in_bed

Fires when the player successfully enters a bed. No conditions.

criteria:
  first_sleep:
    trigger: slept_in_bed

used_totem

Fires when the player is saved from death by a totem of undying. No conditions.

criteria:
  totem_pop:
    trigger: used_totem

fall_from_height

Fires when the player takes fall damage.

criteria:
  survived_fall:
    trigger: fall_from_height
    conditions:
      distance:
        y:
          min: 30
          max: 320

You can also use a single number as the minimum fall distance:

criteria:
  small_fall:
    trigger: fall_from_height
    conditions:
      distance: 8
KeyTypeDefaultDescription
distancenumber or section0 to unlimitedFall distance range. A number means minimum distance. A section can use min/max, or a nested y, absolute, or horizontal range.
distance.minnumber0Minimum fall distance.
distance.maxnumber(unlimited)Maximum fall distance.
distance.ysection(none)Preferred range form for vertical fall distance. Supports min and max.
distance.absolutesection(none)Alternative range form. Supports min and max.
distance.horizontalsection(none)Alternative range form. Supports min and max.

used_ender_eye

Fires when the player throws an eye of ender. No conditions.

criteria:
  use_ender_eye:
    trigger: used_ender_eye

held_item

IAA custom trigger. Fires when the player scrolls to a hotbar slot that contains an item.

criteria:
  equip_ruby_sword:
    trigger: held_item
    conditions:
      item: my_pack:ruby_sword  # optional
KeyTypeDefaultDescription
itemstring(any)Item ID or supported item tag. If omitted, any item scrolled to matches.

permission

Fires when the player joins while holding the specified permission node.

criteria:
  has_vip:
    trigger: permission
    conditions:
      permission: "myserver.rank.vip"
KeyTypeRequiredDescription
permissionstringyesPermission node. Checked on every join; fires as soon as the player has it.

in_biome

Fires when the player crosses into a specific biome. Checked at chunk boundaries.

criteria:
  visit_jungle:
    trigger: in_biome
    conditions:
      biome: minecraft:jungle
      world: world  # optional
KeyTypeDefaultDescription
biomestring(required)Biome key as namespace:id (e.g. minecraft:deep_dark).
worldstring(any)World name to restrict the check to a single world.

sit_furniture

Fires when the player sits on an ItemsAdder furniture item.

Version Requirement: Requires ItemsAdder 4.0.17 or higher.

criteria:
  sit_on_chair:
    trigger: sit_furniture
    conditions:
      furniture: my_pack:ruby_chair
KeyTypeRequiredDescription
furniturestringyesItemsAdder furniture ID or supported custom furniture tag.

unsit_furniture

Fires when the player stops sitting on an ItemsAdder furniture item.

Version Requirement: Requires ItemsAdder 4.0.17 or higher.

criteria:
  leave_chair:
    trigger: unsit_furniture
    conditions:
      furniture: my_pack:ruby_chair
KeyTypeRequiredDescription
furniturestringyesItemsAdder furniture ID or supported custom furniture tag.

open_trade_machine

Fires when the player opens an ItemsAdder trade_machine or block_trade_machine GUI.

criteria:
  open_alchemy_station:
    trigger: open_trade_machine
    conditions:
      trade_machine: stations:alchemy_table
KeyTypeRequiredDescription
trade_machinestringyesTrade machine content ID or supported custom furniture tag.

start_emote

Fires when the player starts an ItemsAdder emote.

criteria:
  start_wave:
    trigger: start_emote
    conditions:
      emote: my_pack:wave
KeyTypeDefaultDescription
emotestring(any)Emote ID. If omitted, any emote start matches.

stop_emote

Fires when the player stops an ItemsAdder emote.

criteria:
  stop_wave:
    trigger: stop_emote
    conditions:
      emote: my_pack:wave
KeyTypeDefaultDescription
emotestring(any)Emote ID. If omitted, any emote stop matches.

join_server

Fires whenever the player joins the server. No conditions.

criteria:
  joined:
    trigger: join_server

first_join

Fires when the player joins for the first time according to Bukkit's hasPlayedBefore check. No conditions.

criteria:
  first_join:
    trigger: first_join

tick

Fires once per server tick for every online player. Use conditions.player to keep tick criteria narrow.

criteria:
  sneaking_tick:
    trigger: tick
    conditions:
      player:
        flags:
          is_sneaking: true

impossible

Never fires on its own.

criteria:
  manual:
    trigger: impossible

No conditions options.

On this page