XP-Modell nach VOD-Daten: 1->2 kostet 2 XP, Carousels geben keine XP

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
team3
2026-07-23 07:29:32 +02:00
parent 11dc8994ff
commit a78aa5f1e9
5 changed files with 17 additions and 25 deletions

View File

@@ -195,14 +195,16 @@ def test_pve_freezes_streak_and_pays_no_win_bonus(art, cfg):
def test_natural_level_progression(art, cfg):
"""Ohne XP-Kauf: Level 1 bei 1-2, Level 4 bei 2-1, Level 5 mit 6/20 bei 3-2."""
"""Ohne XP-Kauf, laut VOD: 1-3 Lvl 2, 1-4 Lvl 3, 2-1 Lvl 3 (2/6), 2-5 Lvl 4 (2/10)."""
game = Game(art, cfg, seed=6)
assert game.player.level == 1 and game.player.xp == 2 # 1-1-XP gebankt
assert game.player.level == 1 and game.player.xp == 0 # 1-1 gibt keine XP
checks = {}
while not game.over and game.round["label"] != "3-3":
checks[game.round["label"]] = (game.player.level, game.player.xp)
game.step()
assert checks["1-2"][0] == 1
assert checks["1-3"][0] == 3 # gratis Level 2 + kaskadierte XP
assert checks["2-1"] == (4, 0)
assert checks["3-2"] == (5, 6)
assert checks["1-2"] == (1, 0)
assert checks["1-3"] == (2, 0)
assert checks["1-4"] == (3, 0)
assert checks["2-1"] == (3, 2)
assert checks["2-5"] == (4, 2)
assert checks["3-2"] == (5, 0)