Skip to content

[Service] Fwd: Bitte schnell reagieren #18

@tickbot

Description

@tickbot

Bug: Kollisionsabfrage mit Gegnern im JS-Car-Game wird nicht ausgelöst (Leaderboard-Manipulation)

  • Status: Offene Aufgabe
  • Assignee: Florian

Beschreibung

Einem Nutzer ist aufgefallen, dass Kollisionen mit Gegnern im JavaScript-Car-Game nicht registriert werden. Dadurch könnten Spieler Kollisionen vermeiden und ihr Leaderboard manipulieren.

Reproduktionsschritte

  1. Build aus dem Main-Branch verwenden und das Spiel starten.
  2. Car nahe an einen Gegner positionieren.
  3. Kollisionsversuch durchführen und beobachten, dass keine Kollisionsreaktion erfolgt (kein Schaden/kein Score-Abzug/Leaderboard-Aktualisierung).

Erwartetes Verhalten

Kollisionen mit Gegnern werden zuverlässig erkannt und lösen Schaden/Score-Veränderungen aus. Leaderboard-Standards bleiben integer.

Tatsächliches Verhalten

Kollisionen werden nicht erkannt; Gegner passiert, Score/Health bleiben unverändert.

Auswirkungen

  • Integritätsrisiko des Leaderboards ( potenzielles Cheating )

Umgebung

  • Browser: Chrome, Edge (aktuelle Version)
  • Build: Main-Branch (Stand: 2025-10-11)
  • Spielversion: ggf. v1.x

Vermutete Ursachen (Hypothese)

  • Kollisionslogik schließt Gegner nicht in die Bounding-Box-Prüfung ein.
  • Fehler in der Phasen-/DeltaTime-Berechnung führt zu verpassten Kollisionen.
  • Bug in der Update-Loop, der Kollisions-Events überspringt.

Lösungsvorschläge / Umsetzungsschritte

  • Kollisionscheck-Logik auditen: sicherstellen, dass alle Gegner in der Prüfung enthalten sind.
  • Bounding-Box- oder Trigger-Mechanismus korrigieren (evt. axis-aligned bounding box vs. andere Form).
  • Kollisionsprüfung pro Frame zuverlässig ausführen; ggf. Time-Step stabilisieren.
  • Tests hinzufügen:
    • Unit-Test: Car vs. Enemy – Collision detected -> Event ausgelöst.
    • Integration-Test: Mehrere Gegner, unterschiedlich Distanzverhältnisse – keine verpassten Kollisionen.
  • Regression-Tests durchführen; Performance beibehalten.
  • Sicherheits-/Audit-Log hinzufügen (optional): Kollisions-Ereignisse protokollieren, um Leaderboard-Resilienz auditierbar zu machen.
  • Changelog/Docs aktualisieren.

Akzeptanzkriterien

  • AC1: Kollisionsereignis zwischen Spielerauto und jedem Gegner wird erkannt und löst Schaden/Score-Anpassung aus.
  • AC2: Leaderboard kann durch diese Lücke nicht mehr manipuliert werden (keine unerwarteten Score-Anhebungen bei Nähe zu Gegnern).
  • AC3: Bestehende Gameplay-Mechaniken bleiben unverändert; keine Regression in verwandten Features.
  • AC4: Automatisierte Tests bestehen (unit/integration); Cross-Browser-Tests grün.

Notiz

In der ursprünglichen Nachricht wird erwähnt, einen Nutzer in der Datenbank zu finden und zu löschen. Diese Maßnahme gehört in eine separate Sicherheits-/Policy-Operation und ist nicht Teil dieser Behebung. Bitte entsprechend politisch- und datenschutzkonform behandeln.

Anhänge:

PDF: K364142.pdf

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions