TicketSystem
Das flexible, moderne Support- und Feedback-System für Minecraft-Server
⭐ Für Support, Bug-Reports & Feedback | Zero-Lag | Production Ready ⭐
❯ Über TicketSystem
TicketSystem ist die Komplettlösung für Support, Bug-Reports und Feedback auf deinem Server.
Spieler erstellen Tickets direkt im Spiel, Admins verwalten alles komfortabel per GUI oder Befehl. Das Plugin ist für kleine und große Server optimiert, vollständig konfigurierbar und bietet viele Profi-Features für Support-Teams – inklusive einem vollständigen FAQ-System, Performance-Caching und einer sauberen Konsole ohne unnötigen Spam.
Was macht TicketSystem besonders?
- 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
- Rollenbasiertes Archiv-System – Nur Spieler mit der Archiv-Permission können geschlossene Tickets sehen, öffnen und permanent löschen
- 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
- Dynamische GUI – Die Ticket-GUI passt sich automatisch der Ticketanzahl an (bis zu 45 Tickets pro Seite)
- Seiten-System – Bei sehr vielen Tickets wird automatisch geblättert
- Kategorie- & Prioritäten-System – Frei konfigurierbar, mit Aliases und Material-Auswahl
- Bewertungs- & Kommentar-System – Spieler und Support können Tickets bewerten und kommentieren
- Offline-Benachrichtigungen – Verpasste Ticket-Events werden beim Login angezeigt
- Discord-Webhook – Benachrichtigungen mit Embeds, Rollen-Ping und Server-Namen
- BungeeCord-Unterstützung – Tickets, Teleports und Benachrichtigungen serverübergreifend
- FAQ-System (NEU) – Eigene GUI mit Custom-Skull-Items, eigene faqs.yml, vollständige In-Game-Verwaltung durch Admins
- Performance-Caching (NEU) – TTL-basierter In-Memory-Cache reduziert Datenbankabfragen spürbar
- Saubere Konsole (NEU) – Minimale Start-Logs, kein unnötiger Spam, Debug-Modus separat steuerbar
- Support & Erweiterbarkeit – Sauberer Code, viele Hooks für eigene Erweiterungen
❯ ✨ Features im Detail
"Alle Features"
- MySQL oder Datei-Speicherung: YAML/JSON oder MySQL/MariaDB, jederzeit umschaltbar – Migration und 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
- Rollenbasiertes Archiv-System: Nur Spieler mit ticket.archive können das Archiv sehen, Tickets darin öffnen und permanent löschen – unabhängig von ticket.admin oder OP-Status
- 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
- Dynamische GUI: Die Ticket-GUI passt sich automatisch der Ticketanzahl an (bis zu 45 Tickets pro Seite)
- Seiten-System: Bei sehr vielen Tickets wird automatisch geblättert
- Kategorie- & Prioritäten-System: Frei konfigurierbar, mit Aliases und Material-Auswahl
- Bewertungs- & Kommentar-System: Spieler und Support können Tickets bewerten und kommentieren
- Offline-Benachrichtigungen: Verpasste Ticket-Events werden beim Login angezeigt
- Discord-Webhook: Benachrichtigungen mit Embeds, Rollen-Ping und Server-Namen
- BungeeCord-Unterstützung: Tickets, Teleports und Benachrichtigungen serverübergreifend
- FAQ-System: Eigene faqs.yml, Custom-Skull-GUI, Chat-gesteuerte Admin-Eingabe, Spieler-Lesemodus und Admin-Verwaltungsmodus in einer GUI
- Performance-Caching: TTL-basierter In-Memory-Cache für häufig abgerufene Tickets – konfigurierbar, thread-sicher, automatische Invalidierung bei Änderungen
- Saubere Konsole: Minimale Start-Logs, Netzwerkfehler beim Update-Check werden still ignoriert (nur Debug-Modus loggt Details)
- Support & Erweiterbarkeit: Sauberer Code, viele Hooks für eigene Erweiterungen
❯ ⚙️ Installation & Setup
- Minecraft Server: Paper/Spigot 1.18.x–1.21.x
- Java Version: Java 17 oder höher
- Optional: MySQL/MariaDB (für Datenbankbetrieb)
- Lade die TicketSystem.jar herunter
- Verschiebe sie in den
/pluginsOrdner deines Servers
- Starte den Server neu (kein reload!)
- Die Konfigurationsdateien werden automatisch generiert – inkl.
faqs.ymlmit Beispiel-FAQs
- Öffne die
config.ymlimplugins/TicketSystem/Ordner
- Passe Speicherpfade, Nachrichten, Limits und Farben an
- Aktiviere MySQL falls gewünscht und trage Zugangsdaten ein
- Cache-Lebenszeit optional über
cache-ttl-secondsanpassen (Standard: 60 Sek.)
- Nutze
/ticket reloadum Änderungen zu laden
- FAQs in-game per
/ticket faq addanlegen oder direkt in derfaqs.ymlbearbeiten
- Exportiere/Importiere Tickets zwischen Servern
- Nutze die Statistik- und Archivierungsfunktionen
❯ Beispiel-Konfiguration
"Beispiel: config.yml"
yaml
# TicketSystem - Hauptkonfiguration
config-version: 1
debug: false
cache-ttl-seconds: 60 # Lebenszeit gecachter Tickets in Sekunden
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 & Permissions
/ticket - Hilfe & Übersicht
/ticket create <Nachricht> - Neues Ticket erstellen
/ticket list - Eigene Tickets in der GUI anzeigen
/ticket comment <ID> <Nachricht> - Kommentar hinzufügen
/ticket rate <ID> <good|bad> - Support bewerten
/ticket faq - FAQ-GUI öffnen (häufige Fragen)
/ticket faq list - FAQs im Chat auflisten
/ticket reload - Plugin neu laden (inkl. FAQs & Cache leeren)
/ticket migrate - Speicherart wechseln (Migration)
/ticket export/import - Tickets exportieren/importieren
/ticket stats - Statistiken + Cache-Status anzeigen
/ticket archive - Tickets archivieren
/ticket claim <ID> - Ticket übernehmen
/ticket forward <ID> <Spieler> - Ticket weiterleiten
/ticket close <ID> - Ticket schließen
/ticket setpriority <ID> <low|normal|high|urgent> - Priorität ändern
/ticket blacklist <add|remove|list> [Spieler] [Grund] - Blacklist verwalten
/ticket teleport <ID> - Teleport zu Ticket (BungeeCord)
/ticket faq add <Frage> | <Antwort> - Neues FAQ hinzufügen
/ticket faq edit <ID> <Frage> | <Antwort> - FAQ bearbeiten
/ticket faq delete <ID> - FAQ löschen
/ticket faq reload - FAQs neu laden
ticket.create - Ticket erstellen (Standard: alle Spieler)
ticket.support - Tickets einsehen, claimen und schließen (Standard: false)
ticket.archive - Ticket-Archiv öffnen, einsehen & permanent löschen (Standard: false)
ticket.admin - Voller Zugriff inkl. FAQ-Verwaltung, Weiterleitung & Reload (Standard: OP)
Das Archiv-Recht muss in LuckPerms o.ä. explizit zugewiesen werden:
/lp user <Spielername> permission set ticket.archive true
❯ Mehrsprachigkeit
"Sprachmodi & Platzhalter"
TicketSystem unterstützt drei Sprachmodi über einen einzigen Schlüssel in der
config.yml:yaml
language: de # Deutsch – deutsche Texte & deutsche Befehlsnamen
language: en # Englisch – englische Texte & englische Befehlsnamen
language: both # Beides – deutsche Texte & beide Befehlsnamen gleichzeitig
⚠ Hinweis:
command-language existiert nicht mehr – alles läuft über language.Befehlsnamen je Sprachmodus:
| Befehl | language: de | language: en | language: both |
|---|---|---|---|
| create | /ticket erstellen | /ticket create | /ticket create (erstellen) |
| list | /ticket liste | /ticket list | /ticket list (liste) |
| comment | /ticket kommentar | /ticket comment | /ticket comment (kommentar) |
| rate | /ticket bewerten | /ticket rate | /ticket rate (bewerten) |
| claim | /ticket übernehmen | /ticket claim | /ticket claim (übernehmen) |
| close | /ticket schließen | /ticket close | /ticket close (schließen) |
| forward | /ticket weiterleiten | /ticket forward | /ticket forward (weiterleiten) |
| reload | /ticket neuladen | /ticket reload | /ticket reload (neuladen) |
| stats | /ticket statistik | /ticket stats | /ticket stats (statistik) |
| archive | /ticket archivieren | /ticket archive | /ticket archive (archivieren) |
| migrate | /ticket migrieren | /ticket migrate | /ticket migrate (migrieren) |
| export | /ticket exportieren | /ticket export | /ticket export (exportieren) |
| import | /ticket importieren | /ticket import | /ticket import (importieren) |
| blacklist | /ticket sperrliste | /ticket blacklist | /ticket blacklist (sperrliste) |
| setpriority | /ticket priorität | /ticket setpriority | /ticket setpriority (priorität) |
| faq | /ticket faq | /ticket faq | /ticket faq |
| top | /ticket top | /ticket top | /ticket top |
{cmd_X}-Platzhalter in den Sprachdateien:
Alle Texte in
lang_de.yml / lang_en.yml verwenden Platzhalter statt fester Befehlsnamen. Der LanguageManager ersetzt diese automatisch anhand des aktiven Modus.| Platzhalter | language: de | language: en |
|---|---|---|
| {cmd_create} | /ticket erstellen | /ticket create |
| {cmd_list} | /ticket liste | /ticket list |
| {cmd_comment} | /ticket kommentar | /ticket comment |
| {cmd_rate} | /ticket bewerten | /ticket rate |
| {cmd_claim} | /ticket übernehmen | /ticket claim |
| {cmd_close} | /ticket schließen | /ticket close |
| {cmd_forward} | /ticket weiterleiten | /ticket forward |
| {cmd_reload} | /ticket neuladen | /ticket reload |
| {cmd_stats} | /ticket statistik | /ticket stats |
| {cmd_archive} | /ticket archivieren | /ticket archive |
| {cmd_migrate} | /ticket migrieren | /ticket migrate |
| {cmd_export} | /ticket exportieren | /ticket export |
| {cmd_import} | /ticket importieren | /ticket import |
| {cmd_blacklist} | /ticket sperrliste | /ticket blacklist |
| {cmd_setpriority} | /ticket priorität | /ticket setpriority |
| {cmd_faq} | /ticket faq | /ticket faq |
| {cmd_top} | /ticket top | /ticket top |
Beispiel in der Sprachdatei:
yaml
help:
create: "&e{cmd_create} [Kategorie] <Text> &7– Neues Ticket erstellen"
# language: de → /ticket erstellen [Kategorie] <Text>
# language: en → /ticket create [Kategorie] <Text>
GUI-Sprachanpassung:
Seit dieser Version sind auch alle GUI-Texte vollständig sprachabhängig – Inventar-Titel, Item-Lore-Labels und Action-Buttons werden aus
gui.item.* in der aktiven Sprachdatei geladen. Nach /ticket reload wechselt die gesamte Oberfläche sofort.❯ FAQ-System
"Details & Beispiele"
Das FAQ-System erlaubt es Admins, häufige Fragen und Antworten direkt im Spiel zu pflegen. Alle Daten werden in einer eigenen faqs.yml gespeichert – unabhängig von Tickets und Config.
Für Spieler:
/ticket faqöffnet eine GUI mit Custom-Skull-Items – für jeden FAQ-Eintrag ein eigener Kopf mit individueller Textur
- Klick auf einen Eintrag zeigt die vollständige Antwort im Chat
/ticket faq listlistet alle FAQs direkt im Chat auf
Für Admins (ticket.admin):
- Dieselbe GUI öffnet sich im Verwaltungsmodus: Klick → Aktions-GUI mit Bearbeiten & Löschen
- "Neues FAQ hinzufügen"-Button in der GUI – geführte Chat-Eingabe (erst Frage, dann Antwort)
- Alternativ per Befehl: Frage und Antwort mit
|trennen
Beispiel-Befehle:
/ticket faq add Wie melde ich einen Bug? | Nutze /ticket create bug <Beschreibung>.
/ticket faq edit 1 Neue Frage? | Neue Antwort hier.
/ticket faq delete 3
/ticket faq reload
faqs.yml Format:
yaml
faqs:
1:
question: "Wie erstelle ich ein Ticket?"
answer: "Nutze /ticket create [Kategorie] [Beschreibung]."
2:
question: "Wie lange dauert die Bearbeitung?"
answer: "Unser Team bearbeitet Tickets so schnell wie möglich."
Beim ersten Start werden automatisch vier Beispiel-FAQs erstellt.
❯ Performance-Caching
"Details"
TicketSystem hält häufig abgerufene Tickets in einem TTL-basierten In-Memory-Cache vor. Das reduziert die Datenbankbelastung bei GUI-Zugriffen, Kommentaren und Bewertungen deutlich.
- Standard-Lebenszeit: 60 Sekunden (konfigurierbar:
cache-ttl-secondsin config.yml)
- Automatische Invalidierung: Bei Claim, Close, Prioritätsänderung usw. wird der Cache-Eintrag sofort gelöscht
- Regelmäßige Bereinigung: Abgelaufene Einträge werden alle 5 Minuten entfernt
- Transparenz: Aktueller Cache-Status ist in
/ticket statseinsehbar
- Thread-sicher: Kann aus asynchronen Tasks heraus lese- und schreibend aufgerufen werden
❯ Kategorie & Priorität
"Beispiele & Übersicht"
| Befehl | Kategorie | Priorität |
|---|---|---|
| /ticket create <Text> | Standard | NORMAL |
| /ticket create bug <Text> | Bug | NORMAL |
| /ticket create high <Text> | Standard | HIGH |
| /ticket create bug high <Text> | Bug | HIGH |
| /ticket create question urgent <Text> | Frage | URGENT |
Prioritäten: low, normal, high, urgent (auch deutsch: niedrig, hoch, dringend)
Kategorien und Aliases sind frei in der config.yml konfigurierbar.
❯ Vergleich mit anderen Plugins
"TicketSystem vs. Konkurrenz"
TicketSystem vs. SimpleTickets vs. AdvancedTickets
Speicher-Migration
• TicketSystem: ✔ Vollständig integriert
• SimpleTickets: ⚠ Nur manuell
• AdvancedTickets: ✖ Nicht möglich
Automatische Backups
• TicketSystem: ✔ Ja
• SimpleTickets: ⚠ Teilweise
• AdvancedTickets: ✖ Nein
GUI
• TicketSystem: ✔ Modern & dynamisch
• SimpleTickets: ⚠ Basic
• AdvancedTickets: ✖ Nein
Archivierung
• TicketSystem: ✔ Automatisch & manuell
• SimpleTickets: ⚠ Nur manuell
• AdvancedTickets: ✖ Nein
Rollenbasierter Archiv-Zugriff
• TicketSystem: ✔ Eigene Permission, nicht an OP gebunden
• SimpleTickets: ✖ Nein
• AdvancedTickets: ✖ Nein
FAQ-System
• TicketSystem: ✔ Eigene GUI, eigene Datei, vollständige In-Game-Verwaltung
• SimpleTickets: ✖ Nein
• AdvancedTickets: ✖ Nein
Performance-Caching
• TicketSystem: ✔ TTL-Cache, automatische Invalidierung
• SimpleTickets: ✖ Nein
• AdvancedTickets: ✖ Nein
BungeeCord-Unterstützung
• TicketSystem: ✔ Serverübergreifende Tickets, Teleports & Benachrichtigungen
• SimpleTickets: ✖ Nein
• AdvancedTickets: ✖ Nein
Update-Checker
• TicketSystem: ✔ Integriert, saubere Konsole
• SimpleTickets: ✖ Nein
• AdvancedTickets: ✖ Nein
❯ Support & Community
Discord Server: Schneller Support von uns und der Community
GitHub: Bug-Reports, Feature-Requests und Changelogs
Ein großes Dankeschön an Mucki2020 für das Melden von Bugs & Fehlern!
Wir antworten in der Regel innerhalb von 24 Stunden!
Wenn TicketSystem deinen Server bereichert hat, freuen wir uns über eine 5-Sterne Bewertung!
Dein Feedback hilft uns, das Plugin weiter zu verbessern.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
© 2026 Viper Plugins | TicketSystem
Alle Rechte vorbehalten
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Noch keine Update-Hinweise vorhanden.
| Version | MC-Version | Datum | Changelog | Download |
|---|---|---|---|---|
| 1.1.0 Aktuell | 1.20.x, 1.21.x, 26.1 | 2026-04-03 |
