Queue: no length cap, make up to 9,999

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
rope 2026-10-27 22:53:08 +00:00
parent d564164edf
commit a723558fb2
4 changed files with 10 additions and 13 deletions

View file

@ -3214,8 +3214,6 @@ def queue_add(world: dict, player: dict, action_id: str, qty: int, now: float) -
return reason
if not (player["action"] and "left" in player["action"]):
return start_action(world, player, action_id, now, once=qty)
if len(player["queue"]) >= QUEUE_MAX:
return f"Queue full ({QUEUE_MAX})"
player["queue"].append({"id": action_id, "n": qty})
return None
@ -3983,8 +3981,7 @@ def working_order(world: dict, player: dict, action: dict) -> dict | None:
return order_by_id(world, current["order"])
MAKE_MAX = 1000 # most you can ask for in one "Make X"
QUEUE_MAX = 5 # makes lined up after the current one
MAKE_MAX = 9999 # most you can ask for in one "Make X"
def start_action(world: dict, player: dict, action_id: str, now: float, once: int = 0, skip: bool = False) -> str | None:
@ -6289,6 +6286,7 @@ ORDER_RECIPES, ORDER_RAW = _order_sources()
# line here (new / balance / fix), and a new release a new entry on top.
PATCH_NOTES = [
{"date": "2026-10-27", "title": "Prayer", "notes": [
("new", "Make X and queue counts go up to 9,999. Queue has no length cap."),
("balance", "Rebalanced favour values of items"),
("balance", "Prospecting: 3 ore per try (was 5), 50% gem chance (was 15%)."),
("new", "Dungeons: runs go on while anyone is watching. Members who look away fight on auto."),
@ -6426,7 +6424,7 @@ def content() -> dict:
"city_uses": {item: city_uses(item) for item in ITEMS},
"prayers": [{**prayer, "text": describe_prayer(prayer)} for prayer in PRAYERS], "max_prayers": MAX_PRAYERS,
"potion_charges": POTION_CHARGES, "jerkin_defence": JERKIN_DEFENCE, "order_recipes": ORDER_RECIPES, "order_raw": ORDER_RAW,
"order_limit": ORDER_LIMIT, "order_max": ORDER_MAX, "make_max": MAKE_MAX, "queue_max": QUEUE_MAX, "input_share": INPUT_SHARE, "problems": PROBLEMS, "fittings": list(FITTING_BY_ID.values()),
"order_limit": ORDER_LIMIT, "order_max": ORDER_MAX, "make_max": MAKE_MAX, "input_share": INPUT_SHARE, "problems": PROBLEMS, "fittings": list(FITTING_BY_ID.values()),
"equip_slots": EQUIP_SLOTS, "class_speed": CLASS_SPEED, "rest_rate": REST_RATE, "bite": BITE, "eat_below": EAT_BELOW, "eat_choices": EAT_CHOICES,
"abilities": combat.ABILITIES, "enemy_abilities": combat.ENEMY_ABILITIES, "unlock": combat.UNLOCK, "auto_cd": combat.AUTO_CD, "watch": combat.WATCH, "gcd": combat.GCD,
"weapon_kits": combat.WEAPON_KITS, "group_size": GROUP_SIZE, "dungeon_size": DUNGEON_SIZE, "dungeon_wipes": DUNGEON_WIPES, "trade_ability": combat.TRADE_ABILITY, "potion_below": combat.POTION_BELOW,