> For the complete documentation index, see [llms.txt](https://darkstarworks.gitbook.io/plugins/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://darkstarworks.gitbook.io/plugins/mc/ws-documentation/messages-yml.md).

# messages.yml

Every chat-facing string TCP-WildSpawners sends through chat lives in `plugins/TCP-WildSpawners/messages.yml`. Edit the file, run `/tcpws reload`, and the changes take effect immediately — no server restart required.

## Format

Values use [MiniMessage syntax](https://docs.advntr.dev/minimessage/). You can use gradients, hover/click events, and any Adventure text feature:

```yaml
command.give-success-sender: "<gradient:green:aqua>Gave</gradient> <white>{amount}× {id}</white> to <yellow>{player}</yellow>."
```

Placeholders are written as `{name}` and are substituted by the plugin before rendering. Available placeholders are listed per key below.

## Auto-prefix

The `prefix` key is prepended automatically to every message unless the key's top-level segment is `hologram.` or the key is `prefix` itself.

## Schema check

On every startup and `/tcpws reload`, the plugin compares the loaded keys against the expected set and logs a warning for any that are missing. Missing keys fall back to the plugin's built-in defaults, so a partially-edited file never silently breaks anything — you'll see exactly which keys need attention.

To regenerate the file from defaults, delete it and restart the server (or run `/tcpws reload`). The plugin will write a fresh copy with all current keys.

## Key reference

### Shared

| Key                     | Placeholders | Default                                        |
| ----------------------- | ------------ | ---------------------------------------------- |
| `prefix`                | —            | `[WildSpawners]`                               |
| `command.no-permission` | —            | You don't have permission to use this command. |
| `command.player-only`   | —            | This command can only be used in-game.         |
| `command.usage`         | —            | Usage line listing all subcommands             |

### /tcpws list

| Key                         | Placeholders                                                                | Notes                                            |
| --------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------ |
| `command.list-empty`        | —                                                                           | Shown when no presets are loaded                 |
| `command.list-header`       | `{count}`                                                                   | Header line                                      |
| `command.list-row`          | `{id}` `{disabled}` `{empty}` `{provider}` `{normalCount}` `{ominousCount}` | One line per preset                              |
| `command.list-row-disabled` | —                                                                           | Appended to `{disabled}` when preset is disabled |
| `command.list-row-empty`    | —                                                                           | Appended to `{empty}` when preset has no mobs    |

### /tcpws info

| Key                         | Placeholders   |
| --------------------------- | -------------- |
| `command.info-usage`        | —              |
| `command.info-not-found`    | `{id}`         |
| `command.info-header`       | `{id}`         |
| `command.info-display-name` | `{name}`       |
| `command.info-provider`     | `{provider}`   |
| `command.info-enabled`      | `{enabled}`    |
| `command.info-allow-empty`  | `{allowEmpty}` |
| `command.info-normal-mobs`  | `{mobs}`       |
| `command.info-ominous-mobs` | `{mobs}`       |
| `command.info-mobs-none`    | —              |

### /tcpws give

| Key                            | Placeholders                 |
| ------------------------------ | ---------------------------- |
| `command.give-no-permission`   | —                            |
| `command.give-usage`           | —                            |
| `command.give-not-found`       | `{id}`                       |
| `command.give-not-found-click` | —                            |
| `command.give-disabled`        | `{id}`                       |
| `command.give-empty`           | `{id}`                       |
| `command.give-player-offline`  | `{player}`                   |
| `command.give-console-usage`   | —                            |
| `command.give-build-failed`    | —                            |
| `command.give-overflow`        | `{player}`                   |
| `command.give-success-sender`  | `{amount}` `{id}` `{player}` |
| `command.give-success-target`  | `{amount}` `{id}`            |

### /tcpws preview

| Key                             | Placeholders |
| ------------------------------- | ------------ |
| `command.preview-no-permission` | —            |
| `command.preview-usage`         | —            |
| `command.preview-not-found`     | `{id}`       |
| `command.preview-no-air`        | —            |
| `command.preview-placed`        | —            |

### /tcpws mine

| Key                       | Placeholders  |
| ------------------------- | ------------- |
| `command.mine-header`     | —             |
| `command.mine-enabled`    | `{enabled}`   |
| `command.mine-hardness`   | `{seconds}`   |
| `command.mine-silk-touch` | `{required}`  |
| `command.mine-owner-only` | `{ownerOnly}` |

### /tcpws reload / version

| Key                         | Placeholders |
| --------------------------- | ------------ |
| `command.reload-success`    | `{count}`    |
| `command.version-header`    | `{version}`  |
| `command.version-requires`  | —            |
| `command.version-presets`   | `{count}`    |
| `command.version-holograms` | `{status}`   |
| `command.version-mining`    | `{status}`   |
| `command.version-enabled`   | —            |
| `command.version-disabled`  | —            |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://darkstarworks.gitbook.io/plugins/mc/ws-documentation/messages-yml.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
