---
description: >-
  This wiki contains documentation on the available conditions that can be
  configured in the ParticleShapes plugin to determine whether or not to perform
  an action.
---

# Conditions

They are defined under the `conditions:` section in each routine's config.

## 🧩 Types of Supported Conditions

| Type           | Description                                                                |
| -------------- | -------------------------------------------------------------------------- |
| `permissions`  | Player must have **all listed permissions**                                |
| `placeholders` | Placeholder values must **match a condition** (supports numbers & strings) |

### 📦 Example Configuration

```yaml
conditions:
  - permissions:
      - "routine.yes"
      - "routine.admin"
  - placeholders: # Supports placeholders from the PlaceholderAPI plugin
      - "%server_online%>=20"
      - "%world_time%<13000"
      - "%player_name%==AaSteve"

```

## 🔍 Placeholder Comparison Operators

| Operator | Meaning                              | Supports      |
| -------- | ------------------------------------ | ------------- |
| `==`     | Equals (case-sensitive)              | Numbers, Text |
| `==Aa`   | Equals (case-insensitive)            | Only Text     |
| `!=`     | Not equal (case-sensitive)           | Numbers, Text |
| `!=Aa`   | Not equal (case-insensitive)         | Only Text     |
| `>`      | Greater than                         | Numbers       |
| `<`      | Less than                            | Numbers       |
| `>=`     | Greater than or equal to             | Numbers       |
| `<=`     | Less than or equal to                | Numbers       |
| `*=`     | Contains (case-sensitive)            | Only Text     |
| `!=*`    | Does not contain (case-sensitive)    | Only Text     |
| `=*Aa`   | Contains (case-insensitive)          | Only Text     |
| `~=`     | Starts with (case-sensitive)         | Only Text     |
| `!~=`    | Does not start with (case-sensitive) | Only Text     |
| `~=`Aa   | Starts with (case-insensitive)       | Only Text     |
| `^=`     | Ends with (case-sensitive)           | Only Text     |
| `!^=`    | Does not end with (case-sensitive)   | Only Text     |
| `^=Aa`   | Ends with (case-insensitive)         | Only Text     |

## ⚠ Notes&#x20;

* Conditions apply **before** any action is executed.
* All conditions must meet these requirements for the process to continue.
* `placeholders` values are **evaluated dynamically** at runtime.
* If any placeholder cannot be resolved, the condition is treated as **false**.
