Files
Jeremy Brandenburger 7de283a8e1 docs: add README
2026-03-30 14:11:58 +02:00

1.5 KiB
Raw Permalink Blame History

HELLDIVERS 2 Stratagem Trainer

Trainings- und Wettkampf-App für Helldivers 2 Stratagems. Erkennt Arrow-Key-Eingaben, bewertet Geschwindigkeit und Genauigkeit, ermöglicht 1v1-Matches in Echtzeit.

Features

  • Practice Mode 97 Stratagems aus 15 Kategorien, 30s Timer, Streak-Multiplikator
  • 1v1 Arena Echtzeit-Matches via WebSocket, Best-of-10 Runden (first to 5)
  • Dashboard eigene Stats, Tages-Challenge, Online-Status anderer Spieler
  • Leaderboard Top-20 nach Gesamtpunktzahl
  • Admin Panel User anlegen/löschen, Temp-Passwörter vergeben

Stack

  • Node.js / Express 5
  • SQLite (better-sqlite3, WAL-Modus)
  • WebSocket (ws)
  • Session-Auth (express-session + bcryptjs)
  • Vanilla JS, kein Frontend-Framework

Setup

npm install
node server.js

Beim ersten Start werden admin und jeremy mit zufälligen Temp-Passwörtern angelegt (Ausgabe in der Konsole).

Port

3012 — konfigurierbar via PORT-Umgebungsvariable

PM2

pm2 start ecosystem.config.js

Datenbankschema

Drei Tabellen in data/helldivers.db:

Tabelle Inhalt
users Username, Passwort-Hash, Rolle, mustChange-Flag
practice_sessions Stratagem, Kategorie, Zeit, Score, Timestamp
matches Gewinner, Verlierer, Rundenstand, Timestamp

Scoring

score = round((100 + (30 - elapsedSecs) × 3) × (1 + streak × 0.1))
  • Basis: 100 Punkte
  • Zeitbonus: bis zu 90 Punkte (bei < 1s)
  • Streak-Multiplikator: +10 % pro korrektem Stratagem in Folge