diff --git a/README.md b/README.md index ede3a45..e99b727 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ![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 (Spigot/Paper 1.18.x–1.21.x, Java 17+). Es bietet flexible Speicherung, automatische Backups & Migration, Export/Import, Statistiken, dynamische GUI, Kategorie- und Prioritäten-System, Bewertungs- und Kommentar-System, **FAQ-System mit Kategorien**, Discord-Webhook und volle BungeeCord-Unterstützung. +**TicketSystem** ist das flexible, moderne Support- und Feedback-Plugin für Minecraft-Server (Spigot/Paper 1.18.x–1.21.x, Java 17+). Es bietet flexible Speicherung, automatische Backups & Migration, Export/Import, Statistiken, dynamische GUI, Kategorie- und Prioritäten-System, Bewertungs- und Kommentar-System, **FAQ-System mit Kategorien**, Discord-Webhook, **PlaceholderAPI-Integration** und volle BungeeCord-Unterstützung. --- @@ -24,6 +24,7 @@ - Discord-Webhook mit Embeds & Rollen-Ping - Blacklist für Spieler - **FAQ-System mit Kategorien** – eigene GUI mit Custom-Skull-Items, optionaler Kategorie-Auswahl-Screen, vollständige In-Game-Verwaltung; wahlweise `faqs.yml` oder MySQL-Speicherung, Migration per Befehl +- **PlaceholderAPI-Integration** – Ticket-Statistiken als PAPI-Placeholder für Scoreboards, Chat-Plugins u.v.m. - **Performance-Caching** – TTL-basierter In-Memory-Cache reduziert Datenbankabfragen spürbar - **Backup-System** – automatische JSON-Backups per `/ticket backup`, vor Migrationen, im `backups/`-Ordner - **HTTPS/TLS-Unterstützung** – optionaler eingebetteter HTTPS-Server via JKS-Keystore (TLS 1.2+) @@ -42,7 +43,8 @@ 1. TicketSystem.jar in den plugins-Ordner legen und Server starten 2. `config.yml` anpassen (Speicherorte, Nachrichten, Limits, Farben, MySQL-Daten etc.) 3. Kopf der FAQ-Kategorie-Items optional über `gui-settings.faq.category-head-item` in der `config.yml` konfigurieren -4. `/ticket`-Befehle nutzen +4. Optional: PlaceholderAPI installieren – Placeholder werden automatisch registriert +5. `/ticket`-Befehle nutzen --- @@ -107,6 +109,40 @@ --- +## PlaceholderAPI-Integration + +TicketSystem registriert automatisch Placeholder bei **PlaceholderAPI** (PAPI), sobald dieses Plugin installiert ist – kein Eintrag in der `config.yml` nötig. Prefix: `ticketsystem`. + +### Verfügbare Placeholder + +| Placeholder | Für wen | Beschreibung | +|---|---|---| +| `%ticketsystem_my_open%` | Spieler | Eigene aktive Tickets (Status: OPEN + CLAIMED + FORWARDED) | +| `%ticketsystem_admin_open%` | Supporter, Admin | Alle offenen Tickets (Status: OPEN) | +| `%ticketsystem_admin_claimed%` | Admin | Alle Tickets in Bearbeitung (Status: CLAIMED) | +| `%ticketsystem_admin_rating_good%` | Admin | Positive Bewertungen gesamt | +| `%ticketsystem_admin_rating_bad%` | Admin | Negative Bewertungen gesamt | +| `%ticketsystem_admin_rating_total%` | Admin | Alle Bewertungen gesamt | +| `%ticketsystem_admin_rating_percent%` | Admin | Prozentsatz positiver Bewertungen (oder `-` wenn keine) | + +### Verwendungsbeispiele + +``` +# Scoreboard-Zeile für Spieler +Meine Tickets: %ticketsystem_my_open% + +# Scoreboard-Zeile für Supporter +Offen: %ticketsystem_admin_open% + +# Scoreboard-Zeilen für Admins +Offen: %ticketsystem_admin_open% | Aktiv: %ticketsystem_admin_claimed% +Bewertung: %ticketsystem_admin_rating_good% / %ticketsystem_admin_rating_bad% (%ticketsystem_admin_rating_percent%%) +``` + +> Die Placeholder funktionieren in jedem PAPI-kompatiblen Plugin (Scoreboards, Chat-Plugins, HolographicDisplays usw.). + +--- + ## Mehrsprachigkeit TicketSystem unterstützt drei Sprachmodi, die über einen einzigen Schlüssel in der `config.yml` gesteuert werden: @@ -300,7 +336,9 @@ web-panel: **Self-Signed Zertifikat erstellen (für Tests):** ``` -keytool -genkeypair -alias ticketsystem -keyalg RSA -keysize 2048 -validity 365 -keystore plugins/TicketSystem/keystore.jks -storepass changeit +keytool -genkeypair -alias ticketsystem -keyalg RSA -keysize 2048 \ + -validity 365 -keystore plugins/TicketSystem/keystore.jks \ + -storepass changeit ``` Für Produktion wird ein Let's Encrypt-Zertifikat oder ein Reverse-Proxy (Nginx/Apache) empfohlen. Wenn der Keystore fehlt, startet der Server automatisch ohne TLS. @@ -398,6 +436,7 @@ TicketSystem bietet volle Unterstützung für BungeeCord-Netzwerke: | Kategorie-System | ✔️ | ✖️ | ✖️ | | Prioritäten-System | ✔️ | ✖️ | ✖️ | | FAQ-System mit Kategorien | ✔️ | ✖️ | ✖️ | +| PlaceholderAPI-Integration | ✔️ | ✖️ | ✖️ | | Performance-Caching | ✔️ | ✖️ | ✖️ | | Offline-Benachrichtigungen | ✔️ | ✖️ | ✖️ | | Discord-Webhook | ✔️ | ✖️ | ✖️ | @@ -449,8 +488,20 @@ Legende: ✔️ Vollständige Unterstützung · ⚠️ Eingeschränkt · ✖️ **Wie lange werden Tickets gecacht?** > Standardmäßig 60 Sekunden. Über `cache-ttl-seconds` in der `config.yml` anpassbar. Der Cache wird bei Änderungen sofort invalidiert. +**Brauche ich PlaceholderAPI zwingend?** +> Nein. PAPI ist optional – das Plugin erkennt automatisch ob es installiert ist und registriert die Placeholder nur dann. Ohne PAPI läuft alles wie gewohnt. + --- +## Support, Community & Motivation + +Du hast Fragen, brauchst Hilfe oder möchtest Feedback geben? + +- [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! + **Dein Feedback zählt:** Wenn TicketSystem deinen Server bereichert hat, freuen wir uns über eine 5-Sterne Bewertung auf SpigotMC! Jede Rückmeldung hilft, das Plugin weiter zu verbessern und die Community zu stärken. \ No newline at end of file