Terrain, line of sight and zones — 2026-09-05
Second batch, same rosters and seeds as the baseline, after the simulator gained terrain, elevation, line of sight, cover from geometry, zone scoring, and an AI that evaluates positions (modifier-aware shot value, threat, cover, high ground, zones). Crit margin is Armor + 4.
pnpm sim batch --a courier,foreman,reaver --b bastion,foreman,courier --map quarry -n 1000 --seed 1
pnpm sim batch --a courier,foreman,reaver --b bastion,foreman,courier -n 1000 --seed 1 # open field, deploy columns
=== quarry
A Courier, Foreman, Reaver win 34.4% avg kills 0.6
B Bastion, Foreman, Courier win 65.6% avg kills 1.3
draws 0.0% wipes 11.4% avg rounds 6.9 first kill round 4.3
map quarry zone points/game A 5.7 B 5.6
rounds 4:1 5:14 6:40 7:945
weapon fires shots hit% glance full crit cover dmg/shot dmg/hit kills
Rifle arm 13552 13552 51.5% 35.5% 57.1% 7.1% 0.3% 2.8 5.5 604
Missile rack 9434 18678 51.3% 35.8% 56.8% 7.0% 0.4% 1.8 3.5 407
Cannon arm 6317 6317 42.9% 7.0% 58.3% 32.2% 2.5% 4.0 9.3 522
Autocannon arm 4776 14091 53.5% 50.4% 47.2% 1.8% 0.5% 1.3 2.4 240
Pulse arm 1839 3659 48.3% 64.3% 32.5% 2.8% 0.5% 0.5 1.1 43
Blade arm 177 177 66.1% 13.7% 63.2% 23.1% 0.0% 4.9 7.4 31
=== open field
A Courier, Foreman, Reaver win 20.4% avg kills 0.4
B Bastion, Foreman, Courier win 79.6% avg kills 1.2
draws 0.0% wipes 8.5% avg rounds 7.0 first kill round 4.3
What it says
- Lethality collapsed once mechs stopped walking into each other. Kills per game fell from about 1.7 to 0.6–1.3 and wipes from 18% to 8–11%. The positional AI trades at long range from cover instead of closing; first kill moved from round 2.6 to round 4.3. Seven rounds now feel short for a kill-based decision and right for a zone-based one.
- Zones decide the map games, kills break the tie. 5.7 vs 5.6 zone points per game is near parity; the 34/66 split comes from the Bastion's cannon converting a few long shots into kills. That is the intended shape of the objective layer, at a lethality that is probably too low.
- Range beats everything on the open field. B wins 80% on flat ground with the same rosters that were 58% on the old charging AI. When nobody has to close, the twelve-hex cannon and ten-hex missiles decide games. The map narrows the gap to 66%: buildings and foliage break the long sightlines. This is the strongest argument yet for hand-crafted maps over open boards.
- Melee never happens. 177 blade attacks in 1000 games. The AI has no reason to close through fire, and no melee system (F11) rewards it. Blade and jump legs are dead weight until FEAT-009.
- Autocannon fell from king to middling. 63% hit and 2200 kills on the open charge became 53% and 240 kills. Its six-hex range keeps it out of most engagements now. Rifles and missiles carry the damage.
- Cover is doing its job quietly. Only 0.3–2.5% of hits land on cover because the AI avoids shooting into hard cover (modifier-aware valuation). The rule works by deterrence, which is what a cover rule should do.
- Speed. The positional AI costs a hundredfold: 80–130 games per second instead of ten thousand. Fine for thousand-game batches; a sweep tool will want sight caching (filed).
Next
Tuning targets, in order: lethality on maps (round cap, weapon ranges, or armor), the range-dominance of the Cannon and Missile rack, the melee system, and an AI aggression knob so we can tell rule problems from bot problems (TASK-001, TASK-007).
Tuning baseline — 2026-09-05
First batch against the rulebook v0 placeholder numbers. Default kits, board edges deployment, no cover, no elevation.
pnpm sim batch --a courier,foreman,reaver --b bastion,foreman,courier -n 2000 --seed 1
Batch: 2000 games, seeds 1..2000, 0.21s
A Courier, Foreman, Reaver win 42.1% avg kills 1.6
B Bastion, Foreman, Courier win 57.9% avg kills 1.8
draws 0.0% wipes 18.3% avg rounds 6.9 first kill round 2.6
rounds 4:9 5:31 6:99 7:1861
weapon fires shots hit% glance full crit cover dmg/shot dmg/hit kills
Autocannon arm 21889 63492 63.2% 49.3% 42.2% 8.5% 0.0% 1.5 2.4 2209
Cannon arm 12705 12705 58.6% 5.0% 41.6% 53.3% 0.0% 5.5 9.4 2173
Blade arm 5674 5674 90.8% 20.2% 47.7% 32.1% 0.0% 6.8 7.5 1042
Missile rack 9706 19035 52.2% 27.1% 47.9% 25.0% 0.0% 1.9 3.7 721
Rifle arm 8993 8993 52.2% 26.7% 49.4% 23.9% 0.0% 3.0 5.8 585
Pulse arm 4500 8960 31.9% 56.2% 38.1% 5.7% 0.0% 0.4 1.3 74
parts destroyed Head 2061 R Arm 2571 L Arm 2530 Core 6818 Back 2986 Legs 3155
stress rolls 1806: vents 595 exposed 884 meltdowns 327
lock-ons 9217/15021
build survive kills/g dealt/g taken/g
A: Courier 2.4% 0.1 4.7 24.0
A: Foreman 47.3% 0.5 24.6 23.8
A: Reaver 66.8% 1.0 38.7 23.1
B: Bastion 99.0% 1.1 34.8 9.2
B: Courier 2.9% 0.2 9.5 26.0
B: Foreman 40.8% 0.5 24.8 35.0
What it says
- Games go the distance. 93% reach round 7; only 18% are wipes. Kill points decide most games. With zones unmodelled this is expected to shift, but lethality is on the low side for a 20-minute target.
- The Bastion is nearly unkillable (99% survival, 9 damage taken per game). Core Armor 8 plus a Shield arm at Armor 9 turns rifles and autocannons into glances half the time. Either heavy armor comes down a point, or light weapons need Pen, or the Heavy pays more Weight.
- Cannon crits 53% of its hits. Pen 4 against Armor 5–6 means the d6 only needs a 4. The crit threshold of Armor + 3 is too easy for high-Pen weapons; consider Armor + 4, or a natural-6 requirement for crits.
- The Courier dies instantly (2–3% survival, dead by round 3). Evasion 14 is not enough to offset Hull 43 when everything in range shoots it first. Light mechs need either more Evasion, real cover use, or a reason for the AI not to focus them (zones would help).
- Autocannon is the kill engine (63% hit, three shots, 2209 kills). Burst weapons benefit disproportionately from a low Evasion floor: a +3 accuracy pilot hits a Heavy at 6 on a 3+.
- Pulse arm is a dud (32% hit, 0.4 damage per shot). Its heat-adding role never mattered because Bastion has Reactor 11.
- Stress is common. 1806 stress rolls in 2000 games, 327 meltdowns. The AI vents reactively; check whether players would actually run this hot before nerfing heat.
Caveats
No cover, no terrain, no zones, greedy AI that always focuses the lowest-hull target in reach. Numbers will move when those land. Use this as the "open field" reference point.
Re-baseline after the crit margin moved to Armor + 4 (same command, same seeds)
A Courier, Foreman, Reaver win 40.9% avg kills 1.6
B Bastion, Foreman, Courier win 59.1% avg kills 1.8
draws 0.0% wipes 17.2% avg rounds 6.9 first kill round 2.6
weapon fires shots hit% glance full crit cover dmg/shot dmg/hit kills
Autocannon arm 22183 64497 62.9% 49.1% 49.0% 1.9% 0.0% 1.5 2.4 2181
Cannon arm 12730 12730 58.6% 5.7% 57.8% 36.5% 0.0% 5.4 9.3 2073
Blade arm 5845 5845 89.8% 19.6% 63.5% 16.8% 0.0% 6.8 7.5 1075
Missile rack 9842 19343 52.6% 27.4% 60.6% 11.9% 0.0% 1.9 3.7 701
Rifle arm 9261 9261 53.0% 25.1% 64.1% 10.8% 0.0% 3.1 5.8 620
Pulse arm 4527 9016 32.1% 56.0% 41.3% 2.7% 0.0% 0.4 1.2 80
Cannon crits fell from 53% to 37% of hits, autocannon from 8.5% to 1.9%, blade from 32% to 17%. Win rates and game length did not move: crits were not what decided games on the open field, damage volume was. Finding 3 is addressed; findings 1, 2, 4 and 5 stand and wait on terrain and zones.


