# Anti Parrot

## About this module

The Intelligent Anti Parrot module prevents players using hacked clients to automatically copy ("parrot") other players chat messages. Also prevents the same (non-generic) message from be said by multiple players within a short time frame.

{% hint style="info" %}
To bypass this module, op or the permission: "**chatsentry.antiparrot.bypass"** is required.&#x20;
{% endhint %}

## Config guide

You can access the below settings in the **anti-parrot.yml** file within the **modules** folder of the plugin's root folder.

{% hint style="success" %}
**Config excerpts taken from v4.4.0 and may not be completely up-to-date with the latest changes. To see the most up-to-date file, see below:**
{% endhint %}

{% content-ref url="/pages/-MOrlzmCVffee38QB3CM" %}
[anti-parrot.yml](/files/files/module-configurations/anti-parrot.yml.md)
{% endcontent-ref %}

###

### intelligent&#xD;

Should anti parrot utilize extra intelligence algorithms? Keeping this on is highly recommended. Typically having this on extends compatibility to detect players using premium / smarter hacked clients.

```yaml
intelligent: true
```

### ignore-short

If true, short messages such as "lol" or "xD" will be ignored and not detected as parroting if multiple players repeat them in a short time frame.

Note that this only applies to VERY short messages like the examples mentioned above.

```yaml
ignore-short: true
```

### ignore-usernames

Should players usernames in any phrase-whitelist phrases be ignored?

```yaml
ignore-usernames: true
```

### phrase-whitelist

The phrases below are phrases that the module will ignore, and can be said by multiple players within a short time frame.

Character case in the below list does NOT matter. Case variants are automatically checked by the plugin.

*Set to "phrase-whitelist: \[]" to have an empty list.*

```yaml
phrase-whitelist:
  - "wb"
  - "welcome back"
  - "wbbb"
  - "weba"
  - "yes"
  - "yea"
  - "ok"
  - "sure"
  - "no"
  - "nope"
  - "nah"
  - "yup"
  - "yep"
  - "yeh"
```

### phrase-whitelist-similarity-threshold

How similar must a message be to a phrase on the list above to be considered the same and also whitelisted? (in %)

**1.0** = exactly as one of the phrases on the list (excluding character case)\
**0.0** = not exact at all (this eliminates the purpose of the whitelist)

```yaml
phrase-whitelist-similarity-threshold: 0.85
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.chatsentry.xyz/config-guides/module-config-guides/anti-parrot.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
