Files
TicketSystem/README.md
2026-02-20 11:29:55 +00:00

133 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# TicketSystem
![Version](https://img.shields.io/badge/Minecraft-1.18.x--1.21.x-green?style=for-the-badge) ![Java](https://img.shields.io/badge/Java-17+-orange?style=for-the-badge) ![Type](https://img.shields.io/badge/Type-Support-blue?style=for-the-badge)
**TicketSystem** ist das flexible, moderne Support- und Feedback-Plugin für Minecraft-Server. Es bietet flexible Speicherung (MySQL oder Datei), automatische Archivierung, Migration, Export/Import, Statistiken, vollständige Validierung, Debug-Modus, eine übersichtliche config.yml mit Versionsprüfung und eine dynamische GUI.
## Features
- **MySQL oder Datei-Speicherung** YAML/JSON oder MySQL/MariaDB, jederzeit umschaltbar, Migration & Backup inklusive
- **Automatische Backups & Migration** Sicheres Wechseln zwischen Speicherarten, Datenverlust ausgeschlossen
- **Export/Import** Tickets einfach zwischen Servern oder Instanzen übertragen
- **Statistiken & Archivierung** Übersichtliche Auswertung, automatische Archivierung nach Zeitplan, manuelles Archivieren möglich
- **Konfigurierbare Speicherpfade** Daten- und Archivdateien frei wählbar, auch absolute Pfade
- **Vollständige Validierung** Fehlerhafte Tickets werden beim Laden erkannt, gemeldet und übersprungen
- **Bessere Fehlerausgaben** Alle Fehler erscheinen im Log und für Admins im Chat, inkl. Validierungs- und Speicherfehler
- **Debug-Modus & Versionsprüfung** Für Entwickler und Admins, erkennt veraltete config.yml automatisch
- **Komplett anpassbar** Nachrichten, Farben, Limits, Speicherpfade, Archiv-Intervall, Cooldowns, Rechte
- **Unit-Tests** Getestete Speicher-Logik für maximale Zuverlässigkeit
- **Dynamische GUI** Die Ticket-GUI passt sich automatisch der Ticketanzahl an (bis zu 54 Tickets pro Seite)
- **Seiten-System** Bei sehr vielen Tickets wird automatisch geblättert
- **Performance** Optimiert für große Server, alle Operationen laufen asynchron und ressourcenschonend
- **Support & Erweiterbarkeit** Sauberer Code, viele Hooks für eigene Erweiterungen
---
## Installation & Setup
1. **config.yml** anpassen (Speicherorte, Nachrichten, Limits, Farben, MySQL-Daten etc.)
2. **TicketSystem.jar** in den plugins-Ordner legen und Server starten
3. **/ticket**-Befehle nutzen (siehe unten)
---
## Beispiel-Konfiguration
```yaml
config-version: 1
debug: false
storage:
type: "file" # "file" oder "mysql"
data-file: "data.yml"
archive-file: "archive.yml"
mysql:
host: "localhost"
port: 3306
database: "tickets"
user: "root"
password: "password"
useSSL: false
auto-archive-interval-hours: 24
messages:
prefix: "&7[&eTicket&7]"
ticket-created: "&aDein Ticket wurde erstellt!"
error: "&cEin Fehler ist aufgetreten!"
```
---
## Befehle & Rechte
### Spieler-Befehle
```
/ticket - Ticket erstellen, verwalten, Status abfragen
/ticket create <Nachricht> - Neues Ticket erstellen
/ticket list - Zeigt alle Tickets des Spielers
/ticket close <ID> - Ticket schließen
```
### Admin-Befehle
```
/ticket reload - Plugin neu laden
/ticket migrate - Speicherart wechseln (Migration)
/ticket export/import - Tickets exportieren/importieren
/ticket stats - Statistiken anzeigen
/ticket archive - Tickets archivieren
/ticket claim <ID> - Ticket übernehmen
/ticket forward <ID> <Spieler> - Ticket weiterleiten
/ticket close <ID> - Ticket schließen
```
**Rechte:**
- `ticket.admin` Zugriff auf alle Admin- und Management-Funktionen
- `ticket.use` (Standard) Ticket erstellen und eigene Tickets verwalten
---
## FAQ
**Kann ich zwischen MySQL und Datei-Speicherung wechseln?**
> Ja! Das Plugin migriert alle Daten automatisch und sicher.
**Wie viele Tickets passen in die GUI?**
> Bis zu 54 pro Seite, bei mehr Tickets wird automatisch geblättert.
**Wie kann ich Nachrichten und Limits anpassen?**
> Alle Texte, Farben und Limits findest du in der `config.yml`.
**Wie aktiviere ich den Debug-Modus?**
> Setze `debug: true` in der `config.yml`.
**Wie kann ich Tickets exportieren/importieren?**
> Mit `/ticket export` und `/ticket import` ideal für Server-Umzüge.
---
## Vergleich mit anderen Plugins
| Feature | TicketSystem | SimpleTickets | AdvancedTickets |
|------------------------|:------------:|:-------------:|:---------------:|
| Speicher-Migration | ✔️ | ⚠️ | ✖️ |
| Automatische Backups | ✔️ | ⚠️ | ✖️ |
| GUI | ✔️ | ⚠️ | ✖️ |
| Archivierung | ✔️ | ⚠️ | ✖️ |
| Update-Checker | ✔️ | ✖️ | ✖️ |
---
## Support & Community
- [Discord Support](https://discord.com/invite/FdRs4BRd8D)
- [Git Issues](https://git.viper.ipv64.net/M_Viper/TicketSystem/issues)
Wir antworten in der Regel innerhalb von 24 Stunden!
---
## ⭐ Unterstütze das Projekt
Wenn TicketSystem deinen Server bereichert hat, freuen wir uns über eine **5-Sterne Bewertung auf spigotmc**!
Dein Feedback hilft uns, das Plugin weiter zu verbessern.