← Zurück zum Portfolio
v1.0.0 Web & SaaS

CS2 Companion

Der zweite Bildschirm für Counter-Strike 2

Im Match muss man vieles im Kopf behalten: Reicht das Geld für die nächste Runde, wie lange tickt die Bombe noch, wie ging der Smoke für diese Stelle. CS2 Companion zeigt das live auf dem zweiten Monitor oder dem Handy und merkt sich danach, wie das Match gelaufen ist.

Ergebnis
Spielstand, Kaufempfehlung, Lineups und Statistik auf dem zweiten Bildschirm, ohne Eingriff ins Spiel.
Für
Spielerinnen und Spieler von Counter-Strike 2
Stack
Next.js, TypeScript, SQLite, Server-Sent Events, Steam OpenID, Game State Integration
Live
companion.zenkner-technology.de

Was CS2 Companion zeigt

  1. Live-Dashboard

    Rundenstand, Geld, Leben und Rüstung in großen Zahlen auf dem zweiten Monitor oder dem Handy, aktualisiert mehrmals pro Sekunde.

  2. Kaufempfehlung

    In der Kaufphase steht da, ob Full Buy, Teilkauf, Force Buy oder Eco sinnvoll ist, berechnet aus Geld, Seite, Verlustserie und Rundenstand.

  3. Bombentimer

    Sobald die Bombe liegt, läuft der Countdown mit dem Hinweis, ob ein Defuse mit oder ohne Kit noch reicht.

  4. Lineups mit Karte

    Zu jeder Map eine Radarkarte mit Standpunkt, Flugbahn und Landepunkt. Die offiziellen Map-Guides von Valve sind enthalten, eigene Würfe lassen sich mit Screenshot und Position aus dem Spiel anlegen.

  5. Übungsbefehl

    Zu jedem Lineup der fertige Konsolenbefehl, der auf dem Übungsserver direkt an den Standpunkt mit der richtigen Blickrichtung springt.

  6. Rundenverlauf live

    Unter den Live-Werten wächst der Verlauf des laufenden Matches Runde für Runde mit, dazu die Zwischenbilanz je Seite und die eigene Bilanz auf der gespielten Map.

  7. Statistik

    Jedes Match wird automatisch erfasst: letzte zehn Ergebnisse, K/D und Headshot-Quote im Vergleich zum Zeitraum davor, stärkste und schwächste Map, beide Seiten, Serien, Bestwerte und Pistolenrunden, Rundenverlauf jedes Matches.

  8. Profil und Vergleich

    Die Statistik ist privat. Wer möchte, schaltet ein öffentliches Profil mit zufälligem Link frei. Mitspieler sehen dann ihre Werte neben den eigenen, auch für die gemeinsam gespielten Maps.

Vom Spiel auf den zweiten Bildschirm

  1. 01

    Mit Steam anmelden

    Anmeldung über Steam OpenID. Das Passwort bleibt bei Steam, die Anwendung erfährt nur die öffentliche SteamID.

  2. 02

    Eine Datei ablegen

    Eine persönliche Konfigurationsdatei kommt in den cfg-Ordner von CS2. Es wird kein Programm installiert.

  3. 03

    Spielen

    CS2 sendet den eigenen Spielstand über die Game State Integration. Der Server verteilt ihn per Server-Sent Events an alle offenen Ansichten.

  4. 04

    Auswerten

    Aus dem Datenstrom werden Matches und Runden erkannt und gespeichert, ohne Upload von Demos.

Architektur & Stack

Die Anwendung sieht nur, was das Spiel einem Spieler ohnehin anzeigt. Angenommen werden nur Datenpakete, die zur SteamID des angemeldeten Kontos gehören.

Anwendung
Next.js 15, TypeScript, Tailwind CSS, Server-Sent Events
Datenquelle
Game State Integration von Counter-Strike 2, eine offizielle Schnittstelle von Valve
Anmeldung
Steam OpenID mit serverseitiger Bestätigung, Sitzungs-Cookie, kein eigenes Passwort
Datenhaltung
SQLite, Daten je Konto getrennt, Statistik privat, öffentliches Profil nur auf Wunsch, Konto mit allen Daten selbst löschbar
Inhalte
Offizielle Map-Guides, Kartenmaße und Übersichten aus den Spieldateien, Texte ins Deutsche übertragen
Verwaltung
Nutzer mit Detailansicht, Kennzahlen, Lineup-Freigaben und Betrieb über das Zenkner-Technology-CRM
Betrieb
Docker auf eigenem Server in Deutschland, nginx mit TLS und Rate-Limits
Kosten für Nutzer
Kostenlos

Interesse an CS2 Companion oder etwas Ähnlichem?

Schreib mir kurz, worum es geht. Du bekommst innerhalb eines Werktags eine persönliche Rückmeldung.