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

# Event Conditions

Conditions decide whether a task may be accepted or an objective event may contribute progress. A normal conditions mapping is AND: every named entry must pass. UltimateQuest registers 18 built-in event-condition types.

## Reference pages

* [🔀 Logical conditions](/for-ultimatequest/configuration/conditions/logical.md)
* [🧍 Entity and state conditions](/for-ultimatequest/configuration/conditions/entity-state.md)
* [🎒 Item conditions](/for-ultimatequest/configuration/conditions/items.md)
* [🌍 Environment and block conditions](/for-ultimatequest/configuration/conditions/environment.md)
* [🧾 Player conditions](/for-ultimatequest/configuration/conditions/player-conditions.md)

## Common format

```yaml
conditions:
  survival:
    type: game_mode
    target: PLAYER
    modes: [SURVIVAL, ADVENTURE]
    not: false
```

| Field            | Default       | Description                                                                     |
| ---------------- | ------------- | ------------------------------------------------------------------------------- |
| type             | Required      | Registered condition ID. The string registry normalizes case and hyphens.       |
| not              | false         | Inverts this condition's result, including a false result from missing context. |
| target           | Type-specific | Entity selector only when the condition supports it.                            |
| meet-message     | Empty         | Optional text sent to the quest player on success.                              |
| not-meet-message | Empty         | Optional text sent to the quest player on failure.                              |

## Evaluation context

Task-root conditions are checked at acceptance with a player-only context. Objective conditions run on matching trigger events before anti-abuse and increment calculation. TARGET is not automatically the quest owner; explicitly select PLAYER for owner checks. SOURCE and TARGET come from the selected trigger. Item/block/event data can be absent.

Unknown direct types reject definition loading. General permission/placeholder checks belong under player\_conditions. Missing data usually returns false, but common not can invert it; do not use inversion as an existence check.

## Type index

| Type                | Reference                                                                                                |
| ------------------- | -------------------------------------------------------------------------------------------------------- |
| `any`               | [any](/for-ultimatequest/configuration/conditions/logical.md#any)                                        |
| `not`               | [not](/for-ultimatequest/configuration/conditions/logical.md#not)                                        |
| `sneaking`          | [sneaking](/for-ultimatequest/configuration/conditions/entity-state.md#sneaking)                         |
| `not_sneaking`      | [not\_sneaking](/for-ultimatequest/configuration/conditions/entity-state.md#not_sneaking)                |
| `on_ground`         | [on\_ground](/for-ultimatequest/configuration/conditions/entity-state.md#on_ground)                      |
| `in_air`            | [in\_air](/for-ultimatequest/configuration/conditions/entity-state.md#in_air)                            |
| `in_water`          | [in\_water](/for-ultimatequest/configuration/conditions/entity-state.md#in_water)                        |
| `in_lava`           | [in\_lava](/for-ultimatequest/configuration/conditions/entity-state.md#in_lava)                          |
| `game_mode`         | [game\_mode](/for-ultimatequest/configuration/conditions/entity-state.md#game_mode)                      |
| `has_potion`        | [has\_potion](/for-ultimatequest/configuration/conditions/entity-state.md#has_potion)                    |
| `match_entity`      | [match\_entity](/for-ultimatequest/configuration/conditions/entity-state.md#match_entity)                |
| `match_item`        | [match\_item](/for-ultimatequest/configuration/conditions/items.md#match_item)                           |
| `catch_match_item`  | [catch\_match\_item](/for-ultimatequest/configuration/conditions/items.md#catch_match_item)              |
| `world`             | [world](/for-ultimatequest/configuration/conditions/environment.md#world)                                |
| `block_type`        | [block\_type](/for-ultimatequest/configuration/conditions/environment.md#block_type)                     |
| `night`             | [night](/for-ultimatequest/configuration/conditions/environment.md#night)                                |
| `storm`             | [storm](/for-ultimatequest/configuration/conditions/environment.md#storm)                                |
| `player_conditions` | [player\_conditions](/for-ultimatequest/configuration/conditions/player-conditions.md#player_conditions) |
