diff --git a/src/bot.py b/src/bot.py index c51f300..9aea698 100644 --- a/src/bot.py +++ b/src/bot.py @@ -123,7 +123,7 @@ class Bot: self._do_runs = { "run_level": Config().routes.get("run_level"), "run_cold_plains": Config().routes.get("run_cold_plains"), - "run_baal_xp": Config().routes.get("run_baal_xp") and Config().baal_xp.get("enabled", False), + "run_baal_xp": Config().routes.get("run_baal_xp", False) and Config().baal_xp.get("enabled", False), "run_trav": Config().routes.get("run_trav"), "run_pindle": Config().routes.get("run_pindle"), "run_shenk": Config().routes.get("run_eldritch") or Config().routes.get("run_eldritch_shenk"), @@ -1266,6 +1266,11 @@ class Bot: self._baal_xp_fails = 0 return self._do_runs["run_baal_xp"] = True + # Re-arm the route in the config layer too: on_maintenance re-reads + # Config().routes for its "any run left?" check, and a profile-level + # [routes] section that lacks run_baal_xp would otherwise read False + # there and send the bot to end_game instead of the next leech cycle. + Config().routes["run_baal_xp"] = True def _baal_xp_only(self) -> bool: """True when baal_xp is the only route configured."""