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

# Player Conditions

Each example is placed inside the conditions mapping of an objective or compatible task field. See [common fields](/for-ultimatequest/configuration/conditions.md).

## `player_conditions`

Runs the general player-condition registry on a selected player.

| Field        | Default | Description                                                 |
| ------------ | ------- | ----------------------------------------------------------- |
| `target`     | SOURCE  | Player selector; PLAYER explicitly selects the quest owner. |
| `conditions` | —       | Named general player-condition entries.                     |

```yaml
conditions:
  allowed:
    type: player_conditions
    target: PLAYER
    conditions:
      permission:
        type: permission
        permission: ultimatequest.quest.miner
```

Nested types are permission, world, biome, placeholder, any, and not. They are not direct event-condition IDs.

## Nested type reference

| type          | Fields                   | Behavior                                |
| ------------- | ------------------------ | --------------------------------------- |
| `permission`  | permission               | The selected player must have the node. |
| `world`       | world                    | Exact player world name.                |
| `biome`       | biome                    | Player biome name.                      |
| `placeholder` | placeholder, rule, value | Compare parsed text or numbers.         |
| `any`         | conditions               | Any nested general condition passes.    |
| `not`         | conditions               | Invert the combined nested result.      |

Placeholder numeric operators: >=, >, =, <, <=. Text operators: ==, !=, *= (left contains right), =* (right contains left), !*=, !=*. Missing arguments or invalid numbers may prevent the condition from restricting access correctly. Supply all parameters and test both matching and non-matching values.
