update
This commit is contained in:
32
.planer/einheiten/backend__tft__model__baseline.py.md
Normal file
32
.planer/einheiten/backend__tft__model__baseline.py.md
Normal file
@@ -0,0 +1,32 @@
|
||||
# Einheiten: backend/tft/model/baseline.py
|
||||
stand: f41ac76b5789
|
||||
|
||||
## backend/tft/model/baseline.py::unit_value
|
||||
beschreibung: Berechnet einen numerischen Einheitenwert aus Einkaufskosten und Stern-Aufstufung.
|
||||
input: cost (int) und stars (int)
|
||||
output: float-Wert gemäß cost · 3^(stars−1)
|
||||
entscheidungen:
|
||||
- Höhere Sternstufen werden exponentiell gewichtet, nicht additiv.
|
||||
beleg: "cost * 3 ** (stars - 1)"
|
||||
- Die Berechnung ist rein deterministisch ohne Seiteneffekte.
|
||||
beleg: "def unit_value(cost: int, stars: int) -> float:"
|
||||
- Das Ergebnis skaliert mit den Kosten der Einheit.
|
||||
beleg: "return cost * 3 ** (stars - 1)"
|
||||
kanten:
|
||||
- wird-genutzt-von: backend/tft/model/baseline.py::classify_role
|
||||
|
||||
## backend/tft/model/baseline.py::classify_role
|
||||
beschreibung: Ordnet eine Einheit über ihr Rollenattribut (mit Statistik-Fallback) einer strategischen Rolle zu.
|
||||
input: unit (dict) mit mindestens den Schlüsseln "role" und "stats"
|
||||
output: eine der vier Rollenstrings frontline | ad_carry | ap_carry | utility
|
||||
entscheidungen:
|
||||
- Fehlende Rollen werden über das letzte Element zu frontline bzw. ad_carry aufgelöst.
|
||||
beleg: "return \"frontline\" if stats[\"range\"] <= 1 else \"ad_carry\""
|
||||
- Treffererkennung erfolgt robust auf Teilstrings statt auf exakter Gleichheit.
|
||||
beleg: "if \"tank\" in role:"
|
||||
- Magische/AD-Rollen werden gegenüber dem Stat-Fallback bevorzugt geprüft.
|
||||
beleg: "if \"caster\" in role or \"ap\" in role:"
|
||||
- Die Normalisierung der Rolle erfolgt via lower() auf einen Default-leeren String.
|
||||
beleg: "(unit.get(\"role\") or \"\").lower()"
|
||||
kanten:
|
||||
- wird-genutzt-von: backend/tft/model/baseline.py::unit_value
|
||||
Reference in New Issue
Block a user