> For the complete documentation index, see [llms.txt](https://enchantedmobs.superiormc.cn/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://enchantedmobs.superiormc.cn/for-ultimatequest/configuration/triggers/blocks-interactions.md).

# Block and Interaction Triggers

Each section documents the current event context. PLAYER is the player credited with quest progress; TARGET is not automatically PLAYER. Missing values remain absent. All of these triggers observe progress and do not expose mutable damage/drop results.

## Configuration example

```yaml
source:
  trigger: block_break
  amount: 10
```

## `block_break`

Runs when a player breaks a block. Default anti-abuse excludes recorded player placements.

| Context              | Value                                     |
| -------------------- | ----------------------------------------- |
| Event / payload      | `BlockBreakEvent`                         |
| Availability         | Paper and Spigot                          |
| PLAYER               | Player associated with this event         |
| SOURCE               | Quest player                              |
| TARGET               | Absent                                    |
| LOCATION             | Event block center                        |
| TRIGGER\_ITEM / slot | Main hand / HAND                          |
| BLOCK                | Event block or movement destination block |
| Extra context        | `original_experience`                     |

## `block_damage`

Runs when a player starts damaging a block; it does not require the block to break.

| Context              | Value                                     |
| -------------------- | ----------------------------------------- |
| Event / payload      | `BlockDamageEvent`                        |
| Availability         | Paper and Spigot                          |
| PLAYER               | Player associated with this event         |
| SOURCE               | Quest player                              |
| TARGET               | Absent                                    |
| LOCATION             | Event block center                        |
| TRIGGER\_ITEM / slot | Event item / HAND                         |
| BLOCK                | Event block or movement destination block |

## `block_drop_item`

Runs for a player block drop event and retains the pre-break BlockState.

| Context              | Value                                     |
| -------------------- | ----------------------------------------- |
| Event / payload      | `BlockDropItemEvent`                      |
| Availability         | Paper and Spigot                          |
| PLAYER               | Player associated with this event         |
| SOURCE               | Quest player                              |
| TARGET               | Absent                                    |
| LOCATION             | Event block center                        |
| TRIGGER\_ITEM / slot | Current main hand / HAND                  |
| BLOCK                | Event block or movement destination block |
| Extra context        | `broken_block_state`                      |

## `block_place`

Runs when a player places a block. Player placement is not excluded by default for this trigger.

| Context              | Value                                     |
| -------------------- | ----------------------------------------- |
| Event / payload      | `BlockPlaceEvent`                         |
| Availability         | Paper and Spigot                          |
| PLAYER               | Player associated with this event         |
| SOURCE               | Quest player                              |
| TARGET               | Absent                                    |
| LOCATION             | Event block center                        |
| TRIGGER\_ITEM / slot | Placed item / event hand                  |
| BLOCK                | Event block or movement destination block |

## `block_break_progress_update`

Observes a player block-breaking progress update.

| Context              | Value                                     |
| -------------------- | ----------------------------------------- |
| Event / payload      | `BlockBreakProgressUpdateEvent`           |
| Availability         | Paper mode and event class required       |
| PLAYER               | Player associated with this event         |
| SOURCE               | Quest player                              |
| TARGET               | Absent                                    |
| LOCATION             | Event block center                        |
| TRIGGER\_ITEM / slot | Main hand / HAND                          |
| BLOCK                | Event block or movement destination block |
| Extra context        | `block_break_progress`                    |

## `interact`

Runs for player interactions; the clicked block/item/hand may be absent.

| Context              | Value                                           |
| -------------------- | ----------------------------------------------- |
| Event / payload      | `PlayerInteractEvent`                           |
| Availability         | Paper and Spigot                                |
| PLAYER               | Player associated with this event               |
| SOURCE               | Quest player                                    |
| TARGET               | Absent                                          |
| LOCATION             | Clicked block center, otherwise player location |
| TRIGGER\_ITEM / slot | Event item / event hand, both optional          |
| BLOCK                | Event block or movement destination block       |

## `inside_block`

Observes a player inside-block event.

| Context              | Value                                     |
| -------------------- | ----------------------------------------- |
| Event / payload      | `EntityInsideBlockEvent`                  |
| Availability         | Paper mode and event class required       |
| PLAYER               | Player associated with this event         |
| SOURCE               | Quest player                              |
| TARGET               | Absent                                    |
| LOCATION             | Event block center                        |
| TRIGGER\_ITEM / slot | Absent                                    |
| BLOCK                | Event block or movement destination block |

## `vibration_receive`

Runs when the vibration event source is a player.

| Context              | Value                             |
| -------------------- | --------------------------------- |
| Event / payload      | `BlockReceiveGameEvent`           |
| Availability         | Paper and Spigot                  |
| PLAYER               | Player associated with this event |
| SOURCE               | Quest player                      |
| TARGET               | Quest player                      |
| LOCATION             | Receiving block location          |
| TRIGGER\_ITEM / slot | Absent                            |

[Trigger overview](/for-ultimatequest/configuration/triggers.md) · [Event conditions](/for-ultimatequest/configuration/conditions.md)
