> For the complete documentation index, see [llms.txt](https://wiki.dyroxplays.de/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.dyroxplays.de/tntrun/konfiguration.md).

# Konfiguration

Passe die MySQL-Anbindung, Spielzeiten, Tick-Despawns, Scoreboards, Ingame-Gegenstände und Nachrichten des **TNTRun**-Plugins flexibel in der `config.yml` an.

***

## Dateiübersicht

Das Plugin erstellt nach dem ersten Serverstart folgende Datei:

* **`plugins/TNTRun/config.yml`**: Verwaltet alle Spielregeln, MySQL-Datenbanken, GUI-Layouts und System-Chatnachrichten.

***

## Konfigurations-Bereiche

{% tabs %}
{% tab title="⚙️ Basis-Einstellungen" %}

#### Spielregeln & Ticks

```yaml
# Der Präfix vor Systemnachrichten
prefix: '&7[&cTNTRun&7]'

# Aktiviert den Setup-Modus (verhindert Beitreten ohne 'tntrun.admin')
setup: true

# Aktiviert Boosts für Zuschauer/Spectator
specproectionboost: true

# Mindestspielerzahl zum Start & maximale Slots
lobbystartab: 2
maxplayers: 8

# Anzahl der Granaten (Schneebälle), die Spieler erhalten
snowballamount: 1
```

{% endtab %}

{% tab title="🗄️ MySQL" %}

#### Datenbank-Optionen

> \[!WARNING] **Achtung Code-Schreibfehler:** Der Datenbank-Schlüssel in der MySQL-Sektion heißt **`datebase`** (mit "te" in der Mitte) statt `database`. Achte darauf beim Eintragen deines Datenbanknamens!

```yaml
host: localhost
port: '3306'
username: user
datebase: db # Schreibweise beachten!
password: password123
```

{% endtab %}

{% tab title="⏱️ Timer & Despawns" %}

#### Zeitliche Abläufe

```yaml
# Phasen-Timer (in Sekunden)
sec:
  lobby: 30
  restart: 15

# Blockabbau-Verzögerung in Server-Ticks (20 Ticks = 1 Sekunde)
blockdespawntick:
  tntremove: 3 # TNT-Verzögerung vor dem Herunterfallen
  blockremove: 5 # Sand-Verzögerung vor dem Herunterfallen
```

{% endtab %}

{% tab title="💻 MOTD & Chat" %}

#### Server-Ansicht

```yaml
# Server-Statusanzeige im Server-Browser (MOTD)
motd:
  lobby: '&aLOBBY'
  ingame: '&cINGAME'
  restart: '&cRESTART'

# Chat-Formatting
chatformat:
  enable: true
  normal: '&7%player%&8: &f%msg%'
  spec: '&7[&cX&7] &7%player%&8: &f%msg%'
```

{% endtab %}
{% endtabs %}

***

## Scoreboard-Design (`sb` & `sbueberschrift`)

Das Scoreboard ist flackerfrei und dynamisch aufgebaut, um die verbleibenden Spieler auf den jeweiligen Ebenen anzuzeigen:

```yaml
sbueberschrift: '&cTNTRun'

sb:
  title: '&cTNTRun'
  # Lobby-Scoreboard
  lobby:
  - '&a '
  - '&fMap:'
  - '&b%map%'
  - '&b '
  - '&fSpieler:'
  - '&c%online% / %max%'
  - '&c '
  - '&7Dyroxplays.de'
  
  # Live-Spiel-Scoreboard
  ingame:
    board:
    - '&a '
    - '&fMap:'
    - '&b%map%'
    - '&b '
    - '%playerinfo%' # Platzhalter für die Ebenen-Anzeigen
    - '&c '
    - '&fLebende Spieler:'
    - '&c%alive%'
    - '&d '
    - '&7Dyroxplays.de'
    
    # Anzeige der Spieler über, auf und unter der aktuellen Ebene
    playerinfo:
      down:
      - '&fSpieler unter dir:'
      - '&e%down%'
      same:
      - '&fSpieler auf deiner Ebene:'
      - '&e%same%'
      top:
      - '&fSpieler über dir:'
      - '&e%top%'
      
  # Zuschauer-Scoreboard
  spec:
  - '&a '
  - '&fMap:'
  - '&b%map%'
  - '&b '
  - '&fLebende Spieler:'
  - '&c%alive%'
  - '&c '
  - '&7Dyroxplays.de'
```

***

## Item-Konfigurationen (`items`)

Rüste die Spieler in den verschiedenen Phasen mit Items aus.

* **Format**: `SLOT;MATERIAL;SHORTID;DISPLAYNAME`

```yaml
mapvotingname: '&7MapVoting'

items:
  # Items in der Lobby-Phase
  lobby:
    mapvote: 0;PAPER;0;&7MapVoting
    leave: 8;SLIME_BALL;0;&cZur Lobby
  # Items für Zuschauer (Zuschauer-Kompass)
  spec:
    teleporter: 0;PLAYER_HEAD;0;&7Navigator
    leave: 8;SLIME_BALL;0;&cZur Lobby
  # Items im Spiel
  ingame:
    stick: 0;STICK;0;&3Schlagstock
    snowball: 1;SNOWBALL;0;&3Granate
```

***

## System- und Fehlermeldungen

```yaml
# Chat-Nachrichten
joinmessage: '&e%player% &eist gejoint'
quitmessage: '&e%player% &eist geleavt'
killmessage: '&c%player% &ewurde von &a%killer% &cgetötet'
deathmessage: '&c%player% &eist gestorben'
winnertitle: '&7%player% hat gewonnen.'

# Admin-Ausgaben
messages:
  help: |-
    &7====&6Help&7====
    &e/tntrun setLobby &7- Setze Lobby
    &e/tntrun setSpawn <worldID> &7- Setzt Spawnpunkt auf WorldID
    &e/tntrun setTopWall <1-10> &7- Setzt Top10 Wand
    &e/tntrun worldTP <worldname> &7- Lässt dich zu einer Welt teleportieren

    &e/start &7- Setzt StartCountdown auf 10 Sekunden
    &e/stats (<Spieler>) &7- Zeigt Stats von Spieler an

success:
  teleporttoplayer: '&aDu hast dich zu %player% geportet.'

error:
  serverkick:
    starting: '&cDer Server fährt noch hoch.'
    full: '&cKaufe dir ein Rang, um zu joinen. Der Server ist voll'
    fullfull: '&cDer Server ist voll'
    kickedpremium: '&cEin Premiumspieler ist gejoint und du wurdest gekickt, kaufe dir einen Rang.'
    setup: |-
      &cDer Server ist in &esetup: true &ceingestellt
       &cDu brauchst die &ePermission tntrun.admin &czum joinen
       &coder stellte in der Config &fsetup: false &cund &frestarte den Server
  worldnotexit: '&cDie Welt %name% ist nicht geladen.'
  playernotalive: '&c%player% ist bereits tot.'

# Statsausgabe (/stats)
stats:
- '&eStats von %player%'
- '&fKills: %kills%'
- '&fDeaths: %deaths%'
- '&fGespielt: %played%'
- '&fGewonnen: %wins%'
- '&fK/D: %kd%'
- '&fRang: %rang%'

# Statswand-Schilder
top10wall:
  line1: '&0--- Rank %rank% ---'
  line2: '&a'
  line3: '&0%player%'
  line4: '&0Wins: %wins%'
```
