Archetypen mit 60 Partien gemessen, Test tabellenunabhängig
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QPgKvy5W9WRNFHjkm5QsHx
This commit is contained in:
@@ -5,11 +5,11 @@ const OPPONENT_RARITY_WEIGHT := {"gewöhnlich": 6.0, "selten": 3.0, "episch": 2.
|
|||||||
# Abnehmende Resonanz je Anzahl gleichelementiger Partner (Index = Partner).
|
# Abnehmende Resonanz je Anzahl gleichelementiger Partner (Index = Partner).
|
||||||
const RESONANCE_STEPS := [0, 1, 2, 3, 3]
|
const RESONANCE_STEPS := [0, 1, 2, 3, 3]
|
||||||
|
|
||||||
# Gemessene Stärke der Elementkombinationen (Siegquote gegen das Feld, KI gegen KI, tests/strength_probe.gd).
|
# Gemessene Stärke der Elementkombinationen (Siegquote gegen das Feld, KI gegen KI, 60 Partien je Archetyp, tests/strength_probe.gd).
|
||||||
const ARCHETYPE_STRENGTH := {
|
const ARCHETYPE_STRENGTH := {
|
||||||
"Feuer": 40, "Wasser": 56, "Erde": 46, "Luft": 63,
|
"Feuer": 38, "Wasser": 38, "Erde": 55, "Luft": 55,
|
||||||
"Feuer+Wasser": 40, "Feuer+Erde": 83, "Feuer+Luft": 40,
|
"Feuer+Wasser": 45, "Feuer+Erde": 78, "Feuer+Luft": 46,
|
||||||
"Wasser+Erde": 53, "Wasser+Luft": 23, "Erde+Luft": 60,
|
"Wasser+Erde": 50, "Wasser+Luft": 45, "Erde+Luft": 78,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ func _initialize() -> void:
|
|||||||
var r := RandomNumberGenerator.new()
|
var r := RandomNumberGenerator.new()
|
||||||
r.seed = 21
|
r.seed = 21
|
||||||
var arts := archetypes()
|
var arts := archetypes()
|
||||||
var n := 30
|
var n := 60
|
||||||
var results := {}
|
var results := {}
|
||||||
for a in arts:
|
for a in arts:
|
||||||
var wins := 0
|
var wins := 0
|
||||||
|
|||||||
@@ -1240,7 +1240,11 @@ func test_deckstaerke_und_schwierigkeit() -> void:
|
|||||||
|
|
||||||
func test_starter_gegen_passende_gegner() -> void:
|
func test_starter_gegen_passende_gegner() -> void:
|
||||||
check(Game.archetypes("leicht").size() == 5 and Game.archetypes("schwer").size() == 5 and Game.archetypes().size() == 10, "Archetypen geteilt")
|
check(Game.archetypes("leicht").size() == 5 and Game.archetypes("schwer").size() == 5 and Game.archetypes().size() == 10, "Archetypen geteilt")
|
||||||
check("Wasser" in Game.archetypes("leicht") and "Erde+Luft" in Game.archetypes("schwer"), "schwache und starke Archetypen")
|
var table: Dictionary = DeckGen.ARCHETYPE_STRENGTH
|
||||||
|
var keys: Array = table.keys()
|
||||||
|
keys.sort_custom(func(a, b): return table[a] < table[b])
|
||||||
|
check(keys[0] in Game.archetypes("leicht") and keys[-1] in Game.archetypes("schwer"), "schwächster Archetyp in Leicht, stärkster in Schwer")
|
||||||
|
check(Game.archetypes("leicht").all(func(k): return table[k] <= table[Game.archetypes("schwer")[0]]), "Hälften nach Stärke getrennt")
|
||||||
var r := RandomNumberGenerator.new()
|
var r := RandomNumberGenerator.new()
|
||||||
r.seed = 6
|
r.seed = 6
|
||||||
var starter := Profile.starter().deck_cards()
|
var starter := Profile.starter().deck_cards()
|
||||||
|
|||||||
Reference in New Issue
Block a user