docs: add the baal_xp leech cycle to the state machine section
The state list was missing baal_xp (and cold_plains) even though the route has been in bot.py since August. One short paragraph on how the cycle works, since it deliberately bypasses the run_wrapper pattern.
This commit is contained in:
+3
-1
@@ -258,7 +258,9 @@ Conversion functions in `screen.py`: `convert_monitor_to_screen()`, `convert_scr
|
||||
|
||||
`bot.py` uses the `transitions` library. States and transitions are defined at `Bot.__init__` time.
|
||||
|
||||
**States**: `initialization`, `hero_selection`, `town`, `level`, `pindle`, `shenk`, `trav`, `nihlathak`, `arcane`, `diablo`, `vizier`, `baal`, `mephisto`, `andariel`, `countess`
|
||||
**States**: `initialization`, `hero_selection`, `town`, `level`, `cold_plains`, `baal_xp`, `pindle`, `shenk`, `trav`, `nihlathak`, `arcane`, `diablo`, `vizier`, `baal`, `mephisto`, `andariel`, `countess`
|
||||
|
||||
**Baal XP leech** (`baal_xp` state, `on_run_baal_xp`): a self-contained cycle that does NOT use the run_wrapper/approach/battle pattern. It leaves the bot's own game, joins a public Baal game via the online lobby (`src/ui/game_browser.py`), hides and stands still to collect shared area XP, then leaves and re-enters its own game. The hide-and-wait phase is a pure wait — no maintenance, no runs, no pathing; the health manager thread keeps auto-potioning and the death manager handles the death screen. Config lives in the `[baal_xp]` section of `params.ini`; the route is `run_baal_xp` and re-arms itself between cycles via `_baal_xp_rearm`.
|
||||
|
||||
**Key transitions**:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user