Minecraft Wiki
Register
(→‎minecraft:inventory_changed: reverting my prior change. It's actually an "items" tag with an "item" tag inside of it, hence my confustion)
(Added new 1.16 loot table conditions to triggers that use them)
Line 65: Line 65:
 
*** {{Nbt inherit/conditions/item|indent=***}}
 
*** {{Nbt inherit/conditions/item|indent=***}}
 
** {{nbt|int|num_bees_inside}}: The number of bees that were inside the bee nest/beehive before it was broken.
 
** {{nbt|int|num_bees_inside}}: The number of bees that were inside the bee nest/beehive before it was broken.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
   
Line 90: Line 91:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
** {{nbt|compound|child}}: The child that results from the breeding.
+
** {{nbt|compound|child}}: The child that results from the breeding. May also be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
** {{nbt|compound|parent}}: The parent.
+
** {{nbt|compound|parent}}: The parent. May also be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
** {{nbt|compound|partner}}: The partner (the entity the parent was bred with)
+
** {{nbt|compound|partner}}: The partner. (The entity the parent was bred with) May also be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
   
Line 134: Line 136:
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
 
** {{nbt|string|potion}}: A [[Potion#Item_data|brewed potion ID]].
 
** {{nbt|string|potion}}: A [[Potion#Item_data|brewed potion ID]].
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 156: Line 159:
 
** {{nbt|string|from}}: The dimension the entity traveled from. Accepts {{tooltip|these 3 values|overworld, the_nether, and the_end}}.
 
** {{nbt|string|from}}: The dimension the entity traveled from. Accepts {{tooltip|these 3 values|overworld, the_nether, and the_end}}.
 
** {{nbt|string|to}}: The dimension the entity traveled to. Same accepted values as above.
 
** {{nbt|string|to}}: The dimension the entity traveled to. Same accepted values as above.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 177: Line 181:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
** {{nbt|list|victims}}: The victims hit by the lightning summoned by the Channeling enchantment. All entities in this list must be hit.
+
** {{nbt|list|victims}}: The victims hit by the lightning summoned by the Channeling enchantment. All entities in this list must be hit. Each entry may also be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the victim hit by the enchanted trident.{{Upcoming|java 1.16}}
 
*** {{nbt|compound}}:
 
*** {{nbt|compound}}:
 
**** {{nbt inherit/conditions/entity|indent=****}}
 
**** {{nbt inherit/conditions/entity|indent=****}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
   
Line 210: Line 215:
 
*** {{nbt|int|max}}: The maximum value.
 
*** {{nbt|int|max}}: The maximum value.
 
*** {{nbt|int|min}}: The minimum value.
 
*** {{nbt|int|min}}: The minimum value.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 234: Line 240:
 
** {{nbt|compound|item}}: The item that was consumed
 
** {{nbt|compound|item}}: The item that was consumed
 
*** {{nbt inherit/conditions/item|indent=***}}
 
*** {{nbt inherit/conditions/item|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 257: Line 264:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
** {{nbt|compound|villager}}: The villager that is the result of the conversion. The 'type' tag is redundant since it will always be "villager".
+
** {{nbt|compound|villager}}: The villager that is the result of the conversion. The 'type' tag is redundant since it will always be "villager". May also be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
** {{nbt|compound|zombie}}: The zombie villager right before the conversion is complete (not when it is initiated). The 'type' tag is redundant since it will always be "zombie_villager".
+
** {{nbt|compound|zombie}}: The zombie villager right before the conversion is complete (not when it is initiated). The 'type' tag is redundant since it will always be "zombie_villager". May also be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 302: Line 310:
 
***** {{nbt|int|max}}: The maximum value.
 
***** {{nbt|int|max}}: The maximum value.
 
***** {{nbt|int|min}}: The minimum value.
 
***** {{nbt|int|min}}: The minimum value.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 337: Line 346:
 
*** {{nbt|int|max}}: The maximum value.
 
*** {{nbt|int|max}}: The maximum value.
 
*** {{nbt|int|min}}: The minimum value.
 
*** {{nbt|int|min}}: The minimum value.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 373: Line 383:
 
** {{nbt|compound|state}}: The block states of the block.
 
** {{nbt|compound|state}}: The block states of the block.
 
*** {{nbt|string|<state_name>}}: A single block state, with the key name being the state name and the value being the required value of that state.
 
*** {{nbt|string|<state_name>}}: A single block state, with the key name being the state name and the value being the required value of that state.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 396: Line 407:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
** {{nbt|compound|damage}}: Checks the damage done to the player.
+
** {{nbt|compound|damage}}: Checks the damage done to the player. Missing corresponding list of [[Loot_table#Conditions|loot table conditions]].{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/damage|indent=***}}
 
*** {{nbt inherit/conditions/damage|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 428: Line 440:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
** {{nbt|compound|entity}}: Checks the entity that was the source of the damage that killed the player (for example: The skeleton that shot the arrow).
+
** {{nbt|compound|entity}}: Checks the entity that was the source of the damage that killed the player (for example: The skeleton that shot the arrow). May also be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
** {{nbt|compound|killing_blow}}: Checks the type of damage that killed the player.
+
** {{nbt|compound|killing_blow}}: Checks the type of damage that killed the player. Missing corresponding list of [[Loot_table#Conditions|loot table conditions]] for the direct entity.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/damage_type|indent=***}}
 
*** {{nbt inherit/conditions/damage_type|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 459: Line 472:
 
** {{nbt|compound|item}}: The item resulting from filling the bucket.
 
** {{nbt|compound|item}}: The item resulting from filling the bucket.
 
*** {{nbt inherit/conditions/item|indent=***}}
 
*** {{nbt inherit/conditions/item|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 481: Line 495:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
** {{nbt|compound|entity}}: The entity that was pulled.
+
** {{nbt|compound|entity}}: The entity that was pulled. May also be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
** {{nbt|compound|item}}: The item that was caught.
 
** {{nbt|compound|item}}: The item that was caught.
Line 487: Line 501:
 
** {{nbt|compound|rod}}: The fishing rod used.
 
** {{nbt|compound|rod}}: The fishing rod used.
 
*** {{nbt inherit/conditions/item|indent=***}}
 
*** {{nbt inherit/conditions/item|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 510: Line 525:
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
 
** {{nbt inherit/conditions/location|indent=**}}
 
** {{nbt inherit/conditions/location|indent=**}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 569: Line 585:
 
**** {{nbt|int|max}}: The maximum value.
 
**** {{nbt|int|max}}: The maximum value.
 
**** {{nbt|int|min}}: The minimum value.
 
**** {{nbt|int|min}}: The minimum value.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 620: Line 637:
 
** {{nbt|compound|item}}: The item before it was damaged, allows you to check the durability before the item was damaged.
 
** {{nbt|compound|item}}: The item before it was damaged, allows you to check the durability before the item was damaged.
 
*** {{nbt inherit/conditions/item|indent=***}}
 
*** {{nbt inherit/conditions/item|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 643: Line 661:
   
 
=== minecraft:killed_by_crossbow ===
 
=== minecraft:killed_by_crossbow ===
Triggers after the player hurts a [[mob]] or player. Available conditions:
+
Triggers after the player kills a [[mob]] or player using a crossbow in ranged combat. Available conditions:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
Line 653: Line 671:
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
** {{nbt|list|victims}}: A list of predicates for any of the killed entities. All of the predicates must be matched, and one killed entity may match only one predicate.
 
** {{nbt|list|victims}}: A list of predicates for any of the killed entities. All of the predicates must be matched, and one killed entity may match only one predicate.
*** {{nbt|compound|victims}}: A predicate for any of the killed entities.
+
*** {{nbt|compound|victims}}: A predicate for any of the killed entities. May also be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
**** {{nbt inherit/conditions/entity|indent=****}}
 
**** {{nbt inherit/conditions/entity|indent=****}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 703: Line 722:
 
*** {{nbt|int|max}}: The maximum value.
 
*** {{nbt|int|max}}: The maximum value.
 
*** {{nbt|int|min}}: The minimum value.
 
*** {{nbt|int|min}}: The minimum value.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 734: Line 754:
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
 
** {{nbt inherit/conditions/location|indent=**}}
 
** {{nbt inherit/conditions/location|indent=**}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 780: Line 801:
 
**** {{nbt|float|max}}: The maximum value.
 
**** {{nbt|float|max}}: The maximum value.
 
**** {{nbt|float|min}}: The minimum value.
 
**** {{nbt|float|min}}: The minimum value.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 814: Line 836:
 
** {{nbt|compound|state}}: The block states of the block.
 
** {{nbt|compound|state}}: The block states of the block.
 
*** {{nbt|string|<state_name>}}: A single block state, with the key name being the state name and the value being the required value of that state.
 
*** {{nbt|string|<state_name>}}: A single block state, with the key name being the state name and the value being the required value of that state.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 847: Line 870:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
** {{nbt|compound|damage}}: The damage that was dealt
+
** {{nbt|compound|damage}}: The damage that was dealt. Missing corresponding list of [[Loot_table#Conditions|loot table conditions]] for the direct entity.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/damage|indent=***}}
 
*** {{nbt inherit/conditions/damage|indent=***}}
** {{nbt|compound|entity}}: The entity that was damaged.
+
** {{nbt|compound|entity}}: The entity that was damaged. May be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 882: Line 906:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
** {{nbt|compound|entity}}: The entity that was killed.
+
** {{nbt|compound|entity}}: The entity that was killed. May be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
** {{nbt|compound|killing_blow}}: The type of damage that killed an entity.
+
** {{nbt|compound|killing_blow}}: The type of damage that killed an entity. Missing corresponding list of [[Loot_table#Conditions|loot table conditions]] for the direct entity.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/damage_type|indent=***}}
 
*** {{nbt inherit/conditions/damage_type|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 926: Line 951:
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
 
** {{nbt|string|recipe}}: The recipe that was unlocked.
 
** {{nbt|string|recipe}}: The recipe that was unlocked.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 951: Line 977:
 
** {{nbt|compound|item}}: The item that the player used to harvest the honey.
 
** {{nbt|compound|item}}: The item that the player used to harvest the honey.
 
*** {{Nbt inherit/conditions/item|indent=***}}
 
*** {{Nbt inherit/conditions/item|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 978: Line 1,005:
 
** {{nbt|compound|item}}: The item that was used.
 
** {{nbt|compound|item}}: The item that was used.
 
*** {{nbt inherit/conditions/item|indent=***}}
 
*** {{nbt inherit/conditions/item|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 1,002: Line 1,030:
 
** {{nbt|compound|location}}:
 
** {{nbt|compound|location}}:
 
*** {{nbt inherit/conditions/location|indent=***}}
 
*** {{nbt inherit/conditions/location|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 1,031: Line 1,060:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
**{{nbt|string|block}}: The block that the player slid on.
+
** {{nbt|string|block}}: The block that the player slid on.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 1,052: Line 1,082:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
  +
** {{nbt|compound|entity}}: The summoned entity. May be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
** {{nbt|compound|entity}}:
 
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 1,076: Line 1,107:
 
<div class="treeview">
 
<div class="treeview">
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
** {{nbt|compound|entity}}: Checks the entity that was tamed.
+
** {{nbt|compound|entity}}: Checks the entity that was tamed. May be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 1,105: Line 1,137:
 
** {{nbt|compound|shooter}}: Entity predicate for the player who shot or threw the projectile.
 
** {{nbt|compound|shooter}}: Entity predicate for the player who shot or threw the projectile.
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.
 
</div>
 
</div>
   
Line 1,125: Line 1,158:
 
=== minecraft:tick ===
 
=== minecraft:tick ===
 
Triggers every [[tick]] (20 times a second).
 
Triggers every [[tick]] (20 times a second).
  +
<div class="treeview">
 
* {{nbt|compound|conditions}}:
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
  +
</div>
  +
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
An example
 
An example
Line 1,145: Line 1,183:
 
*** {{nbt|double|max}}: A maximum value.
 
*** {{nbt|double|max}}: A maximum value.
 
*** {{nbt|double|min}}: A minimum value.
 
*** {{nbt|double|min}}: A minimum value.
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 1,170: Line 1,209:
 
** {{nbt|compound|item}}: The item, only works with totem items.
 
** {{nbt|compound|item}}: The item, only works with totem items.
 
*** {{nbt inherit/conditions/item|indent=***}}
 
*** {{nbt inherit/conditions/item|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 1,194: Line 1,234:
 
** {{nbt|compound|item}}: The item that was purchased. The "count" tag checks the count from one trade, not multiple.
 
** {{nbt|compound|item}}: The item that was purchased. The "count" tag checks the count from one trade, not multiple.
 
*** {{nbt inherit/conditions/item|indent=***}}
 
*** {{nbt inherit/conditions/item|indent=***}}
** {{nbt|compound|villager}}: The villager the item was purchased from.
+
** {{nbt|compound|villager}}: The villager the item was purchased from. May be a list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate.{{Upcoming|java 1.16}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
 
*** {{nbt inherit/conditions/entity|indent=***}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
Line 1,225: Line 1,266:
 
* {{nbt|compound|conditions}}:
 
* {{nbt|compound|conditions}}:
 
** {{nbt inherit/conditions/location|indent=**}}
 
** {{nbt inherit/conditions/location|indent=**}}
  +
** {{nbt|list|player}}: A list of [[Loot_table#Conditions|loot table conditions]] that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.{{Upcoming|java 1.16}}
 
</div>
 
</div>
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">
 
<div class="collapsible collapsed collapsetoggle-inline" data-expandtext="show" data-collapsetext="hide">

Revision as of 19:38, 29 April 2020

Custom advancements in data packs of a Minecraft world store the advancement data for that world as separate JSON files.

File Format

All advancement JSON files are structured according to the following format:

  • The root tag.
    •  display: The optional display data.
      •  icon: The data for the icon.
        •  item: The item id.
        •  nbt: The nbt data of the item.
      •  title: The title for this advancement.
      •  title: A JSON text component (containing text and formatting like used in /tellraw and various other commands. Also translate tag can be used here).
      •  frame: The optional type of frame for the icon. challenge for a tile with a more fancy spiked border as it is used for the kill all mobs advancement, goal for a tile with a rounded border as it is used for the full beacon advancement, task for a normal tile (default.)
      •  background: The optional directory for the background to use in this advancement tab (used only for the root advancement).
      •  description: The description of the advancement.
      •  description: A JSON text component (containing text and formatting like used in /tellraw and various other commands. Also translate tag can be used here).
      •  show_toast: Can be true or false. Whether or not to show the toast pop up after completing this advancement. Defaults to true.
      •  announce_to_chat: Can be true or false. Whether or not to announce in the chat when this advancement has been completed. Defaults to true.
      •  hidden: Can be true or false. Whether or not to hide this advancement and all its children from the advancement screen until this advancement have been completed. Has no effect on root advancements themselves, but still affects all their children. Defaults to false.
    •  parent: The optional parent advancement directory of this advancement. If this field is absent, this advancement is a root advancement. Circular references cause a loading failure.
    •  criteria: The required criteria that have to be met.
      •  <criterionName>: A name given to the criterion (can be any string, must be unique).
        •  trigger: The trigger for this advancement; specifies what the game should check for the advancement.
        •  conditions: All the conditions that need to be met when the trigger gets activated.
    •  requirements: An optional list of requirements (all the <criteriaNames>). If all criteria are required, this may be omitted. With multiple criteria: requirements contains a list of lists with criteria (all criteria need to be mentioned). If all of the lists each have any criteria met, the advancement is complete. (basically AND grouping of OR groups)
    •  rewards: An optional object representing the rewards provided when this advancement is obtained.

Display

Within the root tag of an advancement JSON object, the  display field and the  parent field, both optional, are related to the display of the advancement.

If the  display tag is present, it must have both the  title and  description fields present in order to be a valid advancement display data.

The  parent field, albeit not directly associated with the display data of an advancement, affects only the display data effectively. When an advancement does not have a display data and none of its children has a display data, the parent of the advancement has no effect to the advancement itself.

Tab creation

To create a tab in the advancement menu, define a root advancement (an advancement without a parent) with a display. When the data pack containing the advancement is loaded, the root advancement shows a tab in the advancement menu when any advancement in its advancement tree is granted to the player viewing the menu.

When a background is not specified for a root advancement, the tab is still created, but with the tab background appearing as the missing texture.

Presence

For a non-root advancement (i.e. an advancement with a parent defined), these conditions must be met in order to have it displayed in a tab when unlocked:

  1. Its root advancement must be a valid tab.
  2. It must have a display.

Position

The game automatically arranges advancements, position them when it loads advancements from data packs, and sends the arrangement to the client. Each advancement has an arrow from its closest visible ancestor (i.e. if its parent does not have a display, it has a link from its grandparent, and so on). The root advancement appears on the leftmost column while each arrow points to an advancement in the next column. The arrangement of advancements within a column is based on file name.

Lack of Display

Some advancements, such as the vanilla recipe unlocking advancements, may lack a display so that they can utilize triggers and rewards instead of excessive commands or functions for more functionalities and a more flexible control. These advancements should not have the  display field defined in order to hide from users and enjoy a better loading performance.

List of triggers

minecraft:bee_nest_destroyed

Triggers when the player breaks a bee nest or beehive. Available conditions:

  •  conditions:
    •  block: The block that was destroyed. Accepts block IDs.
    •  item: The item used to break the block.
      • All possible conditions for items
    •  num_bees_inside: The number of bees that were inside the bee nest/beehive before it was broken.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:bred_animals

Triggers after the player breeds 2 animals. Available conditions:

  •  conditions:
    •  child: The child that results from the breeding. May also be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  parent: The parent. May also be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  partner: The partner. (The entity the parent was bred with) May also be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:brewed_potion

Triggers after the player takes any item out of a brewing stand. Available conditions:

  •  conditions:

minecraft:changed_dimension

Triggers after the player travels between two dimensions. Available conditions:

  •  conditions:
    •  from: The dimension the entity traveled from. Accepts these 3 values.
    •  to: The dimension the entity traveled to. Same accepted values as above.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:channeled_lightning

Triggers after the player successfully uses the Channeling enchantment on an entity. Available conditions:

  •  conditions:
    •  victims: The victims hit by the lightning summoned by the Channeling enchantment. All entities in this list must be hit. Each entry may also be a list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the victim hit by the enchanted trident.‌[upcoming: JE 1.16]
      • :
        • All possible conditions for entities
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:construct_beacon

Triggers after the player changes the structure of a beacon. (When the beacon updates itself). Available conditions:

  •  conditions:
    •  level: The tier of the updated beacon structure.
    •  level:
      •  max: The maximum value.
      •  min: The minimum value.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:consume_item

Triggers when the player consumes an item. Available conditions:

  •  conditions:
    •  item: The item that was consumed
      • All possible conditions for items
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:cured_zombie_villager

Triggers when the player cures a zombie villager. Available conditions:

  •  conditions:
    •  villager: The villager that is the result of the conversion. The 'type' tag is redundant since it will always be "villager". May also be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  zombie: The zombie villager right before the conversion is complete (not when it is initiated). The 'type' tag is redundant since it will always be "zombie_villager". May also be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:effects_changed

Triggers after the player gets a status effect applied or taken from them. Available conditions:

  •  conditions:
    •  effects: A list of status effects the player has.
      •  <minecraft:effect_name>: A status effect with the key name being the status effect name.
        •  amplifier: The effect amplifier.
        •  amplifier:
          •  max: The maximum value.
          •  min: The minimum value.
        •  duration: The effect duration in ticks.
        •  duration:
          •  max: The maximum value.
          •  min: The minimum value.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:enchanted_item

Triggers after the player enchants an item through an enchanting table (does not get triggered through an anvil, or through commands). Available conditions:

  •  conditions:
    •  item: The item after it has been enchanted.
      • All possible conditions for items
    •  levels: The levels spent by the player on the enchantment.
    •  levels:
      •  max: The maximum value.
      •  min: The minimum value.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:enter_block

Triggers when the player stands in a block. Checks every tick and will try to trigger for each successful match (up to 8 times, the maximum amount of blocks a player can stand in), which only works if the advancement is revoked from within the advancement using a function reward. Available conditions:

  •  conditions:
    •  block: The block that the player is standing in. Accepts block IDs.
    •  state: The block states of the block.
      •  <state_name>: A single block state, with the key name being the state name and the value being the required value of that state.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:entity_hurt_player

Triggers after a player gets hurt. Available conditions:

  •  conditions:
    •  damage: Checks the damage done to the player. Missing corresponding list of loot table conditions.‌[upcoming: JE 1.16]
      • Damage tags
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:entity_killed_player

Triggers after an entity kills a player. Available conditions:

  •  conditions:
    •  entity: Checks the entity that was the source of the damage that killed the player (for example: The skeleton that shot the arrow). May also be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  killing_blow: Checks the type of damage that killed the player. Missing corresponding list of loot table conditions for the direct entity.‌[upcoming: JE 1.16]
      • Tags common to all damage types
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:filled_bucket

Triggers after the player fills a bucket. Available conditions:

  •  conditions:
    •  item: The item resulting from filling the bucket.
      • All possible conditions for items
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:fishing_rod_hooked

Triggers after the player successfully catches an item with a fishing rod or pulls an entity with a fishing rod. Available conditions:

  •  conditions:
    •  entity: The entity that was pulled. May also be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  item: The item that was caught.
      • All possible conditions for items
    •  rod: The fishing rod used.
      • All possible conditions for items
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:hero_of_the_village

Triggers when the player defeats a raid and checks where the player is. Available conditions:

  •  conditions:
    • Tags common to all locations
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:impossible

Triggers only using commands.

minecraft:inventory_changed

Triggers after any changes happen to the player's inventory. Available conditions:

  •  conditions:
    •  items: A list of items in the player's inventory. All items in the list must be in the player's inventory, but not all items in the player's inventory have to be in this list.
      • :
        • All possible conditions for items
    •  slots:
      •  empty: The amount of slots empty in the inventory.
      •  empty:
        •  max: The maximum value.
        •  min: The minimum value.
      •  full: The amount of slots completely filled (stacksize) in the inventory.
      •  full:
        •  max: The maximum value.
        •  min: The minimum value.
      •  occupied: The amount of slots occupied in the inventory.
      •  occupied:
        •  max: The maximum value.
        •  min: The minimum value.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:item_durability_changed

Triggers after any item in the inventory has been damaged in any form. Available conditions:

  •  conditions:
    •  delta: The difference in durability.
    •  delta:
      •  max: The maximum value.
      •  min: The minimum value.
    •  durability: The remaining durability of the item.
    •  durability:
      •  max: The maximum value.
      •  min: The minimum value.
    •  item: The item before it was damaged, allows you to check the durability before the item was damaged.
      • All possible conditions for items
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:killed_by_crossbow

Triggers after the player kills a mob or player using a crossbow in ranged combat. Available conditions:

  •  conditions:
    •  unique_entity_types: The exact count of types of entities killed.
    •  unique_entity_types: The acceptable range of count of types of entities killed.
      •  max: The maximum value.
      •  min: The minimum value.
    •  victims: A predicate for any of the killed entities.
      • All possible conditions for entities
    •  victims: A list of predicates for any of the killed entities. All of the predicates must be matched, and one killed entity may match only one predicate.
      •  victims: A predicate for any of the killed entities. May also be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
        • All possible conditions for entities
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:levitation

Triggers when the player has the levitation status effect. Available conditions:

  •  conditions:
    •  distance:
      •  absolute:
        •  max: The maximum value.
        •  min: The minimum value.
      •  horizontal:
        •  max: The maximum value.
        •  min: The minimum value.
      •  x:
        •  max: The maximum value.
        •  min: The minimum value.
      •  y:
        •  max: The maximum value.
        •  min: The minimum value.
      •  z:
        •  max: The maximum value.
        •  min: The minimum value.
    •  duration: The duration of the levitation in ticks.
    •  duration:
      •  max: The maximum value.
      •  min: The minimum value.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:location

Triggers every 20 ticks (1 second) and checks where the player is. Available conditions:

  •  conditions:
    • Tags common to all locations
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:nether_travel

Triggers when the player travels to the Nether and then returns to the Overworld. Available conditions:

  •  conditions:
    •  distance: The overworld distance between where the player entered the Nether and where the player exited the Nether.
      •  absolute:
        •  max: The maximum value.
        •  min: The minimum value.
      •  horizontal:
        •  max: The maximum value.
        •  min: The minimum value.
      •  x:
        •  max: The maximum value.
        •  min: The minimum value.
      •  y:
        •  max: The maximum value.
        •  min: The minimum value.
      •  z:
        •  max: The maximum value.
        •  min: The minimum value.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:placed_block

Triggers when the player places a block. Available conditions:

  •  conditions:
    •  block: The block that was placed. Accepts block IDs.
    •  item: The item that was used to place the block before the item was consumed.
      • All possible conditions for items
    •  location: The location of the block that was placed.
      • Tags common to all locations
    •  state: The block states of the block.
      •  <state_name>: A single block state, with the key name being the state name and the value being the required value of that state.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:player_hurt_entity

Triggers after the player hurts a mob or player. Available conditions:

  •  conditions:
    •  damage: The damage that was dealt. Missing corresponding list of loot table conditions for the direct entity.‌[upcoming: JE 1.16]
      • Damage tags
    •  entity: The entity that was damaged. May be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:player_killed_entity

Triggers after a player is the source of a mob or player being killed. Available conditions:

  •  conditions:
    •  entity: The entity that was killed. May be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  killing_blow: The type of damage that killed an entity. Missing corresponding list of loot table conditions for the direct entity.‌[upcoming: JE 1.16]
      • Tags common to all damage types
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:recipe_unlocked

Triggers after the player unlocks a recipe (using a knowledge book for example). Available conditions:

  •  conditions:
    •  recipe: The recipe that was unlocked.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:safely_harvest_honey

Triggers when the player harvests honey from a bee nest/beehive with a campfire below it. Available conditions:

  •  conditions:
    •  block: The block that the player harvested the honey from.
      •  block: A block ID.
      •  tag: A block tag.
    •  item: The item that the player used to harvest the honey.
      • All possible conditions for items
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:shot_crossbow

Triggers when the player shoots a crossbow. Available conditions:

  •  conditions:
    •  item: The item that was used.
      • All possible conditions for items
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:slept_in_bed

Triggers when the player enters a bed. Available conditions:

  •  conditions:
    •  location:
      • Tags common to all locations
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:slide_down_block

Triggers when the player slides down a block. Available conditions:

  •  conditions:
    •  block: The block that the player slid on.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:summoned_entity

Triggers after an entity has been summoned. Works with iron golems (pumpkin and iron blocks), snow golems (pumpkin and snow blocks), the ender dragon (end crystals) and the wither (wither skulls and soul sand/soul soil‌[upcoming: JE 1.16]). Using dispensers to place the wither skulls or pumpkins will still activate this trigger. Spawn eggs, commands and mob spawners will not work however. Available conditions:

  •  conditions:
    •  entity: The summoned entity. May be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:tame_animal

Triggers after the player tames an animal. Available conditions:

  •  conditions:
    •  entity: Checks the entity that was tamed. May be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:target_hit‌[upcoming: JE 1.16]

Triggers when the player shoots a target block. Available conditions:

  •  conditions:
    •  signal_strength: The redstone signal that will come out of the target block.
    •  projectile: The projectile used to hit the target block.
    •  shooter: Entity predicate for the player who shot or threw the projectile.
      • All possible conditions for entities
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.

minecraft:tick

Triggers every tick (20 times a second).

  •  conditions:
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:used_ender_eye

Triggers when the player uses an eye of ender (in a world where strongholds generate). Available conditions:

  •  conditions:
    •  distance: The horizontal distance between the player and the stronghold.
    •  distance:
      •  max: A maximum value.
      •  min: A minimum value.
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:used_totem

Triggers when the player uses a totem. Available conditions:

  •  conditions:
    •  item: The item, only works with totem items.
      • All possible conditions for items
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:villager_trade

Triggers after the player trades with a villager or a wandering trader. Available conditions:

  •  conditions:
    •  item: The item that was purchased. The "count" tag checks the count from one trade, not multiple.
      • All possible conditions for items
    •  villager: The villager the item was purchased from. May be a list of loot table conditions that must pass in order for the trigger to activate.‌[upcoming: JE 1.16]
      • All possible conditions for entities
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

minecraft:voluntary_exile

Triggers when the player causes a raid and checks where the player is. Available conditions:

  •  conditions:
    • Tags common to all locations
    •  player: A list of loot table conditions that must pass in order for the trigger to activate. The checks are applied to the player that would get the advancement.‌[upcoming: JE 1.16]

Removed triggers

minecraft:arbitrary_player_tick

Triggers every tick for one player only.

Removed in 1.12-pre1.

minecraft:player_damaged

Triggers when the player receives damage. Available conditions:

  •  conditions:
    •  blocked: Checks whether the damage was blocked.
    •  is_projectile: Checks if the damage was caused by a projectile.

This trigger had these two conditions only because it was made just for the Deflect Arrow advancement. Removed in 17w14a.