11 Home
Daniel Nagel edited this page 2026-03-25 15:44:01 +01:00

Übersicht

Das Ligasystem verwaltet automatisch mehrere Rangliste für Tabletop Spieler. Pro Spielsystem gibt es eine Rangliste. Mit einem Formular können Spiele in den verschiedenen Spielsystemen eingetragen werden. Gegner ganz einfach ausgewählt werden. Im Hintergrund wird nach jedem Spiel das MMR der beiden Spieler neu berechnet. Aus dem MMR ergibt sich dann die Rangliste PRO Spielsystem.

Die Spieler können nebenher noch ihre Statistik und Perfomance anschauen und traken.

Nutzerverwaltung

Um sich anzumelden ist Zwingend ein Discord Konto erforderlich. Da der Verein eh auf dem Discord ist, sollte das kein Problem sein. ID und Secret sind lokal in einer .env Datei gespeichert und werden von der Anwendung beim Starten in den Speicher geladen.

Wenn sich ein Spieler das erste mal anmeldet wird ein Zufälliger Doofer Name für ihn als Anzeigename ausgewürfelt. Spieler sind angehalten ihre eigenen Namen einzutragen.

Tables in der SQLite Datenbank

  • Players Speichert die Grunddaten der realen Personen. Spieler-ID (Eindeutige Nummer), Name, Nickname, Kontaktinfo.

  • Gamesystems Definiert die verschiedenen Warhammer-Systeme. System-ID, Name (z.B. "40k", "AoS", "Boltgun"), evt. spezielle Regeln (z.B. wie viele Punkte ein Sieg bringt). Inhalt: System-ID, Name, Min Score Points, Max Score Points,

  • Matches (Die geloggten Spiele) Hier wird jedes gespielte Spiel als Historie eingetragen. Inhalt: Match-ID, Datum, System-ID (welches Spiel wurde gespielt?), Spieler1-ID, Spieler2-ID, Punkte von Spieler 1, Punkte von Spieler 2.

  • Player Statistiks (Pro Spielsystem !) Das ist eine sogenannte "Verknüpfungstabelle". Da ein Spieler in mehreren Systemen spielen kann (z.B. 40k und AoS) und in jedem System ein anderes MMR (Matchmaking Rating) hat, speichern wir hier den aktuellen Stand. Inhalt: Spieler-ID, System-ID, Aktuelles MMR, Anzahl Siege, Anzahl Niederlagen

  • player achievments Achievments oder Besondere Auszeichnungen die Spieler erwerben können. WANN hat WELCHER Spieler in WELCHEM Spielsystem eine Auszeichnung erhalten.

  • achievments Sammlung der Auszeichnungen die Spieler erhalten können. Die Auszeichnungen gelten PRO Spielsystem!

Setup, Starten oder Installieren

  1. Git Projekt ziehen.
  2. setup.sh ausführen (bash setup.sh)
  3. .env Datei erstellen und die geheimen Variablen einfügen. Discord Anwendungscode, DB IP, Welche DiscordID Admins sind, App URL für den redirect, ... Eine Vorlage für die .env ist im db_data.git repo. Variablen entsprechend anpassen!
  4. main.py starten.
  5. ...
  6. Profit!