Trigger Types
This page lists all 47 trigger types available for creating advancements.
Basic Triggers
Block Interaction Triggers
Block filter validation:
HARVEST: Only accepts crop blocks (wheat, carrots, potatoes, nether wart, etc.)SNIFF: Only accepts SUSPICIOUS_SAND and SUSPICIOUS_GRAVELCHOP_TREE: Automatically sets all log, wood, stem, and stripped variants
Entity Interaction Triggers
Entity filter validation:
SHEAR: Only accepts SHEEP, SNOW_GOLEM, MOOSHROOMMILK: Only accepts COW, MOOSHROOM- Other triggers: Accept any valid entity type
Item Triggers
OBTAIN_ITEM tracking: Monitors item pickups, chest/trapped chest inventories, and inventory on world change. For maximum performance, chest tracking only activates when an OBTAIN_ITEM advancement exists.
Enchanting Triggers
Dimension & Travel Triggers
TRAVEL_DISTANCE modes:
TOTAL: Any movement (walking, flying, swimming, etc.)WALKING: Ground movement onlyBOAT: Vehicle/boat movement
Status Effect Triggers
Death Trigger
Death causes (v2.2+):
null/ANY: Any deathFALL: Fall damageLAVA: Lava/fire damageDROWNING: DrowningVOID: Void damagePVP: Killed by another playerMOB: Killed by any mob (non-player entity)EXPLOSION: Explosion damageSTARVATION: StarvationPOISON: Poison damageWITHER: Wither effectLIGHTNING: Lightning strikeSUFFOCATION: Suffocation (wall/block)MAGIC: Magic damage (potions, evoker fangs, etc.)FIRE: Fire tick damage
Specific entity type (v2.2+):
- You can also set
deathCauseto an entity type name (e.g.,ZOMBIE,ENDERMAN,CREEPER,BLAZE) - The advancement will only complete when killed by that specific mob
- Any valid Minecraft entity type is supported
In the GUI: Left-click cycles through all built-in causes, Right-click opens chat input for a custom entity type or DamageCause name.
Damage Triggers
Utility Triggers
Special Triggers (v2.0+)
MANUAL trigger: This advancement appears in the tree but can only be obtained via /padv give <player> <advancement>. Perfect for staff rewards, rankup rewards, event prizes, or voteparty rewards.
PLACEHOLDER trigger: The plugin checks the placeholder value every 30 seconds for all online players. Supports number and string comparison:
Example:
trigger: PLACEHOLDER
placeholder: "%playerpoints_points%"
placeholderValue: "20"
placeholderOperator: ">="