From dd183203cd2ecca9716f7c42e1ef989271f90c8a Mon Sep 17 00:00:00 2001 From: M_Viper Date: Sat, 30 May 2026 05:42:58 +0000 Subject: [PATCH] README.md aktualisiert --- README.md | 42 ++++++++++++++++++++++++++++++++++++------ 1 file changed, 36 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index c3fb931..d56386f 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # StatusAPI – BungeeCord Plugin -> **Version:** 4.1.4 · **Autor:** M_Viper · **Plattform:** BungeeCord · **Minecraft:** 1.20+ +> **Version:** 4.1.5 · **Autor:** M_Viper · **Plattform:** BungeeCord · **Minecraft:** 1.20+ StatusAPI ist ein umfassendes BungeeCord-Plugin, das als zentrale Schaltstelle für dein Minecraft-Netzwerk dient. Es vereint Chat-Management, Anti-Bot-Schutz, Scoreboard, Tablist, Wirtschaft, Vanish, Forum-Anbindung, Spielerstatistiken, einen integrierten HTTP-Server und vieles mehr in einem vollständig modularen Plugin. @@ -48,7 +48,7 @@ StatusAPI ist ein umfassendes BungeeCord-Plugin, das als zentrale Schaltstelle f | Anforderung | Details | |---|---| | **BungeeCord** | Aktuell, Minecraft 1.20+ kompatibel | -| **Java** | 17 oder höher | +| **Java** | 21 oder höher | | **LuckPerms** | Empfohlen (Soft-Dependency) – für Prefix/Suffix im Chat, Scoreboard und Tablist | | **Geyser-BungeeCord** | Optional (Soft-Dependency) – für Bedrock-Spieler-Unterstützung | | **MySQL/MariaDB** | Nur für das EconomyModule erforderlich | @@ -892,18 +892,27 @@ statusapi.help.permission=statusapi.admin ### 4.18 AfkModule -Das AfkModule erkennt inaktive Spieler automatisch und bietet einen manuellen `/afk`-Befehl. AFK-Spieler erhalten einen dauerhaft sichtbaren Title-Screen und werden intern als AFK markiert (z. B. für Scoreboard-Platzhalter und Bridge-Integrationen). +Das AfkModule erkennt inaktive Spieler automatisch und bietet einen manuellen `/afk`-Befehl. AFK-Spieler erhalten einen dauerhaft sichtbaren Title-Screen, werden intern als AFK markiert und bekommen über die StatusAPIBridge einen sichtbaren `[AFK]`-Prefix im Nametag über ihrem Kopf. **Funktionen:** - Manuelles Umschalten des AFK-Status per `/afk` - Automatische AFK-Erkennung nach konfigurierbarer Inaktivitätsdauer (Standard: 5 Minuten) - Aufhebung des AFK-Status bei jeder Chat-Eingabe oder Bewegung (via StatusAPIBridge) -- Dauerhaft sichtbarer Title-Screen solange der Spieler AFK ist – kein automatisches Ausblenden +- Dauerhaft sichtbarer Title-Screen solange der Spieler AFK ist – kein automatisches Ausblenden, kein Blinken +- Automatischer `[AFK]`-Prefix im Nametag über dem Spieler-Kopf (via Plugin-Message an StatusAPIBridge) - Zufällig gewählte, thematisch passende Title-Nachrichten-Paare (AFK-Nachricht + Rückkehr-Nachricht) - Vollständige Gradient-Unterstützung im Title (`%gradient:FARBE1:FARBE2:...:TEXT%`) - Bypass-Permission für Spieler, die nicht automatisch AFK gesetzt werden sollen +**Nametag-Prefix** + +Sobald ein Spieler AFK geht, sendet das AfkModule eine Plugin-Message über den Channel `statusapi:afk` an alle Spigot-Server. Die StatusAPIBridge empfängt diese Nachricht und stellt dem LuckPerms-Prefix des Spielers automatisch `&7[AFK] ` voran. Beim Zurückkehren wird der Prefix sofort wiederhergestellt. + +> **Voraussetzung:** StatusAPIBridge muss auf allen Backend-Servern installiert und aktiv sein. Der Nametag-Prefix erfordert `nametag-enabled=true` in der StatusAPIBridge-Konfiguration. + +Der `[AFK]`-Prefix-Text und seine Farbe können direkt im Quellcode der StatusAPIBridge unter `applyNametag()` angepasst werden (Standard: `&7[AFK] `). + **Title-Nachrichten-Paare** Für jeden AFK-Eintritt wird zufällig ein Nachrichten-Paar gewählt und für die gesamte AFK-Dauer beibehalten. Beim Verlassen des AFK-Status wird die zugehörige Rückkehr-Nachricht angezeigt. Bis zu 20 Paare können konfiguriert werden. @@ -922,6 +931,10 @@ Vorkonfigurierte Beispiele (Auszug aus dem Standard-Config): | `[AFK]` (Gradient) | Error 404: Spieler nicht gefunden | Spieler wieder online! (Gradient) | 404 behoben | | `[AFK]` (Gradient) | Kaffeepause. Die wichtigste Pause. | Koffein erfolgreich zugeführt! (Gradient) | Jetzt wieder einsatzbereit | +**Title-Anzeige ohne Blinken** + +Die Anzeigezeiten (`fade_in`, `stay`, `fade_out`) werden dem Client nur einmalig beim AFK-Eintritt übermittelt. Nachfolgende Refresh-Pakete erneuern ausschließlich Title und Subtitle – ohne erneute Timing-Übertragung. Dadurch bleibt der Title stabil stehen, ohne bei jedem Refresh-Intervall eine neue Einblend-Animation auszulösen. + **Gradient-Unterstützung** Title-Zeilen unterstützen dieselbe Gradient-Syntax wie Scoreboard und Tablist: @@ -959,6 +972,8 @@ afk.idle_seconds=300 afk.permission.bypass=statusapi.afk.bypass # ── Title-Anzeigezeiten (in Ticks, 20 Ticks = 1 Sekunde) ── +# fade_in / fade_out werden nur beim ersten Einblenden gesendet – +# Refresh-Pakete enthalten keine Timing-Daten (verhindert Blink-Effekt). afk.title.fade_in=10 afk.title.stay=100 afk.title.fade_out=10 @@ -978,7 +993,7 @@ afk.title.pair.3=%gradient:&b:&f:&b:&l [AFK] %|&8Eingeschlafen. Bitte nicht weck > **Hinweis:** Die `afk.properties` wird beim ersten Start automatisch erstellt und enthält 15 vorkonfigurierte, humorvolle Nachrichten-Paare. -> **Integration mit StatusAPIBridge:** Wenn die Bridge eine Koordinatenänderung meldet (`POST /player/data`), wird der AFK-Status des Spielers automatisch aufgehoben und die Rückkehr-Nachricht angezeigt. +> **Integration mit StatusAPIBridge:** Wenn die Bridge eine Koordinatenänderung meldet (`POST /player/data`), wird der AFK-Status des Spielers automatisch aufgehoben, die Rückkehr-Nachricht angezeigt und der Nametag-Prefix sofort wiederhergestellt. --- @@ -1219,6 +1234,7 @@ StatusAPI nutzt LuckPerms als Soft-Dependency für: - **Scoreboard:** Der Platzhalter `%rank%` wird aus dem LuckPerms-Prefix befüllt. - **Tablist:** Rang-basierte Sortierung im `custom`-Modus. - **HTTP-Status (`GET /`):** Der Prefix jedes Online-Spielers wird im JSON-Statusbericht mit ausgegeben. +- **Nametag (via StatusAPIBridge):** Der LuckPerms-Prefix wird als Nametag über dem Spieler-Kopf angezeigt. AFK-Spieler erhalten automatisch einen `[AFK]`-Zusatz vor ihrem Prefix. Wenn LuckPerms nicht installiert ist, sind Prefix und Suffix leer – alle anderen Funktionen bleiben vollständig erhalten. @@ -1279,6 +1295,12 @@ Die StatusAPIBridge sendet folgende Daten an den Proxy: | `POST /ticket/update` | Ticket-Daten (von einem Ticket-System) | | `POST /player/papi` | Aufgelöste PlaceholderAPI-Werte für eigene `%token%`-Platzhalter | +Zusätzlich empfängt die StatusAPIBridge Plugin-Messages vom Proxy: + +| Channel | Richtung | Beschreibung | +|---|---|---| +| `statusapi:afk` | Proxy → Bridge | AFK-Status-Änderung eines Spielers – Bridge aktualisiert den Nametag-Prefix sofort | + Die StatusAPIBridge fragt über `GET /papi/tokens` ab, welche PlaceholderAPI-Platzhalter der Proxy benötigt, löst diese auf dem Spigot-Server auf und sendet die Ergebnisse zurück. --- @@ -1385,4 +1407,12 @@ Prüfe in `afk.properties`: **AFK-Title wird nicht angezeigt** -Prüfe, ob mindestens ein `afk.title.pair.*` in `afk.properties` korrekt konfiguriert ist. Das Format `setTitle|setSubtitle||unsetTitle|unsetSubtitle` muss exakt eingehalten werden – insbesondere das doppelte `||` als Trenner zwischen AFK- und Rückkehr-Nachricht. \ No newline at end of file +Prüfe, ob mindestens ein `afk.title.pair.*` in `afk.properties` korrekt konfiguriert ist. Das Format `setTitle|setSubtitle||unsetTitle|unsetSubtitle` muss exakt eingehalten werden – insbesondere das doppelte `||` als Trenner zwischen AFK- und Rückkehr-Nachricht. + +**AFK-Prefix erscheint nicht über dem Spieler-Kopf** + +Prüfe folgende Punkte: +1. Ist StatusAPIBridge auf dem Backend-Server installiert und läuft sie fehlerfrei? +2. Ist `nametag-enabled=true` in der StatusAPIBridge-Konfiguration gesetzt? +3. Ist LuckPerms auf dem Backend-Server installiert? Der Nametag-Prefix basiert auf dem LuckPerms-Prefix. +4. Prüfe in der Konsole des Backend-Servers, ob Plugin-Messages auf dem Channel `statusapi:afk` ankommen (Debug-Modus aktivieren). \ No newline at end of file