# balanceall: grid mode | iterations/cell=120
#   tiered: duration center 330s ΓåÆ 660s | hero HP center 66% ΓåÆ 26% (level mid in [1,35], gamma=1.50); ┬▒10.0% dur / ┬▒6.0 pp HP
#   levels: heroLv==enemyLv for each L in [min_level..max_level]; gear: 4 variants

# baseline wolf (grid 20 cells): medOfMedDur=290.6s medOfMedHp=77.0% medWin=100.0% minWin=100.0%
#   tier: norm=0.059 curve=0.014 | targetSec=334.7s heroHpMid=65.4% | bands dur [301.2,368.2] hp [60.0%,71.4%] (┬▒6.0 pp)
## wolf (grid)
   hpScale=1.1322 atkScale=1.1230 | medOfMed(win)=330.2s medOfMed(heroHp%)=67.0% medWin=100.0% minWin=29.2%
   per-cell median ranges: dur [303.8s, 372.5s] heroHp% [6.4%, 74.0%]
UPDATE enemies SET hp = 94, max_hp = 94, hp_per_level = 7.8681, attack = 20, attack_per_level = 2.7054 WHERE type = 'wolf';

# baseline boar (grid 20 cells): medOfMedDur=200.0s medOfMedHp=88.0% medWin=100.0% minWin=100.0%
#   tier: norm=0.088 curve=0.026 | targetSec=338.6s heroHpMid=65.0% | bands dur [304.8,372.5] hp [60.0%,71.0%] (┬▒6.0 pp)
## boar (grid)
   hpScale=1.7875 atkScale=1.0410 | medOfMed(win)=356.6s medOfMed(heroHp%)=67.3% medWin=100.0% minWin=99.2%
   per-cell median ranges: dur [303.8s, 411.0s] heroHp% [35.5%, 82.0%]
UPDATE enemies SET hp = 102, max_hp = 102, hp_per_level = 8.2826, attack = 25, attack_per_level = 2.3190 WHERE type = 'boar';

# baseline zombie (grid 24 cells): medOfMedDur=231.2s medOfMedHp=74.5% medWin=94.2% minWin=88.3%
#   tier: norm=0.132 curve=0.048 | targetSec=345.9s heroHpMid=64.1% | bands dur [311.3,380.5] hp [60.0%,70.1%] (┬▒6.0 pp)
## zombie (grid)
   hpScale=1.5691 atkScale=1.0000 | medOfMed(win)=359.6s medOfMed(heroHp%)=60.0% medWin=80.8% minWin=45.8%
   per-cell median ranges: dur [303.8s, 389.6s] heroHp% [44.2%, 77.0%]
UPDATE enemies SET hp = 107, max_hp = 107, hp_per_level = 6.9412, attack = 28, attack_per_level = 2.5898 WHERE type = 'zombie';

# baseline spider (grid 24 cells): medOfMedDur=300.0s medOfMedHp=73.6% medWin=100.0% minWin=100.0%
#   tier: norm=0.162 curve=0.065 | targetSec=351.5s heroHpMid=63.4% | bands dur [316.3,386.6] hp [60.0%,69.4%] (┬▒6.0 pp)
## spider (grid)
   hpScale=1.1322 atkScale=1.0820 | medOfMed(win)=337.5s medOfMed(heroHp%)=61.8% medWin=100.0% minWin=5.0%
   per-cell median ranges: dur [282.6s, 365.2s] heroHp% [3.3%, 74.5%]
UPDATE enemies SET hp = 118, max_hp = 118, hp_per_level = 12.0614, attack = 24, attack_per_level = 2.7373 WHERE type = 'spider';

# baseline orc (grid 32 cells): medOfMedDur=166.1s medOfMedHp=88.3% medWin=100.0% minWin=100.0%
#   tier: norm=0.221 curve=0.104 | targetSec=364.2s heroHpMid=61.9% | bands dur [327.8,400.6] hp [60.0%,67.9%] (┬▒6.0 pp)
## orc (grid)
   hpScale=2.2244 atkScale=1.0410 | medOfMed(win)=353.0s medOfMed(heroHp%)=65.0% medWin=100.0% minWin=8.3%
   per-cell median ranges: dur [275.0s, 427.1s] heroHp% [3.3%, 86.4%]
UPDATE enemies SET hp = 113, max_hp = 113, hp_per_level = 7.1338, attack = 27, attack_per_level = 2.6581 WHERE type = 'orc';

# baseline skeleton_archer (grid 36 cells): medOfMedDur=231.3s medOfMedHp=80.0% medWin=100.0% minWin=99.2%
#   tier: norm=0.265 curve=0.136 | targetSec=374.9s heroHpMid=60.6% | bands dur [337.4,412.4] hp [58.7%,66.6%] (┬▒6.0 pp)
## skeleton_archer (grid)
   hpScale=1.7875 atkScale=1.0000 | medOfMed(win)=403.4s medOfMed(heroHp%)=62.5% medWin=100.0% minWin=46.7%
   per-cell median ranges: dur [312.5s, 485.5s] heroHp% [9.9%, 82.7%]
UPDATE enemies SET hp = 132, max_hp = 132, hp_per_level = 8.5586, attack = 28, attack_per_level = 2.2939 WHERE type = 'skeleton_archer';

# baseline battle_lizard (grid 36 cells): medOfMedDur=106.8s medOfMedHp=92.4% medWin=100.0% minWin=100.0%
#   tier: norm=0.294 curve=0.160 | targetSec=382.6s heroHpMid=59.6% | bands dur [344.4,420.9] hp [56.2%,65.6%] (┬▒6.0 pp)
## battle_lizard (grid)
   hpScale=3.0981 atkScale=1.0410 | medOfMed(win)=370.2s medOfMed(heroHp%)=61.1% medWin=100.0% minWin=96.7%
   per-cell median ranges: dur [262.5s, 462.9s] heroHp% [26.7%, 90.0%]
UPDATE enemies SET hp = 105, max_hp = 105, hp_per_level = 5.7476, attack = 32, attack_per_level = 2.4140 WHERE type = 'battle_lizard';

# baseline fire_demon (grid 44 cells): medOfMedDur=225.8s medOfMedHp=45.8% medWin=71.7% minWin=40.8%
#   tier: norm=0.412 curve=0.264 | targetSec=417.2s heroHpMid=55.4% | bands dur [375.5,458.9] hp [46.7%,64.2%] (┬▒8.8 pp)
## fire_demon ΓÇö SKIP: grid balance failed (try -legacy or adjust template)

# baseline ice_guardian (grid 44 cells): medOfMedDur=129.2s medOfMedHp=80.3% medWin=100.0% minWin=100.0%
#   tier: norm=0.471 curve=0.323 | targetSec=436.5s heroHpMid=53.1% | bands dur [392.9,480.2] hp [41.7%,64.5%] (┬▒11.4 pp)
## ice_guardian (grid)
   hpScale=3.7078 atkScale=0.9604 | medOfMed(win)=463.1s medOfMed(heroHp%)=46.5% medWin=100.0% minWin=4.2%
   per-cell median ranges: dur [335.5s, 557.9s] heroHp% [3.3%, 92.4%]
UPDATE enemies SET hp = 208, max_hp = 208, hp_per_level = 7.5649, attack = 37, attack_per_level = 3.0394 WHERE type = 'ice_guardian';

# baseline skeleton_king (grid 44 cells): medOfMedDur=336.8s medOfMedHp=55.6% medWin=100.0% minWin=100.0%
#   tier: norm=0.559 curve=0.418 | targetSec=467.9s heroHpMid=49.3% | bands dur [421.1,514.6] hp [33.9%,64.7%] (┬▒15.4 pp)
## skeleton_king (grid)
   hpScale=1.3506 atkScale=1.0000 | medOfMed(win)=452.9s medOfMed(heroHp%)=39.2% medWin=100.0% minWin=94.2%
   per-cell median ranges: dur [363.8s, 543.9s] heroHp% [14.5%, 62.0%]
UPDATE enemies SET hp = 149, max_hp = 149, hp_per_level = 4.1663, attack = 24, attack_per_level = 1.8339 WHERE type = 'skeleton_king';

# baseline water_element (grid 44 cells): medOfMedDur=175.0s medOfMedHp=81.2% medWin=100.0% minWin=100.0%
#   tier: norm=0.647 curve=0.520 | targetSec=501.8s heroHpMid=45.2% | bands dur [451.6,551.9] hp [25.8%,64.5%] (┬▒19.4 pp)
## water_element (grid)
   hpScale=2.6612 atkScale=1.0000 | medOfMed(win)=453.2s medOfMed(heroHp%)=47.3% medWin=100.0% minWin=7.5%
   per-cell median ranges: dur [387.7s, 522.5s] heroHp% [6.2%, 90.8%]
UPDATE enemies SET hp = 349, max_hp = 349, hp_per_level = 8.0285, attack = 45, attack_per_level = 3.1288 WHERE type = 'water_element';

# baseline forest_warden (grid 44 cells): medOfMedDur=90.6s medOfMedHp=91.5% medWin=100.0% minWin=100.0%
#   tier: norm=0.706 curve=0.593 | targetSec=525.7s heroHpMid=42.3% | bands dur [473.1,578.3] hp [20.5%,64.3%] (┬▒22.0 pp)
## forest_warden (grid)
   hpScale=5.2825 atkScale=1.0000 | medOfMed(win)=493.0s medOfMed(heroHp%)=44.8% medWin=100.0% minWin=10.8%
   per-cell median ranges: dur [389.5s, 589.0s] heroHp% [6.2%, 92.8%]
UPDATE enemies SET hp = 338, max_hp = 338, hp_per_level = 6.1288, attack = 50, attack_per_level = 3.5033 WHERE type = 'forest_warden';

# baseline lightning_titan (grid 44 cells): medOfMedDur=173.8s medOfMedHp=84.7% medWin=100.0% minWin=85.8%
#   tier: norm=0.853 curve=0.788 | targetSec=590.0s heroHpMid=34.5% | bands dur [531.0,648.9] hp [20.0%,63.1%] (┬▒28.6 pp)
## lightning_titan (grid)
   hpScale=3.5788 atkScale=0.9412 | medOfMed(win)=608.3s medOfMed(heroHp%)=66.7% medWin=100.0% minWin=0.8%
   per-cell median ranges: dur [542.3s, 681.8s] heroHp% [6.9%, 71.2%]
UPDATE enemies SET hp = 583, max_hp = 583, hp_per_level = 11.1055, attack = 48, attack_per_level = 2.9104 WHERE type = 'lightning_titan';

