# :icon-light-bulb: Trigger Types

This page lists all 53 trigger types available for creating advancements.

* * *

#### 

**Basic Triggers**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `JOIN` | Player joins the server | `amount` (but effective once) |

* * *

#### 

**Block Interaction Triggers**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `BREAK_BLOCK` | Break specific blocks | `block` (multi), `amount` |
| `PLACE_BLOCK` | Place specific blocks | `block` (multi), `amount` |
| `HARVEST` | Harvest crops/plants | `block` (crops only), `amount` |
| `SNIFF` | Brush suspicious sand/gravel | `block` (SUSPICIOUS_SAND/GRAVEL), `amount` |
| `CHOP_TREE` | Break any log | Auto-sets all log/wood/stem types, `amount` |

!!!secondary **Block filter validation:**
- `HARVEST`: Only accepts crop blocks (wheat, carrots, potatoes, nether wart, etc.)
- `SNIFF`: Only accepts SUSPICIOUS_SAND and SUSPICIOUS_GRAVEL
- `CHOP_TREE`: Automatically sets all log, wood, stem, and stripped variants
!!!

* * *

#### 

**Entity Interaction Triggers**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `KILL` | Kill entities | `entity` (multi), `amount` |
| `BREED` | Breed animals | `entity` (multi), `amount` |
| `TAME` | Tame animals | `entity` (multi), `amount` |
| `SHEAR` | Shear entities | `entity` (sheep, snow golem, mooshroom), `sheepColor`, `amount` |
| `MILK` | Milk cows/mooshrooms | `entity` (cow, mooshroom), `amount` |

!!!secondary **Entity filter validation:**
- `SHEAR`: Only accepts SHEEP, SNOW_GOLEM, MOOSHROOM
- `MILK`: Only accepts COW, MOOSHROOM
- Other triggers: Accept any valid entity type
!!!

* * *

#### 

**Item Triggers**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `OBTAIN_ITEM` | Obtain items (pickup, chest, inventory) | `itemType` (multi), `iconCustomModelData`, `customModelData`, `amount` |
| `CRAFT_ITEM` | Craft items | `itemType` (multi), `amount` |
| `SMELT_ITEM` | Smelt items | `itemType` (multi), `amount` |
| `DROP_ITEM` | Drop specific items | `itemType` (multi), `amount` |
| `ARMOR_EQUIP` | Equip armor pieces | `itemType` (multi), `amount` |
| `FILL_BUCKET` | Fill buckets | `itemType` (multi), `amount` |
| `EMPTY_BUCKET` | Empty buckets | `itemType` (multi), `amount` |
| `LISTEN_MUSIC` | Play music discs in a jukebox | `itemType` (MUSIC_DISC_*), `amount` |
| `PLAYTIME` | Cumulative play time in minutes | `amount` |
| `LOGIN_STREAK` | Consecutive daily logins (streak resets if a day is missed) | `amount` |
| `BIOME_ENTER` | Enter a specific biome | `entity` (biome name, e.g., MUSHROOM_FIELDS), `amount` |
| `VANILLA_ADVANCEMENT` | Complete a specific vanilla Minecraft advancement | `entity` (adv key, e.g., minecraft:story/mine_diamond), `amount` |
| `REGION_ENTER` | Enter a WorldGuard region | `entity` (region name), `amount` |

!!!secondary **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**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `ENCHANT_ITEM` | Enchant any item at a table | `itemType`, `amount` |
| `ENCHANT` | Enchant with specific enchant/level | `enchantmentType`, `minimumLevel`, `amount` |

* * *

#### 

**Dimension & Travel Triggers**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `ENTER_DIMENSION` | Enter the Nether or End | `dimension` (NORMAL/NETHER/THE_END) |
| `TRAVEL_DISTANCE` | Travel a cumulative distance | `travelMode` (TOTAL/WALKING/BOAT), `distanceRequired` |
| `NETHER_ROOF` | Reach the Nether bedrock roof (Y=128+) | `amount` (first-time only per session) |

**TRAVEL_DISTANCE modes:**
- `TOTAL`: Any movement (walking, flying, swimming, etc.)
- `WALKING`: Ground movement only
- `BOAT`: Vehicle/boat movement

* * *

#### 

**Status Effect Triggers**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `POTION_EFFECT` | Get a potion effect | `potionEffectType`, `minimumAmplifier`, `amount` |

* * *

#### 

**Death Trigger**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `DEATH` | Die in specific ways | `deathCause` (see below), `amount` |

**Death causes (v2.2+):**
- `null`/`ANY`: Any death
- `FALL`: Fall damage
- `LAVA`: Lava/fire damage
- `DROWNING`: Drowning
- `VOID`: Void damage
- `PVP`: Killed by another player
- `MOB`: Killed by any mob (non-player entity)
- `EXPLOSION`: Explosion damage
- `STARVATION`: Starvation
- `POISON`: Poison damage
- `WITHER`: Wither effect
- `LIGHTNING`: Lightning strike
- `SUFFOCATION`: Suffocation (wall/block)
- `MAGIC`: Magic damage (potions, evoker fangs, etc.)
- `FIRE`: Fire tick damage

**Specific entity type (v2.2+):**
- You can also set `deathCause` to 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**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `DAMAGE_DEALT` | Deal damage to entities | `amount` (cumulative damage points) |
| `DAMAGE_TAKEN` | Take damage | `amount` (cumulative damage points) |

* * *

#### 

**Utility Triggers**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `JUMP` | Jump | `amount` |
| `COMPOSTER_USE` | Use a composter | `amount` |
| `BELL_RING` | Ring a bell | `amount` |
| `RIPTIDE` | Use riptide trident | `amount` |
| `RAID_WIN` | Complete a raid | `amount` |
| `TARGET_BLOCK` | Hit a target block | `amount` |
| `CROSSBOW_SHOT` | Shoot with crossbow | `amount` |
| `FIREWORK` | Launch fireworks | `amount` |
| `GLIDE` | Fly with elytra | `amount` (distance) |
| `SWIM` | Swim in water | `amount` (distance) |
| `CLIMB` | Climb ladders/vines | `amount` (distance) |
| `SLEEP` | Sleep in a bed | `bedColor`, `amount` |
| `CONSUME` | Drink potions, milk, or honey | `itemType` (drinkable), `amount` |
| `EAT` | Eat food | `itemType` (food), `amount` |
| `FISH` | Catch fish | `itemType`, `amount` |
| `TRADE` | Trade with villagers | `villagerProfession`, `amount` |
| `ANVIL_USE` | Use an anvil | `amount` |
| `GRINDSTONE_USE` | Use a grindstone | `amount` |

* * *

####

**Special Triggers (v2.0+)**

| Trigger | Description | Configurable Fields |
|---------|-------------|-------------------|
| `MANUAL` | Command-only, never auto-triggers | None (use `/padv give`) |
| `PLACEHOLDER` | Complete when a PlaceholderAPI placeholder matches a condition | `placeholder`, `placeholderOperator`, `placeholderValue` |

**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:

| Operator | Description | Works with |
|----------|-------------|------------|
| `==` | Equals (exact match) | Numbers & strings |
| `!=` | Not equals | Numbers & strings |
| `>` | Greater than | Numbers only |
| `>=` | Greater or equal | Numbers only |
| `<` | Less than | Numbers only |
| `<=` | Less or equal | Numbers only |
| `contains` | Value contains string | Strings only |

**Example:**
```yaml
trigger: PLACEHOLDER
placeholder: "%playerpoints_points%"
placeholderValue: "20"
placeholderOperator: ">="
```
