Wiki / Player Guide / Food Mill & variety

Food Mill & bazaar variety

Optional Enhanced feature: bazaars fill food variety before pottery, and a Food Mill stages mixed foods for smarter buyers. Default is OFF (original Pharaoh buyer priorities).

What it does

  1. Enable bazaar food variety + Food Mill under Features → Gameplay (gameplay_enhanced_food_mill).
  2. Even without a mill, bazaars prefer understocked foods over empty goods until they hold enough distinct food types.
  3. Build a Food Mill from Distribution (next to Granary) when the flag is on — placeholder green cubes until art lands.
  4. Set mill orders to GET foods from granaries / storage yards. Farms still deliver to granaries first.
  5. On the bazaar Orders panel, set Desired / Minimum food variety (defaults 2 / 1).

This is not Pharaoh/Cleopatra parity — inspired by Emperor: Rise of the Middle Kingdom mills, without salt/spices. House evolution still uses ordinary food slots (no quality token in homes).

Without a mill (Slice B)

While the bazaar inventory has fewer than Desired food types (capped by how many foods the city allows and the bazaar accepts), buyers fetch foods before empty pottery/linen/etc. If no food is available anywhere, they still fall back to goods so the city does not soft-lock.

With multi-buyer bazaars also enabled, complementary “goods first while a food buyer is out” is suspended until variety is satisfied.

Food Mill

Fieldv1
Size / labor3×3, Food Production category (~12 workers)
CapacityFood only; per-type cap (default 800) + total capacity
Quality labelNumber of distinct foods in stock: Bland → Tasty (0–4)
City food monthsStaffed mill stock (≥50% workers, road access) counts like granary food

Bazaars prefer a staffed mill on the same road network for foods it holds; missing types still come from granary/yard. If some mill has partial variety below your Minimum and none meet the minimum, buyers wait (no pottery substitute). Empty mills do not block granary fetches.

Bazaar orders (flag ON)

The bazaar info panel shows Waiting for mill food variety when that wait is active.

Supply chain

Farms → Granary / Storage Yard → Food Mill (GET) → Bazaar buyer → Houses

Related: Bazaar (multi-buyer is a separate flag).

Developer Reference

Flag: gameplay_enhanced_food_mill (default OFF)

Engine: src/building/building_food_mill.*, building_bazaar.*, figure_market_buyer.*, city_resource.cpp (mill in food months)

UI: src/scripts/ui_food_mill_info.js, ui_bazaar_orders_window.js

Overlay: Food Stocks lists BUILDING_FOOD_MILL

Tests: tests/149_bazaar_food_variety.js, 153|155|156_food_mill*.js, 159_bazaar_mill_buyer.js

Save: bazaar desired_variety / min_variety from version 185