v1.4: Tempo erhoeht - Normal 740 px/s (+30%), Hard 1080 (+50%), Easy unveraendert. Snap-Fenster 160->200 px, damit genug Zeit fuer Befehle bleibt. 57 Tests gruen.

This commit is contained in:
Project Bridge committed 2026-11-01 12:22:08 +00:00
1 parent 441bdb440c
commit 7f590a6f74
5 files changed
+32 -9

No files matched your search

+2 -1
View File
@@ -71,7 +71,8 @@ MAX_UNITS_H = 3
# Ab dieser Entfernung zur Barriere wird abgebremst – früh, damit man Zeit hat.
FAST_TO_SLOW_DISTANCE = 260
# Ab dieser Entfernung darf eingerastet/gedreht/gestapelt werden.
SNAP_WINDOW = 160
# 200 px ergeben je nach Stufe rund 1,4 s (Easy), 0,8 s (Normal) und 0,55 s (Hard).
SNAP_WINDOW = 200
# Lücke, die nach einer Kollision (ohne Einrasten) entsteht – Strafe bleibt wie bisher.
FAIL_GAP = 60
PLATFORM_TOLERANCE = 5 # Toleranz für "bündig an der Barriere"
+11 -4
View File
@@ -1,7 +1,14 @@
"""Schwierigkeitsstufen: wie schnell die Koffer einlaufen.
``hard`` entspricht dem Tempo des Altstands (6 bzw. 2 Pixel pro Frame bei
120 fps = 720 bzw. 240 Pixel pro Sekunde).
Referenz: der Altstand lief mit 6 bzw. 2 Pixeln pro Frame bei 120 fps, also
720 bzw. 240 Pixel pro Sekunde. Das ist die Basis, von der aus skaliert wird:
* **Easy** – 0,58× so schnell wie der Altstand (zum Einsteigen)
* **Normal** – 1,3× so schnell wie der Altstand
* **Hard** – 1,5× so schnell wie der Altstand
Das Zeitfenster für die Befehle (Einrasten/Drehen/Stapeln) steht in
``config.SNAP_WINDOW`` und ist für alle Stufen gleich gross.
"""
from __future__ import annotations
@@ -24,8 +31,8 @@ class Difficulty:
DIFFICULTIES: tuple[Difficulty, ...] = (
Difficulty("easy", "Easy", speed_fast=420.0, speed_slow=140.0),
Difficulty("normal", "Normal", speed_fast=570.0, speed_slow=190.0),
Difficulty("hard", "Hard", speed_fast=720.0, speed_slow=240.0),
Difficulty("normal", "Normal", speed_fast=740.0, speed_slow=250.0),
Difficulty("hard", "Hard", speed_fast=1080.0, speed_slow=360.0),
)
DEFAULT_DIFFICULTY: Difficulty = DIFFICULTIES[1]