> 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/moneytoplist/konfiguration.md).

# Konfiguration

## MoneyToplist – Konfigurations-Dokumentation

Diese Dokumentation beschreibt alle Einstellungen der `config.yml` des **MoneyToplist** Plugins. Das Plugin ist hochgradig anpassbar und unterstützt verschiedene Methoden, um die reichsten Spieler deines Servers zu ermitteln und in einem dynamischen GUI darzustellen.

***

### 1. Allgemeine Einstellungen

Grundlegende Einstellungen für Chat-Ausgaben, Item-Texte und externe APIs.

```yaml
prefix: "&7[&eMoneyToplist&7] "
format: "#.##"
messages:
  noperm: "&cDazu hast du keine Rechte."
lore:
  - "&7Rang: &a%rank%"
  - "&7Money: &a%money% $"

# API-Integrationen
use_placeholderapi: true
check_luckperms_bypass: true
```

* **`format`**: Legt das Zahlenformat für Kontostände fest (z.B. `#.##` für zwei Nachkommastellen).
* **`lore`**: Die Beschreibung der Spieler-Köpfe im GUI. Unterstützt die internen Platzhalter `%rank%` und `%money%` sowie PlaceholderAPI (sofern aktiviert).
* **`use_placeholderapi`**: Wenn `true`, werden alle Texte im GUI (Titel, Item-Namen, Lore) durch die PlaceholderAPI übersetzt.
* **`check_luckperms_bypass`**: Wenn `true`, wird über die LuckPerms-API (auch bei Offline-Spielern) geprüft, ob ein Spieler die Permission `moneytoplist.bypass` besitzt. Ist dies der Fall, wird er in der Topliste vollständig ignoriert.

***

### 2. Ränge & Ranking-Methode

Hier legst du fest, **wie** das Plugin die Top-Spieler ermittelt und wie viele Ränge angezeigt werden sollen.

```yaml
ranking_method: "VAULT_OFFLINE"

ranks:
  amount: 5
  slots: "13, 12, 14, 10, 16"
```

#### Die Ranking-Methoden (`ranking_method`)

| Methode               | Beschreibung                                                                                                       | Empfohlen für                                                                        |
| --------------------- | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ |
| **`VAULT_OFFLINE`**   | *(Standard)* Durchsucht asynchron alle Offline-Spieler über Vault und berechnet die Topliste im Hintergrund neu.   | Kleine bis mittlere Server ohne MySQL.                                               |
| **`PLACEHOLDER_API`** | Liest die Daten rein visuell über Platzhalter aus (z.B. von EssentialsX). Das Plugin rechnet hierbei nicht selbst. | Server, die bereits `/baltop` über ein anderes Plugin optimiert berechnen.           |
| **`EXTERNAL_MYSQL`**  | Greift direkt auf die Datenbank-Tabelle eines anderen Economy-Plugins zu und holt sich dort die Topliste.          | Große Netzwerke mit bestehender, zentraler Geld-Datenbank.                           |
| **`JOIN_EVENT`**      | Das Legacy-System: Speichert/Aktualisiert den Kontostand eines Spielers nur, wenn er den Server betritt.           | Spezifische Setups (weniger akkurat, da Offline-Geldtransaktionen ignoriert werden). |

* **`ranks.amount`**: Bestimmt die Anzahl der berechneten Ränge (z.B. `5` für Top 5, `10` für Top 10).
* **`ranks.slots`**: Legt fest, in welchen Inventar-Slots die Köpfe platziert werden. **Wichtig:** Du musst genau so viele Slots angeben, wie unter `amount` definiert sind. Trennung per Komma.

***

### 3. GUI Einstellungen

Konfiguration des Inventars und der dekorativen Hintergrund-Items.

```yaml
gui:
  name: "&8» &eMoneyToplist"
  length: 3
placeholder:
  enable: true
  # Format ab 1.13+: MATERIALNAME: "Slots"
  GRAY_STAINED_GLASS_PANE: "0-26"
  LIGHT_BLUE_STAINED_GLASS_PANE: "1,7,19,25"
    
  # Format für 1.8 - 1.12: MATERIALNAME;DATA: "Slots"
  # STAINED_GLASS_PANE;7: "0-26"
```

* **`gui.length`**: Die Anzahl der Reihen im Inventar (1 bis 6). Bei `3` hat das Inventar 27 Slots.
* **`gui.placeholder`**: Erlaubt das flexible Setzen von Deko-Items. Du kannst einzelne Slots (`1,7,19`) oder ganze Bereiche (`0-26`) angeben. Das System liest die Einträge von oben nach unten (spätere Einträge überschreiben vorherige auf dem gleichen Slot).

***

### 4. Datenbank-Einstellungen

#### Interne MySQL (`MySQL.`)

Wird ausschließlich genutzt, wenn die `ranking_method` auf `JOIN_EVENT` steht und du die Daten nicht lokal in der Config, sondern in einer Datenbank speichern willst.

```yaml
MySQL:
  enable: false
  host: "localhost"
  port: "3306"
  username: "root"
  database: "db12"
  password: "password239239"
```

#### Externe MySQL (`mode_external_mysql.`)

Wird genutzt, wenn die `ranking_method` auf `EXTERNAL_MYSQL` steht. Erlaubt dem Plugin, die Geld-Werte direkt aus der Tabelle eines Fremd-Plugins (z.B. CMI, Essentials) auszulesen.

```yaml
mode_external_mysql:
  economy_table:
    table_name: "economy"
    column_money: "balance"
    column_uuid: "uuid"
    column_name: "playername" # Leer lassen (""), falls nicht vorhanden

  name_mapping:
    enable: false
    table_name: "players"
    column_uuid: "uuid"
    column_name: "name"
    
  fallback_minecraft_api: true
```

* **`economy_table`**: Definiert die Tabelle und die Spaltennamen, in denen das Geld und die UUID liegen.
* **`name_mapping`**: Falls die Economy-Tabelle keine Spalte für Spielernamen enthält, kann hier eine zweite Tabelle definiert werden, in der die UUID zu einem Namen aufgelöst wird.
* **`fallback_minecraft_api`**: Nutzt die internen Minecraft-Spielerdaten, um den Namen zur UUID zu finden, falls die Datenbank keinen liefert.

***

### 5. Top-Einträge (Daten / Placeholder)

Dieser Bereich wird automatisch vom Plugin generiert, basierend auf der Einstellung `ranks.amount`.

```yaml
top:
  '1':
    name: "%essentials_baltop_player_1%"
    money: "%essentials_baltop_balance_1%"
  '2':
    name: "%essentials_baltop_player_2%"
    money: "%essentials_baltop_balance_2%"
```

* **Im Modus `PLACEHOLDER_API`**: Das Plugin liest diese Platzhalter 1:1 aus und zeigt sie im GUI an. Du kannst sie an das Economy-Plugin deines Servers anpassen.
* **Im Modus `JOIN_EVENT` (ohne MySQL)**: Das Plugin nutzt diesen Bereich als Datenbank und überschreibt die Platzhalter automatisch mit den tatsächlichen Spielernamen und Kontoständen.


---

# 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:

```
GET https://wiki.dyroxplays.de/moneytoplist/konfiguration.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.
