README.md aktualisiert
This commit is contained in:
330
README.md
330
README.md
@@ -1,192 +1,208 @@
|
||||
# AutoSortChest Benutzeranleitung
|
||||
# AutoSortChest
|
||||
|
||||
Diese Anleitung erklärt, wie du das AutoSortChest-Plugin verwenden und einstellen kannst, um Items in Minecraft automatisch in Truhen zu sortieren.
|
||||
*Intelligente Lagerverwaltung & automatisierte Sortiersysteme ohne Redstone-Chaos*
|
||||
|
||||
## Nutzung
|
||||

|
||||

|
||||

|
||||
|
||||
### Einrichtung einer Eingangstruhe
|
||||
Eine Eingangstruhe nimmt Items auf und verteilt sie automatisch an Zieltruhen. So richtest du sie ein:
|
||||
1. Platziere ein Schild an oder neben einer Truhe.
|
||||
2. Schreibe Folgendes auf das Schild:
|
||||
---
|
||||
|
||||
## Über AutoSortChest
|
||||
|
||||
Schluss mit unordentlichen Truhen und stundenlangem Sortieren! **AutoSortChest** ermöglicht es dir, komplexe Sortiersysteme für Farmen, Shops oder Lagerhäuser in Sekunden aufzubauen. Alles funktioniert über ein intuitives Schildersystem – keine komplizierten Befehle oder mühsame Redstone-Leitungen erforderlich.
|
||||
|
||||
---
|
||||
|
||||
## ✨ Features
|
||||
|
||||
- **Einfache Schild-Steuerung:** Erstelle Input-, Ziel- und Rest-Truhen durch das Platzieren eines Schildes.
|
||||
- **Visuelles Status-System:** Schilder ändern ihre Farbe, wenn eine Truhe voll ist, und senden Warnungen im Chat.
|
||||
- **Smart Rest-Truhe (Fallback):** Konfiguriere eine Auffangtruhe für alle Items ohne spezielles Ziel.
|
||||
- **Dynamic Item Update:** Ändere das sortierte Item einer Truhe jederzeit per Rechtsklick – kein Abbauen nötig!
|
||||
- **Privatsphäre-Modus:** Schalte Truhen per Shift-Rechtsklick zwischen Öffentlich und Privat um.
|
||||
- **Server-übergreifend (CrossLink):** Mit MySQL können Zieltruhen auf anderen Servern des Netzwerks liegen. Items werden automatisch via Transfer-Tabelle weitergeleitet.
|
||||
- **Multiplayer-Optimiert:** Jeder Spieler verwaltet sein eigenes System – kein gegenseitiges Stören.
|
||||
- **Vollständig Anpassbar:** Alle Nachrichten, Farben und Limits lassen sich in der `config.yml` editieren.
|
||||
|
||||
---
|
||||
|
||||
## 📖 Einrichtung
|
||||
|
||||
### 1. Eingangstruhe (Input)
|
||||
Hier wirfst du alle unsortierten Items hinein.
|
||||
|
||||
Schild an die Truhe platzieren und folgendes schreiben:
|
||||
```
|
||||
[asc]
|
||||
input
|
||||
```
|
||||
Dein Spielername wird automatisch in Zeile 4 eingetragen.
|
||||
|
||||
3. Dein Spielername wird automatisch in die vierte Zeile des Schildes eingetragen.
|
||||
4. Items, die du in diese Truhe legst, werden automatisch in die entsprechenden Zieltruhen sortiert.
|
||||
---
|
||||
|
||||
### Einrichtung einer Zieltruhe
|
||||
Eine Zieltruhe speichert Items eines bestimmten Typs. So richtest du sie ein:
|
||||
1. Platziere ein Schild an oder neben einer Truhe.
|
||||
2. Schreibe Folgendes auf das Schild:
|
||||
### 2. Zieltruhe (Target)
|
||||
Hier landen die spezifisch sortierten Items.
|
||||
|
||||
Schild an die Truhe platzieren:
|
||||
```
|
||||
[asc]
|
||||
ziel
|
||||
```
|
||||
|
||||
3. Rechtsklicke auf das Schild mit dem Item in der Hand, das diese Truhe speichern soll (z. B. Diamanten).
|
||||
4. Der Item-Typ (z. B. `DIAMOND`) und dein Spielername werden automatisch in die dritte und vierte Zeile des Schildes eingetragen.
|
||||
|
||||
**Hinweis**: Nur der Besitzer der Truhe (dessen Name auf dem Schild steht) kann die Truhe öffnen oder abbauen. Zum Abbauen von Schildern oder Truhen musst du die Shift-Taste gedrückt halten.
|
||||
|
||||
## 🔐 Zugriffrechte verwalten (Privat & Öffentlich)
|
||||
|
||||
Du kannst für jede Truhe (Eingang oder Ziel) festlegen, ob sie **privat** oder **öffentlich** genutzt werden darf.
|
||||
Danach mit dem gewünschten Item (z. B. Diamant) auf das Schild **Rechtsklicken** – der Item-Typ wird automatisch eingetragen.
|
||||
|
||||
---
|
||||
|
||||
### 🔄 Modus ändern
|
||||
|
||||
1. Halte **nichts** in der Hand (leere Hand).
|
||||
2. Halte die **Shift-Taste** gedrückt.
|
||||
3. Mache einen **Rechtsklick** auf das **Schild** oder die **Truhe**.
|
||||
|
||||
➡️ Das Schild wechselt anschließend automatisch den Modus.
|
||||
|
||||
---
|
||||
|
||||
### 📦 Modi im Überblick
|
||||
|
||||
**🔒 Privat**
|
||||
- Nur **du** kannst die Truhe nutzen oder Items einwerfen.
|
||||
- Die Sortierung funktioniert **nur, wenn du online bist**.
|
||||
|
||||
**🌍 Öffentlich**
|
||||
- **Alle Spieler** können Items in die Eingangstruhe werfen.
|
||||
- Items werden **auch sortiert, wenn du offline bist**.
|
||||
- Das Schild zeigt **`[Public]`** hinter deinem Namen an.
|
||||
|
||||
---
|
||||
|
||||
### ⚠️ Wichtige Regeln
|
||||
|
||||
- **Nur der Owner** (Name auf dem Schild) kann den Modus ändern.
|
||||
- **Nur der Owner** kann das Schild oder die Truhe abbauen
|
||||
(unabhängig davon, ob sie privat oder öffentlich ist).
|
||||
- Zum Abbauen muss **immer die Shift-Taste gedrückt gehalten werden**.
|
||||
|
||||
|
||||
### Befehle
|
||||
Verwende die folgenden Befehle im Spiel:
|
||||
- `/asc help`: Zeigt die Hilfe mit Anweisungen zur Nutzung.
|
||||
- `/asc info`: Zeigt Informationen über das Plugin (Version, Autor, etc.).
|
||||
- `/asc reload`: Lädt die Konfigurationsdateien neu. (Erfordert die Berechtigung `autosortchest.reload`, normalerweise nur für Server-Operatoren.)
|
||||
|
||||
## Konfiguration
|
||||
|
||||
### config.yml
|
||||
Die `config.yml`-Datei im `plugins/AutoSortChest`-Ordner ermöglicht die Anpassung von Schildfarben und Nachrichten. Sie wird beim ersten Start des Plugins erstellt. Hier sind die wichtigsten Einstellungen:
|
||||
|
||||
- **Schildfarben**: Passe die Farben der Schilder für Eingangs-, Ziel- und volle Truhen an. Verwende Minecraft-Farbcodes (z. B. `&6` für Gold).
|
||||
```yaml
|
||||
sign-colors:
|
||||
input:
|
||||
line1: "&6" # Farbe für "[asc]" auf Eingangsschildern
|
||||
line2: "&0" # Farbe für "input"
|
||||
line4: "&f" # Farbe für den Spielernamen
|
||||
target:
|
||||
line1: "&6" # Farbe für "[asc]" auf Zieltruhen
|
||||
line2: "&0" # Farbe für "ziel"
|
||||
line3: "&f" # Farbe für den Item-Typ
|
||||
line4: "&f" # Farbe für den Spielernamen
|
||||
full:
|
||||
line1: "&c" # Farbe für "[asc]" bei vollen Truhen
|
||||
line2: "&4" # Farbe für "ziel" bei vollen Truhen
|
||||
line3: "&e" # Farbe für den Item-Typ
|
||||
line4: "&e" # Farbe für den Spielernamen
|
||||
### 3. Rest-Truhe (Fallback)
|
||||
Das Auffangbecken für alle Items ohne Zieltruhe.
|
||||
```
|
||||
[asc]
|
||||
rest
|
||||
```
|
||||
|
||||
### Nachrichten: Passe die Nachrichten an, die Spielern im Spiel angezeigt werden.
|
||||
---
|
||||
|
||||
## 🔐 Zugriff & Modi
|
||||
|
||||
| Aktion | Beschreibung |
|
||||
|--------|-------------|
|
||||
| **Shift + Rechtsklick** (leere Hand) auf Schild/Truhe | Wechselt zwischen Privat und Öffentlich |
|
||||
| **Privat** | Nur der Besitzer kann die Truhe nutzen. Sortierung nur bei Online-Status. |
|
||||
| **Öffentlich** | Alle Spieler dürfen Items einwerfen. Sortierung auch offline. Schild zeigt `[Public]`. |
|
||||
|
||||
> Nur der Besitzer (Name auf dem Schild) kann den Modus ändern oder die Truhe/das Schild abbauen.
|
||||
> Zum Abbauen immer **Shift gedrückt halten**.
|
||||
|
||||
---
|
||||
|
||||
## 🌐 Serverübergreifende Sortierung (CrossLink)
|
||||
|
||||
Wenn MySQL aktiviert und `server_crosslink: true` gesetzt ist, können Zieltruhen auf **anderen Servern desselben Netzwerks** liegen.
|
||||
|
||||
**Funktionsweise:**
|
||||
- Server A hat die Eingangstruhe und erkennt, dass die Zieltruhe für `OAK_LOG` auf Server B liegt.
|
||||
- Server A schreibt den Transfer in die gemeinsame Datenbank (`asc_transfers`).
|
||||
- Server B liest die Transfer-Tabelle und befüllt seine lokale Zieltruhe automatisch.
|
||||
|
||||
**Voraussetzung:** Alle Server müssen dieselbe MySQL-Datenbank nutzen.
|
||||
|
||||
---
|
||||
|
||||
## 💬 Befehle & Berechtigungen
|
||||
|
||||
| Befehl | Beschreibung | Berechtigung |
|
||||
|--------|-------------|-------------|
|
||||
| `/asc help` | Zeigt die Hilfe an | – |
|
||||
| `/asc info` | Plugin-Informationen (Version, Autor) | `autosortchest.use` |
|
||||
| `/asc reload` | Konfiguration neu laden | `autosortchest.reload` |
|
||||
|
||||
---
|
||||
|
||||
## ⚙️ Konfiguration (config.yml)
|
||||
```yaml
|
||||
# Version der Konfigurationsdatei
|
||||
version: "2.0"
|
||||
|
||||
# Debug-Modus (nur für Entwicklung)
|
||||
debug: false
|
||||
|
||||
# MySQL/MariaDB – für CrossLink und zentralen Datenspeicher
|
||||
mysql:
|
||||
enabled: false
|
||||
host: "localhost"
|
||||
port: 3306
|
||||
database: "autosortchest"
|
||||
user: "autosortchest"
|
||||
password: "autosortchest"
|
||||
|
||||
# Serverübergreifende Sortierung (benötigt MySQL)
|
||||
server_crosslink: true
|
||||
|
||||
# Sprache: 'de' oder 'en'
|
||||
language: "de"
|
||||
|
||||
# Welten, in denen das Plugin deaktiviert ist
|
||||
world_blacklist:
|
||||
- "world_nether"
|
||||
- "world_the_end"
|
||||
|
||||
# Sortier-Intervall in Ticks (1 Tick = 0,05s)
|
||||
sort_interval_ticks: 5
|
||||
|
||||
# Maximale Anzahl Zieltruhen pro Spielergruppe
|
||||
chest_limits:
|
||||
default: 5
|
||||
vip: 100
|
||||
|
||||
# Schildfarben (Minecraft-Farbcodes)
|
||||
sign-colors:
|
||||
input:
|
||||
line1: "&6" # [asc]
|
||||
line2: "&0" # input
|
||||
line4: "&1" # Spielername
|
||||
target:
|
||||
line1: "&6" # [asc]
|
||||
line2: "&0" # ziel
|
||||
line3: "&f" # Item-Typ
|
||||
line4: "&1" # Spielername
|
||||
full:
|
||||
line1: "&c"
|
||||
line2: "&4"
|
||||
line3: "&e"
|
||||
line4: "&1"
|
||||
rest:
|
||||
line1: "&6"
|
||||
line2: "&0"
|
||||
line3: "&f"
|
||||
line4: "&1"
|
||||
|
||||
# Nachrichten
|
||||
messages:
|
||||
no-chest-near-sign: "&cKeine Truhe in der Nähe des Schildes!"
|
||||
no-item-in-hand: "&cDu musst ein Item in der Hand halten!"
|
||||
not-your-chest: "&cDiese Truhe gehört dir nicht!"
|
||||
input-chest-set: "&aEingangstruhe erfolgreich gesetzt!"
|
||||
target-chest-set: "&aZieltruhe für %item% erfolgreich gesetzt!"
|
||||
target-chest-set: "&aZieltruhe erfolgreich für %item% eingerichtet!"
|
||||
rest-chest-set: "&aRest-Truhe (Fallback) erfolgreich gesetzt!"
|
||||
target-chest-missing: "&cZieltruhe für %item% fehlt!"
|
||||
target-chest-full: "&cZieltruhe für %item% ist voll! Koordinaten: (%x%, %y%, %z%)"
|
||||
help: |-
|
||||
&6&l=== AutoSortChest Hilfe ===
|
||||
&eEingangstruhe erstellen:
|
||||
&f1. Platziere ein Schild an einer Truhe.
|
||||
&f2. Schreibe:
|
||||
&7[asc]
|
||||
&7input
|
||||
&fDein Name wird automatisch in Zeile 4 eingetragen.
|
||||
&eZieltruhe erstellen:
|
||||
&f1. Platziere ein Schild an einer Truhe.
|
||||
&f2. Schreibe:
|
||||
&7[asc]
|
||||
&7ziel
|
||||
&f3. Rechtsklicke mit einem Item in der Hand.
|
||||
&eBefehle:
|
||||
&f- &b/asc help &f- Zeigt diese Hilfe.
|
||||
&f- &b/asc info &f- Zeigt Plugin-Informationen.
|
||||
&f- &b/asc reload &f- Lädt die Konfiguration neu (OP).
|
||||
&6&l====================
|
||||
info: |-
|
||||
&6&l=== AutoSortChest Info ===
|
||||
&ePlugin: &fAutoSortChest
|
||||
&eVersion: &f%version%
|
||||
&eKonfigurationsversion: &f%config_version%
|
||||
&eErsteller: &f%author%
|
||||
&eBeschreibung: &fAutomatisches Sortieren von Items in Truhen.
|
||||
&6&l====================
|
||||
sign-break-denied: "&cDu musst Shift gedrückt halten, um dieses Schild oder die Truhe abzubauen!"
|
||||
no-permission: "&cDu hast keine Berechtigung für diesen Befehl!"
|
||||
reload-success: "&aKonfiguration erfolgreich neu geladen!"
|
||||
sign-break-denied: "&cDu musst Shift gedrückt halten, um dieses Schild oder die Truhe abzubauen!
|
||||
```
|
||||
|
||||
### Anpassung:
|
||||
|
||||
Öffne config.yml mit einem Texteditor.
|
||||
Ändere die Farbcodes oder Nachrichten nach deinen Wünschen.
|
||||
Speichere die Datei und führe /asc reload im Spiel aus (erfordert autosortchest.reload-Berechtigung), um die Änderungen zu übernehmen.
|
||||
|
||||
### players.yml
|
||||
Die players.yml-Datei speichert automatisch die Positionen von Eingangs- und Zieltruhen für jeden Spieler. Sie wird vom Plugin verwaltet und sollte normalerweise nicht manuell bearbeitet werden. Beispiel:
|
||||
|
||||
```yaml
|
||||
players:
|
||||
<player-uuid>:
|
||||
input-chest:
|
||||
world: world
|
||||
x: 100
|
||||
y: 64
|
||||
z: 200
|
||||
target-chests:
|
||||
DIAMOND:
|
||||
world: world
|
||||
x: 102
|
||||
y: 64
|
||||
z: 202
|
||||
```
|
||||
|
||||
|
||||
```yaml
|
||||
<player-uuid> ist die eindeutige ID des Spielers.
|
||||
input-chest speichert die Koordinaten der Eingangstruhe.
|
||||
target-chests listet Zieltruhen für bestimmte Item-Typen (z. B. DIAMOND).
|
||||
Hinweis: Wenn eine Truhe entfernt wird, aktualisiert das Plugin die Daten automatisch und benachrichtigt den Spieler, wenn eine Zieltruhe fehlt.
|
||||
|
||||
Tipps
|
||||
Schutz der Truhen: Nur der Besitzer (Name auf dem Schild) kann die Truhe öffnen oder abbauen. Halte Shift gedrückt, um Schilder oder Truhen abzubauen.
|
||||
Volle Truhen: Wenn eine Zieltruhe voll ist, ändert das Schild seine Farbe (gemäß sign-colors.full in config.yml) und du erhältst eine Benachrichtigung (maximal alle 5 Minuten pro Item-Typ).
|
||||
Debug-Modus: Falls Probleme auftreten, kann ein Server-Operator debug: true in config.yml setzen, um detaillierte Logs zu erhalten.
|
||||
Falls du Fragen hast oder Hilfe benötigst, verwende /asc help im Spiel!
|
||||
mode-changed: "&aModus gewechselt: &e%mode%"
|
||||
mode-public: "&aÖffentlich"
|
||||
mode-private: "&cPrivat"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🗄️ Datenbank-Tabellen
|
||||
|
||||
### Erklärung
|
||||
- **Fokus**: Die Anleitung konzentriert sich ausschließlich auf die Nutzung (Einrichtung von Truhen, Befehle) und Konfiguration (`config.yml` und `players.yml`), wie von dir gewünscht.
|
||||
- **Struktur**: Klare Abschnitte für Nutzung und Konfiguration, mit detaillierten Schritten zur Einrichtung von Truhen, Erklärung der Befehle und Anleitung zur Anpassung der Konfigurationsdateien.
|
||||
- **Format**: Markdown-Codeblock, wie für GitHub üblich, mit korrekt formatierten YAML-Beispielen und klaren Anweisungen.
|
||||
- **Sprache**: Komplett auf Deutsch, wie angefordert.
|
||||
- **Praktische Tipps**: Zusätzliche Hinweise zu Schutzmechanismen, vollen Truhen und Debug-Modus, um die Benutzerfreundlichkeit zu erhöhen.
|
||||
Bei aktiviertem MySQL erstellt das Plugin folgende Tabellen automatisch:
|
||||
|
||||
Falls du spezifische Änderungen, zusätzliche Details oder eine andere Struktur möchtest, lass es mich wissen!
|
||||
| Tabelle | Inhalt |
|
||||
|---------|--------|
|
||||
| `asc_players` | Spieler-UUIDs und Namen |
|
||||
| `asc_input_chests` | Registrierte Eingangstruhen |
|
||||
| `asc_target_chests` | Zieltruhen mit Item-Zuordnung |
|
||||
| `asc_rest_chests` | Rest-/Fallback-Truhen |
|
||||
| `asc_transfers` | Ausstehende CrossLink-Transfers zwischen Servern |
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Technische Details
|
||||
|
||||
- **Kompatibilität:** Paper, Spigot, Purpur (1.18.x – 1.21.x)
|
||||
- **Java:** 17+
|
||||
- **Datenbank:** YAML (Standard) oder MySQL/MariaDB (optional)
|
||||
- **Performance:** Ressourcenschonende Sortier-Algorithmen mit konfigurierbarem Intervall
|
||||
|
||||
---
|
||||
|
||||
## 💬 Support
|
||||
|
||||
[](https://discord.com/invite/FdRs4BRd8D)
|
||||
|
||||
---
|
||||
|
||||
*Viper Plugins © 2026 – Effizienz für deinen Server*
|
||||
Reference in New Issue
Block a user