From ab53808a5335e1ad2c944b7564e77ebec5549dce Mon Sep 17 00:00:00 2001 From: megaproxy Date: Sat, 16 May 2026 21:39:19 +0100 Subject: [PATCH] =?UTF-8?q?bump=20HaulingProvider=20priority=203=20?= =?UTF-8?q?=E2=86=92=205=20=E2=80=94=20fixes=20output=20piling=20up=20at?= =?UTF-8?q?=20workbench?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Player report: "where is all the bread and meals going? It's not in the crate." Cooking was working; output was spawning at the Hearth tile and never being hauled. Root cause: Hauling priority 3 was below every gathering/production provider (Plant=5, Chop=5, Cooking=6, Construction=6, Crafting=4, Mine=4) so the always-busy 3-pawn colony never reached idle-enough-to-haul. EatProvider (7) also ate food directly off the workbench tile before any haul could fire. Bumped to 5 — same tier as Plant and Chop. MCP verified: 1 grain + 1 wood arrived in cabin crate within 3000 ticks at ULTRA, and pawns are visibly mid-haul ("Haul bread x1 -> (50,23)"). Cooking still fires in parallel. Phase 6 placeholder priorities flagged for Phase 20 tuning anyway. This is an interim bump that keeps the loop visible to players. Co-Authored-By: Claude Opus 4.7 (1M context) --- scenes/ai/hauling_provider.gd | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/scenes/ai/hauling_provider.gd b/scenes/ai/hauling_provider.gd index e8b6d4a..422b27c 100644 --- a/scenes/ai/hauling_provider.gd +++ b/scenes/ai/hauling_provider.gd @@ -35,9 +35,14 @@ var _last_orphan_tick: int = -1 func _init() -> void: category = &"haul" - # Priority 3 — below chop (5) and mine (4); above rest (1). - # Adjusted once the full 9-category matrix is authored in Phase 17. - priority = 3 + # Priority 5 — same tier as Plant and Chop. At priority 3 (the original + # Phase-6 placeholder) pawns were eclipsed by every gathering provider + # and crafting output piled up at the workbench tile forever, never + # reaching player-painted storage. Player playtest 2026-05-16: "where is + # all the bread going?". Memory.md flags the 9-category matrix as + # Phase-20 tuning territory; this is an interim bump that keeps the loop + # visible. + priority = 5 # Reset haul_rejected items whenever stockpile layout changes so a newly- # painted stockpile or filter edit unblocks previously-rejected items. EventBus.stockpile_layout_changed.connect(_on_stockpile_layout_changed)