> 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/mt-documentation/config-yml.md).

# config.yml

The lightweight main settings file. Most of the plugin's behaviour lives in the dedicated YAMLs (`tiers.yml`, `chambers.yml`, etc.); this file covers the few cross-cutting toggles.

## License

There's nothing to configure here — **your licence is embedded in the JAR you downloaded.** No key to paste, no activation step. The plugin reads the embedded licence automatically on startup.

```yaml
license:
  marketplace: "esmp"   # esmp | voxel | builtbybit — this is auto-managed
```

* **`marketplace`** — which store the copy came from, used only for licence verification. esmp.fun downloads set this automatically; you normally never touch it.

If a download ever fails to verify, **re-download the JAR from your purchase page** (esmp.fun, or whichever store you bought it from) — the fresh copy re-embeds your licence.

## Tier telegraph

When scaled mobs first spawn in a chamber, players inside see a title showing the chamber's tier (e.g. **⚔ T13**), so they know what difficulty they're stepping into. Debounced per chamber so a whole wave only telegraphs once and subsequent waves don't spam.

```yaml
telegraph:
  enabled: true
  cooldown-seconds: 20      # min seconds between telegraphs for the same chamber
  fade-in-ticks: 10
  stay-ticks: 50
  fade-out-ticks: 20
```

* **`enabled`** — turn the whole thing off if you'd rather players figure the tier out from the fight itself.
* **`cooldown-seconds`** — minimum seconds between telegraphs for the same chamber. At 20s, a single wave's mobs collapse into one title and the next wave a few seconds later doesn't re-telegraph.
* **`fade-in-ticks` / `stay-ticks` / `fade-out-ticks`** — title timing. 20 ticks = 1 second.

The title text and the colour-by-tier behaviour are localisable via [messages.yml](/plugins/mc/mt-documentation/messages-yml.md) (`announce.tier-telegraph-*`).

## Player feedback (sounds + subtitles)

In-chamber feedback that complements the per-player action-bar HUD (controlled via `/tcpmt hud`). Tunable independently — for example, you can ship the HUD but keep the server silent.

```yaml
feedback:
  sounds-enabled: true
  subtitle-on-wave: true
  wave-pip-volume: 0.6
  wave-pip-pitch: 1.4
  chamber-cleared-volume: 1.0
  chamber-cleared-pitch: 1.0
```

* **`sounds-enabled`** — plays a pip (`block.note_block.bell`) on each wave completion and a celebration (`ui.toast.challenge_complete`) on a full chamber clear. Audible only to players inside the chamber.
* **`subtitle-on-wave`** — flashes a brief subtitle reading *"N/M spawners cleared"* on every wave completion. Skipped at tier 1 (where nothing is scaled).
* **`wave-pip-*` / `chamber-cleared-*`** — fine-grained volume and pitch controls. Defaults aim for "noticeable but not annoying."

Both `sounds-enabled` and `subtitle-on-wave` only fire in chambers at tier 2 or higher.

## Update checker

On startup, MythicTrials asynchronously checks a version endpoint and, if a newer version is available, notifies admins (`tcpmt.admin`) once when they join. Never blocks the server; any network error is silent.

```yaml
update-checker:
  enabled: true
  url: "https://api.esmp.fun/v2/version/mythic-trials"
```

* **`enabled`** — disable to skip the check entirely.
* **`url`** — the endpoint to query. Default points at esmp.fun. Set to `""` to disable.

The endpoint may return either a bare version string (`1.6.0`) or a JSON object `{ "version": "1.6.0", "url": "https://…" }`. The notice message itself is localisable via `update.available` in [messages.yml](/plugins/mc/mt-documentation/messages-yml.md).

## Command

```yaml
command:
  claim-mt-alias: true
```

*(0.1.4+)* Forces the short `/mt` alias to route to TCP-MythicTrials even when another plugin registered an `mt` command first — Bukkit normally hands a contested alias to whichever plugin loaded first, which made `/mt` silently reach the wrong plugin on some servers (while `/tcpmt` worked fine). The displaced plugin keeps its namespaced form. Disable if you'd rather keep the other plugin's `/mt`.

## Progression

```yaml
progression:
  default-tier: "T1"
```

* **`default-tier`** *(0.1.3+)* — the tier every player starts at in any chamber they have no stored record for yet. Accepts `T1`–`T20` or `M1`–`M5`; invalid values fall back to `T1` with a startup warning. Set it to `T2` (or higher) to skip the vanilla-scaling floor server-wide. Players who already have stored progression are unaffected, and `/tcpmt reload` picks up changes without a restart.

## Debug

```yaml
debug:
  verbose-logging: false
```

When `true`, the plugin logs verbose information about tier resolution, scaling application, and progression events. Useful when diagnosing why a chamber clear didn't bump a tier, or why a loot override resolved to the table it did. Off in normal operation.

***

Next: [**tiers.yml →**](/plugins/mc/mt-documentation/tiers-yml.md)


---

# 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/mt-documentation/config-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.
