Files
gogobee/sim_results/j3_traces.err
prosolis f2c2d774d4 J2: sim picker casts+consumes; T5 raid-content warning
The post-J1 sweep had the casters clustered at 19–22% L12 clear, vs
martials at 70–80%. A per-round trace across 240 boss-room fights showed
why: autoResolveCombat dispatched !attack only — zero spell_casts, zero
mid-fight consumable uses across every caster class. The entire "caster
cliff" was the sim measuring a strawman where casters couldn't cast.

J2a teaches the sim's autoResolveCombat to mirror a competent prod
player: heal at low HP if an inventory consumable is available, otherwise
cast the highest-EV damage spell (slot or cantrip), otherwise swing.
BuildCharacter now seeds the known-spell list via ensureSpellsForCharacter
so the synthetic spellbook is populated. A -trace flag on the cmd
attaches the raw CombatEvent stream to the last combat of each run for
post-hoc diagnostics.

A first re-baseline (n=100, all 10 classes) showed Ranger regressed
-35.8pp — the picker was burning L3 slots on lightning_arrow when
Ranger's weapon chassis (Hunter's Mark + Extra Attack) was the better
play. Added simMartialFirstClass to gate the picker off for Ranger and
Paladin (whose default kit is also weapon-first / no damage spells).
J2c experimented with widening the picker to control + heal spells;
heal-spell preempt cost druid 10pp (slot heals are 10HP vs 40HP
consumables) and control-spell scoring at 22 cost warlock 6.6pp. Both
reverted. Corpora retained under baseline_j2c*.jsonl for the post-mortem
in sim_results/j2b_findings.md.

Post-J2 L12 leaderboard (baseline_j2a_v2_all10.jsonl, n=100):
  fighter 80.0, ranger 80.0, paladin 78.4, rogue 76.8,
  druid 61.6, mage 53.4, sorcerer 50.6, warlock 48.2,
  bard 40.4, cleric 39.0.

The caster cluster is dissolved; martials are within ±5pp of J1 (sweep
noise). Bard/cleric still trail, but it's no longer a sim artifact —
their defaultKnownSpells damage rosters cap at L2 and the picker can't
pick spells they don't have. That's a prod-level fix, deferred.

J3 trace (sim_results/j3_findings.md): T5 dragons_lair walls every solo
class at 0% (Infernax 546 HP vs solo player HP 110–175; ~25% boss HP
eaten before TPK across all classes). Per the J3 plan menu, this is
party-shaped content the engine doesn't yet have parties for. Surface
a TwinBee-voiced heads-up in handleDnDExpeditionCmd's start path and a
matching tag in !expedition list — players see "raid-shaped — solo
runs not yet survivable" before they spend outfitting coin. No combat
or class balance changes.

Files: cmd/expedition-sim/main.go +trace flag; expedition_sim.go picker
+ SimCombatSummary.Events + spellbook seed; dnd_expedition_cmd.go
raidContentWarning + list tag. All baselines + traces + findings
checked in under sim_results/.
2026-05-17 15:43:41 -07:00

91 lines
9.2 KiB
Plaintext

2026/05/17 15:34:22 INFO database initialized path=/tmp/expedition-sim-3937486981/gogobee.db
2026/05/17 15:34:22 INFO database initialized path=/tmp/expedition-sim-3578458476/gogobee.db
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-1544593455/gogobee.db
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-67658511/gogobee.db
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-2710175851/gogobee.db
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-3311525977/gogobee.db
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-1482370118/gogobee.db
2026/05/17 15:34:23 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-0 ability="Second Wind"
2026/05/17 15:34:23 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-0 ability="Second Wind"
2026/05/17 15:34:23 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-0 ability="Second Wind"
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-573218642/gogobee.db
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-2555594716/gogobee.db
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-1293820254/gogobee.db
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-2922091846/gogobee.db
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-2255769101/gogobee.db
2026/05/17 15:34:23 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-1 ability="Second Wind"
2026/05/17 15:34:23 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-1 ability="Second Wind"
2026/05/17 15:34:23 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-1 ability="Second Wind"
2026/05/17 15:34:23 INFO database initialized path=/tmp/expedition-sim-4141510411/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-2327156998/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-3831482955/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-3224447098/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-3972171829/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-2507866628/gogobee.db
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-2 ability="Second Wind"
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-2 ability="Second Wind"
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-2 ability="Second Wind"
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-2702751982/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-814091512/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-1701622760/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-2474663970/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-3500203401/gogobee.db
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-3 ability="Second Wind"
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-3 ability="Second Wind"
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-3 ability="Second Wind"
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-1597673037/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-3746346522/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-2947709156/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-2279228254/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-1330280095/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-1007046865/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-3808145558/gogobee.db
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-4 ability="Second Wind"
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-4 ability="Second Wind"
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-4 ability="Second Wind"
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-3669887885/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-3912763644/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-2891748518/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-1827307519/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-4109127351/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-253619287/gogobee.db
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-5 ability="Second Wind"
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-5 ability="Second Wind"
2026/05/17 15:34:24 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-5 ability="Second Wind"
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-889111768/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-3994033199/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-2355572633/gogobee.db
2026/05/17 15:34:24 INFO database initialized path=/tmp/expedition-sim-2955130129/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-3040643250/gogobee.db
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-6 ability="Second Wind"
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-6 ability="Second Wind"
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-6 ability="Second Wind"
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-996326193/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-1026834926/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-874236375/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-628985075/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-4278591308/gogobee.db
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-7 ability="Second Wind"
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-7 ability="Second Wind"
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-7 ability="Second Wind"
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-1333675344/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-3247890534/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-3858591699/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-1397281242/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-2332733301/gogobee.db
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-8 ability="Second Wind"
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-8 ability="Second Wind"
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-8 ability="Second Wind"
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-2396625240/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-1690573929/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-1681341943/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-3006146542/gogobee.db
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-9 ability="Second Wind"
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-9 ability="Second Wind"
2026/05/17 15:34:25 INFO dnd: armed ability fired (turn-based build) user=@sim:fighter-l12-dragons_lair-9 ability="Second Wind"
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-799921603/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-442683998/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-3139041772/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-2602959398/gogobee.db
2026/05/17 15:34:25 INFO database initialized path=/tmp/expedition-sim-3028049942/gogobee.db