> 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/projectiles.md).

# Projectile and Ranged 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: projectile_launch
  amount: 10
```

## `projectile_launch`

Runs for a projectile launched by a player and records its firing context.

| Context              | Value                              |
| -------------------- | ---------------------------------- |
| Event / payload      | `ProjectileLaunchEvent`            |
| Availability         | Paper and Spigot                   |
| PLAYER               | Player associated with this event  |
| SOURCE               | Quest player                       |
| TARGET               | Projectile                         |
| LOCATION             | Projectile location                |
| TRIGGER\_ITEM / slot | Resolved firing/held item and slot |
| Extra context        | `projectile`                       |

## `projectile_hit`

Runs when a projectile hits an entity/block and can be associated with a player.

| Context              | Value                                     |
| -------------------- | ----------------------------------------- |
| Event / payload      | `ProjectileHitEvent`                      |
| Availability         | Paper and Spigot                          |
| PLAYER               | Player associated with this event         |
| SOURCE               | Resolved shooter                          |
| TARGET               | Hit entity, absent on block-only hits     |
| LOCATION             | Projectile location                       |
| TRIGGER\_ITEM / slot | Tracked firing item/slot if known         |
| BLOCK                | Event block or movement destination block |
| Extra context        | `projectile`                              |

## `projectile_tick`

Runs each tracked projectile tick while its player/context remains valid.

| Context              | Value                                     |
| -------------------- | ----------------------------------------- |
| Event / payload      | `TriggerRuntime.ProjectileTick`           |
| Availability         | Paper and Spigot                          |
| PLAYER               | Player associated with this event         |
| SOURCE               | Tracked shooter                           |
| TARGET               | Projectile                                |
| LOCATION             | Projectile location                       |
| TRIGGER\_ITEM / slot | Tracked firing item/slot                  |
| BLOCK                | Event block or movement destination block |
| Extra context        | `projectile`                              |

This trigger runs automatically while a matching objective is active.

## `shoot`

Observes the player bow/crossbow shot path. One shot may match both shoot and shoot\_bow objectives.

| Context              | Value                                                  |
| -------------------- | ------------------------------------------------------ |
| Event / payload      | `EntityShootBowEvent`                                  |
| Availability         | Paper and Spigot                                       |
| PLAYER               | Player associated with this event                      |
| SOURCE               | Quest player                                           |
| TARGET               | Projectile                                             |
| LOCATION             | Projectile location                                    |
| TRIGGER\_ITEM / slot | Bow/crossbow / event hand                              |
| Extra context        | `bow_force`, `bow`, `consumable`, `hand`, `projectile` |

## `shoot_bow`

Runs for a player bow/crossbow shot and retains the firing weapon, hand, and force.

| Context              | Value                                                  |
| -------------------- | ------------------------------------------------------ |
| Event / payload      | `EntityShootBowEvent`                                  |
| Availability         | Paper and Spigot                                       |
| PLAYER               | Player associated with this event                      |
| SOURCE               | Quest player                                           |
| TARGET               | Projectile                                             |
| LOCATION             | Projectile location                                    |
| TRIGGER\_ITEM / slot | Bow/crossbow / event hand                              |
| Extra context        | `bow_force`, `bow`, `consumable`, `hand`, `projectile` |

## `load_crossbow`

Runs when a player loads a crossbow.

| Context              | Value                               |
| -------------------- | ----------------------------------- |
| Event / payload      | `EntityLoadCrossbowEvent`           |
| Availability         | Paper mode and event class required |
| PLAYER               | Player associated with this event   |
| SOURCE               | Quest player                        |
| TARGET               | Absent                              |
| LOCATION             | Player location                     |
| TRIGGER\_ITEM / slot | Crossbow / event hand               |

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