• 4.1.1 627559356b

    4.1.1 Stable

    M_Viper released this 2026-05-20 09:00:17 +00:00 | 140 commits to main since this release

    Changelog

    StatusAPI — v4.1.1

    TablistModule

    Upgrade: Spalten-Header

    • Neues Setting tablist.column_header in der tablist.properties
    • full → bisheriges Verhalten (Server-Name belegt Zeile 0 jeder Spalte)
    • none → kein Slot-Header, Zeile 0 ist direkt für Spieler frei (neuer Standard)
    • small → wie none, Server-Namen erscheinen nur im Footer

    Upgrade: Hex-Farben

    • Hex-Farben werden jetzt in allen Texten unterstützt (Header, Footer, Prefixes, Symbole)
    • Drei Formate werden erkannt:
      • &#RRGGBB
      • {#RRGGBB}
      • <#RRGGBB>

    Upgrade: Leere Zeilen als Abstand

    • spacer=true auf einer leeren Header-/Footer-Zeile erzeugt eine echte Leerzeile
    • spacer=false (Standard) überspringt leere Zeilen

    Neu: Server-Symbole

    • Hinter jedem Spielernamen in der Tablist wird ein konfigurierbares Symbol angezeigt
    • Konfigurierbar direkt in der tablist.properties:
      tablist.symbol.lobby=&f🏠
      tablist.symbol.sv1=&6⛏️
      
    • Unterstützt &-Farbcodes und alle Hex-Formate
    • Kein Symbol → kein Eintrag nötig, Feld bleibt einfach leer
    • Neues Setting tablist.compact.footer.serverlist=true/false
    • false → die "Lobby • 1 | Sv1 • 0"-Zeile im Footer wird nicht angezeigt

    Fix: Große Markierungen (BungeeCord-interne Einträge)

    • hideRealPlayers() hat bisher nur echte Spieler-UUIDs auf listed=false gesetzt
    • BungeeCord schreibt für jeden Server automatisch einen eigenen Tab-Eintrag mit deterministischer UUID
    • Diese Einträge werden jetzt ebenfalls auf listed=false gesetzt und verschwinden aus der Tablist

    Fix: LuckPerms-Prefix Hex-Farben

    • getLuckPermsPrefix() löst jetzt Hex-Farben im Prefix korrekt auf

    ScoreboardModule

    Fix: Kompilierungsfehler mit BungeeCord 26.x

    • team.setColor(21)team.setColor(Optional.of(21))
    • Betrifft Zeilen 307 und 570 — setColor() erwartet in neueren BungeeCord-Versionen Optional<Integer> statt int


    StatusAPIBridge — v1.0.2

    Multi-Version Support

    • Ein einziges JAR läuft jetzt auf Minecraft 1.21.1 und 26.1.2
    • Laufzeit-Versions-Detection: detectMinecraftVersion() erkennt beim Start automatisch die Server-Version via Bukkit.getBukkitVersion() und wechselt intern in den passenden Modus
    • Ausgabe im Server-Log beim Start:
      [StatusAPIBridge] Versions-Modus: 1.21.x-Modus (NMS-Fallback aktiv) | BukkitVersion: 1.21.1-R0.1-SNAPSHOT
      [StatusAPIBridge] Versions-Modus: 26.1.x-Modus (kein NMS-Fallback)  | BukkitVersion: 26.1.2-R0.1-SNAPSHOT
      

    Maven-Profile

    • mc-1.21.1 — Standardprofil, aktiviert mit mvn package
    • mc-26.1.2 — aktiviert mit mvn package -P mc-26.1.2

    Kompatibilität

    • Java Compiler-Ziel auf 17 gesetzt — niedrigste gemeinsame Basis für 1.21.1 (Java 17+) und 26.1.2 (Java 25, rückwärtskompatibel)
    • api-version in plugin.yml auf 1.21 gesetzt — wird von beiden Server-Versionen akzeptiert

    TPS-Abfrage

    • getTPS() wird auf beiden Versionen bevorzugt (Bukkit.getTPS())
    • NMS-Reflection-Fallback (recentTps) wird nur noch im 1.21.x-Modus versucht
    • Auf 26.1.x wird der NMS-Fallback bewusst übersprungen — behebt den Fehler bei dem recentTps auf 26.1.2-Servern fehlschlug

    Fixes

    • PlayerMoveEvent.getTo() — null-Check ergänzt (kann seit 1.20.5 bei reinen Kopf-Rotationen null sein)
    • new URL(String)new URI(String).toURL() — behebt Deprecation-Warnung unter Java 21 in sendPost() und fetchPapiTokens()
    • instanceof-Checks auf modernen Java-17-Stil umgestellt (instanceof Player player)
    Downloads