Fix it.
Keep playing.
A practical guide for server owners and players. Find the symptom, check the likely cause and follow the fix before asking the community for help.
What went wrong?
Showing all help topics.
Open a topic to see the symptom, the most likely cause and a step-by-step fix. If the issue remains, use the support checklist at the bottom.
Installation & startup
BasicStats does not appear in /plugins
Symptom: The console lists only the hoster's helper plugin or the server does not recognize the JAR.
Likely cause: The file is in the wrong folder, the server was not fully stopped before upload, the filename ends in .jar.jar, or another BasicStats JAR is still installed.
Fix: Stop the server completely. Upload exactly one BasicStats-*.jar directly into the server's plugins/ folder, not into a subfolder. Check the filename and remove older BasicStats copies. Start the server again and run /plugins. If it still does not load, send the first BasicStats error from the console to Discord.
The plugin is red in /plugins or fails during startup
Likely cause: An unsupported Java/server combination, a damaged download, or a dependency conflict.
Fix: Use Paper, Spigot or Purpur and Java 17 or newer. Download the current release from Modrinth ↗ rather than a partially downloaded file. Run /basicstats info and /basicstats debug. Do not install multiple copies of the plugin. Share the exact error and the versions, but remove tokens and private paths first.
The server starts, but the plugin says it needs setup
Why: BasicStats intentionally does not guess every server preference on first startup.
Fix: An operator should run /basicstats setup and complete the interactive wizard. It sets sensible defaults for language, displays, ranks and optional modules. You can reopen it later. If the reminder is shown to ordinary players, finish the setup with an operator account and restart or reload the plugin.
Messages, language & configuration
Missing message: ... appears in chat or a menu
Likely cause: A custom language file was copied from an older release and does not contain a newer key, or a key was moved manually.
Fix: Run /basicstats reload. BasicStats merges missing default keys without overwriting your existing values. If the error remains, stop the server and back up the plugins/basicstatsundso/ folder. Rename only the affected language file, start once to let BasicStats regenerate it, then copy your custom changes back carefully. Keep YAML indentation intact and never delete data.yml unless you intentionally want to remove saved statistics.
Some messages are in German and some are in English
Likely cause: The active language was changed, but an old customized message file still contains translated or hard-coded lines.
Fix: Check language: en or language: de in config.yml, then run /basicstats reload. Review the matching messages_*.yml file for custom lines. BasicStats can add missing defaults, but it cannot safely guess which custom wording you want to keep. Remove only obsolete custom keys, not the data file.
My configuration changes are not used
Fix: Confirm that you edited the live server's plugin folder, not a local project copy or an archive. Use valid YAML indentation and the correct key names from the generated config.yml. Run /basicstats reload; for values that affect the web server, port binding or startup services, perform a full restart. Check the console for an invalid-value warning. Keep a backup before editing.
Dashboard & browser access
The browser shows Failed to fetch
What it means: The browser could not reach the dashboard URL. It is usually a network address, port, protocol or hoster restriction, not a statistics error.
Fix: Run /basicstats dashboard setup and choose local for the same PC or hosted [server-address] [port] when the hoster provides a web port. Enter the normal server address and the separate web port; do not type http:// into a Minecraft address field unless the command explicitly asks for a full URL. Make sure the hoster exposes the configured port and does not block outgoing browser access. Open the exact link printed by BasicStats. If the server is behind a hoster that does not expose an HTTP port, use the hosted dashboard or disable the dashboard and use the Explorer Push instead.
The dashboard says access setup is required
Fix: An operator with the dashboard permission must run /basicstats dashboard setup local on the server PC, or /basicstats dashboard setup hosted server.example 12345 with the hoster's web port. Then run /basicstats dashboard to receive a temporary link/token. Treat the token like a password: do not post it in screenshots, Discord or the browser URL history.
Settings save, but I am logged out or changes do not persist
Likely cause: The dashboard was opened with an expired or incomplete admin token, or the browser is using a stale page after a plugin update.
Fix: Close old dashboard tabs, run /basicstats dashboard again and open the new link. Use the dashboard's own save button and wait for its success state. Check that the hoster forwards the same configured address and port for every request. If the browser still loses access, verify the dashboard endpoint in /basicstats debug, clear only the BasicStats site data, and request help with the status code—not with the token itself.
I do not want a dashboard on my server
Fix: Set dashboard.enabled: false in config.yml and restart the server. The dashboard is optional and disabled by default on new installations. This does not disable normal in-game statistics, menus, ranks, backups or the optional Explorer Push unless you disable those separately.
Ranks, displays & menus
My rank does not change or the rank seems too easy
Fix: Run /basicstats rank details to see the current points, factors and next threshold. Run /basicstats rank list to inspect every material stage and /basicstats top rank for the leaderboard. Rank updates are based on configured activity factors and can be affected by caps, cooldowns and death penalties. Check the rank section of config.yml, then run /basicstats reload. A reset or imported statistic can also change the next calculation.
The GUI shows a missing title, icon or empty page
Fix: Run /basicstats reload and reopen /basicstats menu. If the title is missing, check the matching language file for the menu keys. If a page is empty, verify that the server has data for that category and that the configured page size is valid. Do not use material names from a newer Minecraft version in a server that is older than the plugin's supported API baseline.
Red numbers appear on the right side of the sidebar
Why: Those are Minecraft's built-in scoreboard line scores. They are technical entries used to order lines and are not generated statistic values.
Fix: BasicStats can keep them hidden where the server implementation allows it, but some clients and scoreboard renderers display them. Try the configured sidebar layout or another display mode. This does not affect saved statistics.
Sidebar, actionbar, bossbar or tablist is not what I want
Fix: Use /basicstats settings to view personal display options, then /basicstats settings display sidebar|actionbar|bossbar|none and /basicstats settings layout. Server defaults and personal choices are separate. If another plugin also controls the tablist or scoreboard, disable one of the competing displays or adjust its priority.
Explorer Push, privacy & hosters
The Explorer says “not linked”, “no snapshot” or shows old data
Fix: Enable explorer-push.enabled: true, set a public server address and restart. Run /basicstats explorer claim as an operator and open the one-time claim link. The server must be able to make outbound HTTPS connections. The default upload interval is limited to protect free hosting; fresh data can take a little while to arrive. Use /basicstats explorer status to check the pairing state, last status and next upload.
Explorer Push cannot pair on my hoster
Likely cause: The hoster blocks outbound plugin HTTPS requests, the public address is not the address players use, or the claim code was already consumed.
Fix: Confirm the server can reach https://basicstats-explorer.pages.dev and that the configured address includes the correct Minecraft port. Run /basicstats explorer status. If pairing was completed once, do not reuse the old claim code; generate a new one through the documented pairing flow. The Push mode needs no additional inbound port, but the hoster must allow outbound HTTPS for plugins.
A player's name is anonymous in the Explorer
Why: Public identity is consent-first. A player name is not published until the player explicitly accepts it.
Fix: The player can choose /basicstats explorer privacy yes or no, or reset the decision with /basicstats explorer privacy reset. The server administrator can separately disable names, heads or profiles in the Explorer configuration. Never publish UUIDs, private tokens, coordinates or chat content.
Integrations, data & performance
PlaceholderAPI placeholders show literally or stay empty
Fix: Install PlaceholderAPI in the same server's plugins/ folder and restart. Check /basicstats info for the detected status. Use the exact placeholder names from the current documentation and reload the plugin after changing the layout. A placeholder for a player who has no saved data can legitimately be empty or zero.
Discord webhooks do not send messages
Fix: Check that the webhook category is enabled and its URL is valid. The server must be allowed to make outbound HTTPS requests. Use the in-game webhook settings or dashboard admin settings, then save and run /basicstats debug. Do not paste the webhook URL into support chat; regenerate it in Discord if it was exposed. Rate limits and retry backoff can delay a message, so test with a single event rather than repeatedly triggering it.
Statistics, deaths or crafting values look wrong
Fix: First check whether you are viewing lifetime, daily or weekly values. BasicStats stores these periods separately. Run /basicstats stats, /basicstats daily and /basicstats weekly and compare the labels. Do not edit data.yml by hand. If a statistic was imported, reset or changed by another plugin, include the exact event sequence in your report.
The server lags after enabling many displays or integrations
Fix: Keep Explorer Push, Discord notifications and the dashboard optional. BasicStats caches rank and display values, batches safe storage writes and performs network requests asynchronously. Avoid setting extremely short intervals. Check the server timings/spark report, run /basicstats debug and temporarily disable one integration at a time to identify the source. Never move Bukkit API calls to custom async code.
Data is missing after an update or a corrupted file warning appears
Fix: Stop the server and make a complete copy of plugins/basicstatsundso/. Check the automatic backup folder and restore the newest known-good data backup only while the server is stopped. Start again and run /basicstats debug. Do not delete or overwrite data.yml before making a backup. If the warning continues, send the safe diagnostic output and the relevant console lines to Discord.
Still need help?
Join the BasicStats Community Discord ↗ for bug reports, feature requests and setup help.
Include the BasicStats version, Minecraft/server version, Java version, hoster, the command that failed, the exact error text and the output of /basicstats debug. Remove tokens, webhook URLs, IP addresses, passwords and private player data before posting screenshots or logs.
Öffne ein Thema, um Erkennungsmerkmale, wahrscheinliche Ursachen und eine konkrete Lösung zu sehen. Wenn das Problem bleibt, nutze die Support-Checkliste am Ende.
Installation und Start
BasicStats erscheint nicht bei /plugins
Erkennbar an: In der Konsole steht nur das Hoster-Hilfsplugin oder der Server erkennt die JAR nicht.
Häufige Ursache: Die Datei liegt im falschen Ordner, der Server wurde vor dem Upload nicht vollständig gestoppt, der Dateiname endet auf .jar.jar oder eine zweite BasicStats-JAR ist noch vorhanden.
Lösung: Stoppe den Server vollständig. Lade genau eine BasicStats-*.jar direkt in den Ordner plugins/ hoch, nicht in einen Unterordner. Prüfe die Dateiendung und entferne alte BasicStats-Kopien. Starte den Server erneut und führe /plugins aus. Wenn es weiterhin nicht lädt, sende den ersten BasicStats-Fehler aus der Konsole im Discord.
Das Plugin ist bei /plugins rot oder bricht beim Start ab
Häufige Ursache: Eine nicht unterstützte Kombination aus Java und Server-Software, ein beschädigter Download oder ein Konflikt mit einer Abhängigkeit.
Lösung: Nutze Paper, Spigot oder Purpur und Java 17 oder neuer. Lade die aktuelle Version von Modrinth ↗ und nicht aus einer unvollständigen Datei. Führe /basicstats info und /basicstats debug aus. Installiere nicht mehrere Plugin-Kopien. Teile den genauen Fehler und die Versionen, aber entferne Tokens und private Pfade.
Der Server startet, aber BasicStats verlangt ein Setup
Warum: BasicStats rät beim ersten Start nicht jede Serverpräferenz automatisch.
Lösung: Ein Operator führt /basicstats setup aus und schließt den interaktiven Assistenten ab. Er setzt sinnvolle Standardwerte für Sprache, Anzeigen, Ränge und optionale Module. Du kannst ihn jederzeit erneut öffnen. Wenn normale Spieler die Erinnerung sehen, beende das Setup mit einem Operator-Konto und starte das Plugin neu oder nutze Reload.
Nachrichten, Sprache und Konfiguration
Missing message: ... erscheint im Chat oder Menü
Häufige Ursache: Eine angepasste Sprachdatei stammt aus einer alten Version und enthält einen neuen Schlüssel nicht, oder ein Schlüssel wurde manuell verschoben.
Lösung: Führe /basicstats reload aus. BasicStats ergänzt fehlende Standardwerte, ohne deine vorhandenen Werte zu überschreiben. Bleibt der Fehler, stoppe den Server und sichere den Ordner plugins/basicstatsundso/. Benenne nur die betroffene Sprachdatei um, starte einmal zum Regenerieren und übertrage deine eigenen Texte anschließend vorsichtig zurück. Die YAML-Einrückung muss stimmen. Lösche niemals data.yml, wenn die Statistikdaten erhalten bleiben sollen.
Einige Nachrichten sind Deutsch, andere Englisch
Häufige Ursache: Die Sprache wurde geändert, aber eine alte angepasste Sprachdatei enthält noch fest eingetragene Texte.
Lösung: Prüfe language: en oder language: de in config.yml und führe /basicstats reload aus. Prüfe die passende messages_*.yml auf eigene Einträge. BasicStats ergänzt fehlende Standards, kann aber nicht sicher erraten, welchen eigenen Text du behalten möchtest. Lösche nur veraltete Schlüssel, nicht die Datendatei.
Meine Config-Änderungen werden nicht übernommen
Lösung: Prüfe, ob du die aktive Plugin-Config des Servers bearbeitet hast und nicht eine lokale Projektkopie oder ein Archiv. Nutze die korrekten YAML-Einrückungen und Schlüssel aus der erzeugten config.yml. Führe /basicstats reload aus; Änderungen an Webserver, Ports oder Startdiensten benötigen einen vollständigen Neustart. Achte auf Warnungen wegen ungültiger Werte und sichere die Datei vorher.
Dashboard und Browserzugriff
Der Browser zeigt Failed to fetch
Was es bedeutet: Der Browser konnte die Dashboard-Adresse nicht erreichen. Meistens liegt es an Adresse, Port, Protokoll oder einer Einschränkung des Hosters, nicht an den Statistikdaten.
Lösung: Führe /basicstats dashboard setup aus und wähle local für denselben PC oder hosted [server-adresse] [port], wenn der Hoster einen Web-Port bereitstellt. Gib die normale Serveradresse und den separaten Web-Port ein; http:// gehört nicht in das Minecraft-Adressfeld, außer der Befehl verlangt ausdrücklich eine vollständige URL. Prüfe, ob der Hoster den Port freigibt und der Browserzugriff erlaubt ist. Öffne exakt den Link aus BasicStats. Wenn der Hoster keinen HTTP-Port nach außen anbietet, nutze den Hosted-Zugriff oder deaktiviere das Dashboard und verwende optional Explorer Push.
Das Dashboard verlangt eine Zugriffseinrichtung
Lösung: Ein Operator mit Dashboard-Berechtigung führt /basicstats dashboard setup local auf dem Server-PC oder /basicstats dashboard setup hosted server.example 12345 mit dem Web-Port des Hosters aus. Danach liefert /basicstats dashboard einen temporären Link bzw. Token. Behandle ihn wie ein Passwort und poste ihn niemals in Screenshots, Discord oder der Browser-Historie.
Beim Speichern werde ich ausgeloggt oder Änderungen bleiben nicht
Häufige Ursache: Das Dashboard wurde mit einem abgelaufenen oder unvollständigen Admin-Token geöffnet, oder der Browser verwendet noch eine alte Seite.
Lösung: Schließe alte Dashboard-Tabs, führe /basicstats dashboard erneut aus und öffne den neuen Link. Nutze den Speichern-Button und warte auf die Erfolgsmeldung. Prüfe, ob der Hoster dieselbe konfigurierte Adresse und denselben Port für alle Anfragen weiterleitet. Wenn der Zugriff weiter verloren geht, prüfe /basicstats debug, lösche nur die BasicStats-Seitendaten und nenne im Discord den Statuscode – niemals das Token.
Ich möchte kein Dashboard auf meinem Server
Lösung: Setze dashboard.enabled: false in config.yml und starte den Server neu. Das Dashboard ist optional und bei neuen Installationen standardmäßig deaktiviert. Ingame-Statistiken, Menüs, Ränge, Backups und Explorer Push werden dadurch nicht automatisch deaktiviert.
Ränge, Anzeigen und Menüs
Mein Rang steigt nicht oder zu schnell
Lösung: Führe /basicstats rank details aus, um Punkte, Faktoren und die nächste Grenze zu sehen. Mit /basicstats rank list siehst du alle Materialstufen, mit /basicstats top rank die Rangliste. Die Punkte hängen von konfigurierten Aktivitätsfaktoren ab und können durch Limits, Cooldowns und Todesabzüge beeinflusst werden. Prüfe den Rangbereich in config.yml und führe /basicstats reload aus. Ein Reset oder importierte Werte können die nächste Berechnung ebenfalls verändern.
Das GUI zeigt einen fehlenden Titel, falsches Icon oder eine leere Seite
Lösung: Führe /basicstats reload aus und öffne /basicstats menu erneut. Prüfe bei einem fehlenden Titel die passenden Menüschlüssel in der Sprachdatei. Bei einer leeren Seite müssen für diese Kategorie Daten vorhanden und die Seitengröße gültig sein. Verwende auf älteren Minecraft-Versionen keine Materialien, die erst in neueren Versionen existieren.
Rechts in der Sidebar stehen rote Zahlen
Warum: Das sind die eingebauten Scoreboard-Zeilennummern von Minecraft. Sie sortieren die Zeilen technisch und sind keine Statistikwerte.
Lösung: BasicStats kann sie je nach Serverimplementierung ausblenden, manche Clients und Scoreboard-Renderer zeigen sie aber trotzdem. Probiere ein anderes Sidebar-Layout oder einen anderen Anzeigemodus. Deine gespeicherten Daten werden davon nicht verändert.
Sidebar, Actionbar, Bossbar oder Tablist passen nicht
Lösung: Mit /basicstats settings siehst du persönliche Anzeigeoptionen. Danach kannst du /basicstats settings display sidebar|actionbar|bossbar|none und /basicstats settings layout nutzen. Serverstandard und persönliche Auswahl sind getrennt. Wenn ein anderes Plugin ebenfalls Tablist oder Scoreboard kontrolliert, deaktiviere eine der konkurrierenden Anzeigen oder passe deren Priorität an.
Explorer Push, Datenschutz und Hoster
Der Explorer sagt „nicht verknüpft“, „kein Snapshot“ oder zeigt alte Daten
Lösung: Aktiviere explorer-push.enabled: true, trage die öffentliche Serveradresse ein und starte neu. Ein Operator führt /basicstats explorer claim aus und öffnet den einmaligen Claim-Link. Der Server muss ausgehende HTTPS-Verbindungen herstellen dürfen. Der Upload ist zum Schutz kostenloser Hoster begrenzt, deshalb können neue Daten etwas später erscheinen. Mit /basicstats explorer status siehst du Pairing, letzten Status und nächsten Upload.
Explorer Push lässt sich beim Hoster nicht verknüpfen
Häufige Ursache: Der Hoster blockiert ausgehende HTTPS-Anfragen, die öffentliche Adresse entspricht nicht der Spieleradresse oder der Claim-Code wurde bereits verbraucht.
Lösung: Prüfe, ob der Server https://basicstats-explorer.pages.dev erreichen kann und die konfigurierte Adresse den richtigen Minecraft-Port enthält. Führe /basicstats explorer status aus. Nach einer erfolgreichen Verknüpfung kann ein alter Claim-Code nicht erneut verwendet werden. Der Push-Modus braucht keinen zusätzlichen eingehenden Port, aber der Hoster muss ausgehendes HTTPS für Plugins erlauben.
Der Spielername ist im Explorer anonym
Warum: Öffentliche Identität funktioniert nach Einwilligung. Ein Name wird erst nach ausdrücklicher Zustimmung veröffentlicht.
Lösung: Der Spieler kann /basicstats explorer privacy yes oder no wählen und mit /basicstats explorer privacy reset die Entscheidung zurücksetzen. Der Serveradmin kann Namen, Köpfe oder Profile zusätzlich in der Explorer-Konfiguration deaktivieren. UUIDs, private Tokens, Koordinaten und Chatinhalte gehören niemals in den öffentlichen Snapshot.
Integrationen, Daten und Performance
PlaceholderAPI-Platzhalter werden wörtlich angezeigt oder bleiben leer
Lösung: Installiere PlaceholderAPI im selben Serverordner plugins/ und starte neu. Mit /basicstats info prüfst du den erkannten Status. Nutze die exakten Platzhalternamen aus der aktuellen Dokumentation und lade nach Layoutänderungen neu. Für Spieler ohne gespeicherte Daten kann ein Platzhalter korrekt leer oder null sein.
Discord-Webhooks senden keine Nachrichten
Lösung: Prüfe, ob die jeweilige Webhook-Kategorie aktiv und die URL gültig ist. Der Server muss ausgehende HTTPS-Anfragen erlauben. Nutze die Ingame-Webhook-Einstellungen oder das Dashboard-Adminmenü und speichere danach. Führe /basicstats debug aus. Poste die Webhook-URL niemals im Support; wenn sie sichtbar war, generiere sie in Discord neu. Rate-Limits und Backoff können Nachrichten verzögern, deshalb teste mit einem einzelnen Ereignis.
Statistiken, Tode oder Crafting-Werte wirken falsch
Lösung: Prüfe zuerst, ob du Lebenszeit-, Tages- oder Wochenwerte ansiehst. BasicStats speichert diese Zeiträume getrennt. Führe /basicstats stats, /basicstats daily und /basicstats weekly aus und vergleiche die Beschriftungen. Bearbeite data.yml nicht manuell. Wenn ein Wert importiert, zurückgesetzt oder durch ein anderes Plugin verändert wurde, beschreibe im Report die genaue Reihenfolge.
Der Server laggt nach dem Aktivieren vieler Anzeigen oder Integrationen
Lösung: Explorer Push, Discord-Benachrichtigungen und Dashboard bleiben optional. BasicStats cached Rang- und Anzeigewerte, bündelt sichere Speichervorgänge und führt Netzwerkzugriffe asynchron aus. Vermeide extrem kurze Intervalle. Prüfe Spark/Timings, führe /basicstats debug aus und deaktiviere testweise jeweils nur eine Integration. Verschiebe keine Bukkit-Aufrufe in eigene Async-Threads.
Daten fehlen nach einem Update oder eine beschädigte Datei wird gemeldet
Lösung: Stoppe den Server und kopiere den gesamten Ordner plugins/basicstatsundso/. Prüfe den automatischen Backup-Ordner und stelle das neueste funktionierende Datenbackup nur bei gestopptem Server wieder her. Starte und führe /basicstats debug aus. Lösche oder überschreibe data.yml nie, bevor du ein Backup erstellt hast. Wenn die Warnung bleibt, sende die sichere Diagnose und die relevanten Konsolenzeilen im Discord.
Noch Hilfe nötig?
Komm in den BasicStats Community Discord ↗ für Bugreports, Feature-Wünsche und Hilfe beim Einrichten.
Nenne BasicStats-Version, Minecraft-/Server-Version, Java-Version, Hoster, den fehlgeschlagenen Befehl, den exakten Fehlertext und die Ausgabe von /basicstats debug. Entferne Tokens, Webhook-URLs, IP-Adressen, Passwörter und private Spielerdaten vor Screenshots oder Logauszügen.