Skip to content

server: improve autonomous hunt, travel, and supply recovery - #186

Merged
adrunkhuman merged 4 commits into
masterfrom
feat/playerbot-adaptive-remote-hunts
Sep 13, 2026
Merged

adrunkhuman merged 4 commits into
masterfrom
feat/playerbot-adaptive-remote-hunts

Conversation

@adrunkhuman

Copy link
Copy Markdown
Owner
  • Let local and NPC-travel-accessible hunts compete in one supply-aware ranking. Incremental route validation checks outbound travel, a depot exit near the hunt, and any required supplier route while protecting fares and recovery funds.
  • Keep broke bots productive: separate the two-potion safety floor from optional shopping stock, suppress unchanged failed restocks, and allow short, conservative income-recovery hunts instead of repeated Service selection.
  • Adjust challenge pressure from sustained combat evidence, share reliable XP corrections with untested variants, and add session-local potion-consumption estimates.
  • Give blocked transit a bounded no-chase breakout rather than repeating failed routes. Preserve blocker evidence across nearby depot-approach changes.
  • Increase the default hunt duration from 25 to 40 minutes, delay capacity-driven returns until 30 minutes, and buy up to 20 potions while shopping unless saving for eligible Light Healing or protecting a larger route reserve.
  • Add focused recovery/remote-hunt scenarios and policy coverage for transport, supply budgets, calibration, and transit failures.

Known limits

  • Hunt selection remains too conservative. Static damage and potion forecasts substantially exceed observed consumption on weak hunts. Capability changes—including levels, skills, and food-regeneration state—can discard potion-learning samples; the ordinary progression run still reports zero accepted samples. This is an initial learning path, not a solved adaptive combat model.
  • Learned hunt state lasts only for the controller session. Stronger-hunt exploration and reusable per-monster cost learning remain follow-up work.
  • Whole-map planning latency remains a follow-up in Bound hunt planning work and distinguish slice time from selection latency #184. NPC travel supports registered, non-opaque offers, not arbitrary scripted transport. This does not complete the three-town level 8–20 benchmark.

Related: #51, #46, #148, #28, #38, #54.

- Hunt calibration: shared bounded corrections for untested regions,
  no candidate ceiling, compact topology reachability with incremental
  transport validation, and fixture-only planning horizons.
- Supply recovery replaces the insufficient-potion-funds terminal:
  degraded challenge frontier, gold/safety-weighted region selection,
  affordable partial restock, and survival selling at the nearest
  reachable safe merchant when no profitable trip exists.
- Transit escape: progress-based fixed-goal failure accounting,
  one no-chase defense attempt per episode, persistent corridor
  blockers confirmed route-critical on repeat detours, exhaustion
  honored on nominally successful plans, and a bounded 30-second
  breakout. Depot replans respect suppressed tiles and defer the
  depot-unavailable stop while a blocker is active.
- Gameplay fixture fixes: guaranteed-loot monster no longer races
  defensive AI; mainland loop uses a fixture-only planning horizon.
A full box-in produces plan failures instead of detours, so the
detour-driven escalation never accumulated: failed depot route
validations (including failed NPC-travel approach legs) now feed
fixed-goal failure accounting, and any failed fixed-goal route with
adjacent hostiles confirms those monsters route-critical so transit
defense engages immediately. Exhaustion, breakout, and the bounded
terminal fallback follow as before.
Keep a 2-potion safety floor only while Light Healing is level-eligible
and unlearned. Otherwise leftover gold buys up to 20 flasks so 40-minute
hunts are not stuck on two-flask trash spawns. Capacity pressure still
replaces cargo but cannot end a hunt before 30 minutes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant