mirror of
https://github.com/prosolis/gogobee.git
synced 2026-07-16 00:52:40 +00:00
WIP: in-flight combat/expedition/flavor changes
Bundle of uncommitted working-tree edits across combat engine, expedition cycle, flavor pools, and TwinBee/zone narration. Includes new files: combat_debug.go, dnd_boss_consumables.go, dnd_dex_floor.go, plus CHANGES_24H.md and REBALANCE_NOTES.md scratch notes. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -76,9 +76,10 @@ func TestAdv2Scenario_ZoneRunGoblinWarrens(t *testing.T) {
|
||||
}
|
||||
|
||||
// Drive !zone advance until the run terminates (cleared, died, or
|
||||
// abandoned). Cap iterations as a safety net in case advance becomes
|
||||
// a no-op due to a regression.
|
||||
maxSteps := run.TotalRooms + 4
|
||||
// abandoned). When a fork is pending (Phase G branching graphs) auto-pick
|
||||
// the first option via `!zone go 1` so the test doesn't stall on a
|
||||
// diamond. Doubled iteration cap covers fork-then-advance pairs.
|
||||
maxSteps := (run.TotalRooms + 4) * 2
|
||||
clearedRoomTypes := []RoomType{}
|
||||
for step := 0; step < maxSteps; step++ {
|
||||
before, _ := getActiveZoneRun(uid)
|
||||
@@ -93,6 +94,13 @@ func TestAdv2Scenario_ZoneRunGoblinWarrens(t *testing.T) {
|
||||
}
|
||||
t.Logf("step %d: in room %d/%d (%s), mood=%d, HP=%d",
|
||||
step, before.CurrentRoom+1, before.TotalRooms, prevType, before.DMMood, prevHP)
|
||||
if len(before.NodeChoices) > 0 {
|
||||
// A fork is queued from the previous advance — commit it first.
|
||||
if err := p.handleDnDZoneCmd(MessageContext{Sender: uid}, "go 1"); err != nil {
|
||||
t.Fatalf("zone go step %d: %v", step, err)
|
||||
}
|
||||
continue
|
||||
}
|
||||
if err := p.handleDnDZoneCmd(MessageContext{Sender: uid}, "advance"); err != nil {
|
||||
t.Fatalf("zone advance step %d: %v", step, err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user