lofts materials economy — dev notes

generated 2026-07-27 · v11 scale (pre-reprice: divide coins by 10, quantities unchanged) · internal

Attachments: materials-cost-sheet.md (all numbers) · full plan only if you want the reasoning

The ask

Reply with rough sizing per drop (S/M/L/XL each). Calendar comes from your numbers. Push back on anything.

Summary

3 drops. Coin prices unchanged — material baskets stack on top.

  1. D1: comfort score + ambience + worker meal scenes (cosmetic). Zero economy changes.
  2. D2: new crop WILLOW_WOOD + construction baskets + blueprint/staged builds.
  3. D3: wages → food upkeep + machine upkeep trickle + 12h unattended cap.

Drop 1

Drop 2

Drop 3

Your calls

  1. Stockpile protection — pick one: (a) per-item never-auto-sell lock toggle, commit just checks stock; (b) escrow/earmark at blueprint confirm. Whichever you can make structurally safe.
  2. Staged-build concurrency — pastes are the heaviest op; 07-09 audit logged 551ms main-thread stalls at 11 players. Suggestion: serialize + FIFO + "crew busy" message. Your call.
  3. Rollback — if you do kill-switches: construction-off = coin-only, upkeep-off = wages resume, comfort-off = 1.0x.

Hard requirements

Blocking questions (carried from v11, still open)

  1. economyVersion is 14 now (v11 spec assumed 10) — what do the bumps contain, what migration fires on a bump?
  2. Can we get a jar↔config version gate so partial deploys fail loud?
  3. Anything else on the XConomy MySQL? Any $-denominated columns besides wallets?

Open (owner deciding — don't build ahead)

Numbers

Materials-Economy Cost Sheet (v11 scale) — generated, do not hand-edit

Generated by gen-cost-sheet.py. Dial: materialShare = 0.4.

Pre-v11 servers: divide coin/value figures by 10; quantities unchanged.

Willow Sapling (new crop → item WILLOW_WOOD)

PropertyValue
Player-tended grow time7200s (matches bamboo)
Farmer-serviced time1250s
Yield per mature stack4 WILLOW_WOOD
Sell value (NPC floor, never buyable)90 each
Plant price300
$/plot-hr serviced1,037 = 21.6% of wheat (invariant: 20-25%) PASS
Basket parity value (conversion only)417/wood (wheat plot-hr parity)
Protectionprotected from all automatic drains by default from ship

Construction baskets (coin price unchanged + basket consumed at commit)

Buildablev11 coinsBasketBasket valueWillow plot-hrs
Garden f1 (unlock)000.0
Garden f250,00048 WILLOW_WOOD20,0004.2
Garden f3350,000336 WILLOW_WOOD140,00029.2
Garden f42,000,0001920 WILLOW_WOOD800,000166.7
Processing room7,50030 WILLOW_WOOD3,0002.6
Bakery room025 WILLOW_WOOD + 10 FLOUR02.2
Apiary room60,00035 WILLOW_WOOD + 7 WAX24,0003.0
Rocket silo1,000,000480 WILLOW_WOOD + 7 COAL + 12 CACTUS_FIBER (or 6 BAMBOO_FIBER)400,00041.7
Machine: Mixer5,00010 WILLOW_WOOD2,0000.9
Machine: Oven20,00012 WILLOW_WOOD + 1 COAL8,0001.0
Machine: Refinery100,00058 WILLOW_WOOD + 12 WAX40,0005.0
Machine: Press550,000264 WILLOW_WOOD + 4 COAL + 7 CACTUS_FIBER (or 3 BAMBOO_FIBER)220,00022.9

Tier upgrades (era = band containing tier N−1; T2-3 use T1-3)

Upgradev11 coinsWoodEra food (representative)Willow plot-hrs
T1→T250,00024 WILLOW_WOOD6 BREAD2.1
T2→T3100,00048 WILLOW_WOOD11 BREAD4.2
T3→T4200,00096 WILLOW_WOOD22 BREAD8.3
T4→T5400,000192 WILLOW_WOOD5 PUMPKIN_PIE16.7
T5→T6800,000384 WILLOW_WOOD10 PUMPKIN_PIE33.3
T6→T71,600,000768 WILLOW_WOOD20 PUMPKIN_PIE66.7
T7→T83,200,0001,536 WILLOW_WOOD42 FIBER_CRACKER133.3
T8→T96,400,0003,072 WILLOW_WOOD85 FIBER_CRACKER266.7
T9→T1012,800,0006,144 WILLOW_WOOD2,560,000 value in T9-10 goods (LIVE VALUES — Rob fills from jar catalog: NETHER_LOAF, SUNBLOSSOM_TART, PITCHER_PRESERVE)533.3

Plot-hrs column is the visibility the review asked for in place of a hard cap — Rob sees every wall's size before shipping it.

Worker food upkeep (drop 3 — replaces wages)

FOOD itemv11 valueMeals
BREAD1,8001.0
HONEY_BUN3,7002.1
CARROT_LOAF3,3001.8
POTATO_ROLL3,3001.8
HONEY_BREAD4,6002.6
BEET_BREAD7,0003.9
BERRY_TART8,4004.7
MELON_TART11,7006.5
FIBER_CRACKER15,1008.4
PUMPKIN_PIE15,8008.8
GLAZED_BUN20,30011.3
ROYAL_PASTRY42,50023.6
NETHER_LOAF(live jar value)value ÷ 1,800
SUNBLOSSOM_TART(live jar value)value ÷ 1,800
PITCHER_PRESERVE(live jar value)value ÷ 1,800

Machine upkeep trickle (drop 3 — steady-state sink)

Comfort points (drop 1)

Furniture groupv11 pricePoints per item
Apartment60,0008
Kitchen40,0006
Bedroom40,0006
Fairy35,0005
Mushroom35,0005
Plushies15,0003
Decor25,0004
Misc30,0004
BandScoreWorker speed
Bare< 100.9x
Lived-in10-291.0x
Cozy30-591.1x
Luxurious60+1.2x