Bot-Labor
Unser Friendly-Helper Discord-Bot bringt World-of-Warships-Daten direkt in den Discord. Schiffsdaten, Spielerstatistiken, Clan-Rankings, Karten, Kommandanten, Errungenschaften und Vergleichswerte können direkt per Slash-Command abgerufen werden. Das Ziel ist klar: weniger Browserwechsel, weniger Copy-Paste, mehr Infos genau da, wo die Community gerade redet. Der Bot verbindet die Wargaming-API, lokal vorbereitete JSON-Daten und eigene Auswertungslogik zu einem Discord-Werkzeug für Clans, Spieler und Community-Server.
Viele World-of-Warships-Daten gibt es bereits im Web, zum Beispiel im Wiki oder auf Statistikseiten.
Der Unterschied ist:
Dort muss man den Browser öffnen, suchen, kopieren, zurück in Discord wechseln und Werte erklären.
Friendly-Helper bringt diese Informationen direkt in den Discord-Chat.
Das bedeutet:
keine extra Browser-Tabs, kein Copy-Paste, keine langen Suchwege, direkte Diskussion im Channel, schnelle Vergleiche, sofort sichtbare Clan- und Spielerwerte
Gerade für Clan-Server, Streamer-Communitys und aktive WoWS-Gruppen ist das ein klarer Vorteil.
Projektziel
Entwicklung eines Discord-Bots für World of Warships mit direkter Discord-Ausgabe.
Der Bot soll:
- Schiffsdaten direkt im Chat anzeigen
- Spielerstatistiken abrufen und verständlich ausgeben
- Spieler, Schiffe und Clans vergleichen
- Clan-Leaderboards und persönliche Clanränge erzeugen
- Karten, Kommandanten und Errungenschaften anzeigen
- Daten automatisch aktuell halten
- stabil im Dauerbetrieb laufen
- für größere Community-Server nutzbar bleiben
Im Prinzip kombiniert der Bot wichtige Funktionen aus WoWS-Wiki, Wargaming-API und Statistikseiten wie WoWS-Numbers, aber direkt im Discord.
Technische Basis
Der Bot ist in Python geschrieben und nutzt unter anderem:
-
discord.pyfür Discord-Integration und Slash-Commands aiohttpfür asynchrone API-Abfragen- lokale JSON-Dateien als schnelle Datenbasis
- eigene Builder-Skripte für automatische Datenerstellung
- Watchdog-Überwachung für Dauerbetrieb und Neustarts
- Autocomplete für Schiffe, Spieler, Clans, Nationen und Klassen
- Fuzzy Search für Tippfehler bei Schiffsnamen und Spielernamen
Im Prinzip kombiniert der Bot wichtige Funktionen aus WoWS-Wiki, Wargaming-API und Statistikseiten wie WoWS-Numbers, aber direkt im Discord.
Datenbasis
Der Bot arbeitet mit einer Mischung aus lokal vorbereiteten Daten und Live-Abfragen.
ships.json
Enthält Schiffsdaten aus der Wargaming-Enzyklopädie, darunter:
- Name
- Nation
- Klasse
- Tier
- Trefferpunkte
- Geschwindigkeit
- Wendekreis
- Ruderstellzeit
- Hauptgeschütze, Nachladezeit, Reichweite, Streuung
- Torpedowerte
- Sekundärbewaffnung
- Sichtbarkeit
- Premium- und Spezialstatus
- Preise
- Module, Bilder und Icons
achievements.json
Enthält Errungenschaften aus World of Warships mit:
- Name
- Beschreibung
- Typ
- Untertyp
- Bild
- ID
- Sichtbarkeit
- Anforderungen
crews.json
Enthält Kommandanten-Daten:
- Namen
- Nation
- Trainingskosten
- Umschulungskosten
- Icon
- weitere API-Werte
maps.json
Enthält Karteninformationen für die Map-Befehle.
Automatischer JSON-Bau
Die Daten werden nicht manuell gepflegt, sondern über eigene Builder-Skripte erzeugt.
build_ships_from_api.py
Ruft alle Schiffe aus der Wargaming-API ab, lädt zusätzlich die globalen Module und baut daraus eine lokale ships.json
build_crews_from_api.py
Ruft Kommandanteninformationen aus der Wargaming-API ab.
Zusätzliche Overrides ermöglichen eigene Texte, Korrekturen und individuelle Ergänzungen.
Anschließend werden beide Datenquellen zusammengeführt und zur fertigen crews.json verarbeitet.
build_maps_from_api.py
Erzeugt die lokale Kartendatenbank für /karte und /karten.
build_achievements.py
Erstellt die lokale achievements.json direkt aus der Wargaming-API. Dabei werden alle verfügbaren Errungenschaften automatisch geladen, strukturiert gespeichert und für die Discord-Ausgabe im Bot vorbereitet.
Dadurch bleibt der Bot schnell, weil Stammdaten lokal gelesen werden, während Spieler-, Clan- und Statistikwerte live über die API kommen.
Watchdog und Dauerbetrieb
Der Bot wird durch einen externen Watchdog überwacht, der Watchdog prüft regelmäßig:
- ob der Bot-Prozess noch läuft, ob Internetverbindung besteht
- ob wichtige JSON-Dateien fehlen, ob JSON-Dateien veraltet sind
- ob Builder-Skripte erneut ausgeführt werden müssen, ob Remote-Dateien aktualisiert wurden
- ob ein Neustart notwendig ist
Wenn eine Datei fehlt oder veraltet ist, wird sie automatisch neu gebaut. Wenn der Bot abstürzt, startet der Watchdog ihn neu. Wenn Daten aktualisiert wurden, wird der Bot ebenfalls neu gestartet, damit die neuen Informationen aktiv sind.
Zusätzlich führt der Watchdog unabhängig von den regulären Checks alle 7 Tage einen automatisierten Full-Build aller build.py-Skripte aus, um sämtliche Datensätze auch ohne manuellen Admin-Eingriff konsistent und aktuell zu halten.
Autocomplete & Fuzzy Search
Viele Befehle nutzen Autocomplete, damit User Schiffe, Spieler, Clans, Nationen oder Klassen bequem auswählen können.
Zusätzlich wurde Fuzzy Search eingebaut. Wenn ein User ein Schiff oder einen Spieler nicht exakt schreibt, schlägt der Bot einen passenden Treffer vor, statt einfach nur „nicht gefunden“ zu sagen.
Das macht die Nutzung deutlich freundlicher, gerade auf mobilen Geräten oder bei komplizierten WoWS-Namen.:
Friendly-Helper ist ein Discord-Bot für World of Warships, der Schiffsdaten, Spielerstatistiken, Clan-Auswertungen, Karten, Kommandanten und Errungenschaften direkt im Chat verfügbar macht. Gebaut mit Python, Wargaming-API, lokal erzeugten JSON-Daten, Slash-Commands, Autocomplete, Fuzzy Search und Watchdog-Dauerbetrieb. Ein Bot für Spieler, Clans und Communitys, die ihre WoWS-Daten direkt dort haben wollen, wo gerade gesprochen wird: im Discord.
Das alles und noch viel mehr direkt auf eurem Discord
Mit dem Friendly-Helper Bot holt ihr Schiffsdaten, Spielerstatistiken, Clan-Auswertungen, Karten, Kommandanten und Vergleiche direkt in euren Server.