◀ survival.aether-shard.com
AETHER SHARD SURVIVAL WIKI
built from v0.1.73 · 2026-10-06
DESIGN

Building ladders

A design document: planned unless a "Prototype" note says it's built.
Part of The design hub. Drafted 2026-08-30. Compact entries following the template in Blacksmith Ladder (building template) (see also Engineer Ladder (short-ladder example), Inn Ladder (service-building example)). Conventions apply throughout: shell + ONE function at construction; tier = era door; modules purchasable behind each tier; recipes collected; NPC gates anchor to the TOP of each ladder (top = Master, one below = Journeyman). Ladder length = eras remaining from unlock.

Era assignments settled here (fills gaps in the hub schedule): Mine + Lumber Camp join Era 1 (copper and logs must be processable from the start); Fishery, Mill, Trading Post join Era 2.


Era 1 buildings (5-tier ladders)

Town Hall

Prototype (v0.1.21, 2026-09-03): last Era-1 shell. "Town Hall" (8 timber, 8 stone, 30s), unstaffed; ledger line in its dialog (era, buildings standing, store, villagers/haulers, mayor). Notice Board module = 3 faceless bounties (quest giver "board", Apprentice). Mayor's Office module = APPOINT any recruit with a style for 10 gold; styles live in Quests.STYLES with Apprentice-strength deltas × quality: Steward −15% producer cycle, Builder −20% build/module time, Merchant ±5% prices, Loremaster −25% respec fee, Shepherd +25% meal duration (Marshal parked until raids). Recruit styles: Orrin Builder (J), Marla + Tamsin Shepherd, Wren Merchant, Ansel Loremaster, Bram + Hollis Steward. Charter (service, not a module yet): when every building stands, 40 gold + 3 charcoal → city.era 2 → Trading Post merges its stock_era2 (iron sword/mail, charcoal). Edicts: not yet (t1 = 0 slots by design).

Shell: founding stone — claims the city site, basic stockpile registry. Edict slots = tier − 1 (The Mayor (governance system)).

Chapel

Shell: shrine — heal over time in city + ordination (class selection, Class Roster & Skill Schools); respecs from t2.

Farm

Prototype (v0.1.20, 2026-09-02): third producer, "Valley Farm" (4 timber, 2 stone, 20s), keeper Tamsin (2 quests). 2 cabbage per 40s, cap 8; Chicken Coop = +1 fowl per harvest; Well = cycle ×0.7. Cabbage/fowl stand in for grain/eggs because the owned icon packs have no wheat, egg, or bread — swap names + icons when a pack with them arrives; the data is one line each. Hen House quest teaches the Inn's second meal, Farm Supper (+6% power, 240s: milder and longer than Boar Stew, so the choice between meals is real).

Shell: field plot — grain.

Mine

Prototype (v0.1.17, 2026-09-02): first PRODUCER building. Shell "Valley Shaft" (6 timber, 2 stone, 25s), keeper Bram (2 quests). Every 30s the yard gains 1 ore + 1 stone, each capped at 6 — the cap is the come-home pull; COLLECT moves the yard to the bag. Cart Rails = cycle ×0.6 (throughput); Lamp Room = +1 ore per haul (yield). The same produces/cycle/cap data drives any future producer (Lumber Camp, Farm, Fishery).

Shell: valley shaft — copper ore + fieldstone. (Blacksmith smelts; the Mine extracts and crushes.) Higher-era ore is hauled home from zone deposits and processed here.

Lumber Camp

Prototype (v0.1.18, 2026-09-02): second producer, same data shape as the Mine. "Felling Crew" (4 timber, 3 stone, 20s), keeper Hollis (2 quests). 2 timber per 30s haul, yard cap 8. Sawpit = +1 timber per haul; Charcoal Kiln = +1 charcoal per haul (a module can add a new product — first use of that rule). Charcoal is a plain material for now (sells for 1); it becomes forge fuel when the Blacksmith ladder reaches iron.

Shell: felling crew — logs.


Era 2 buildings (4-tier ladders)

Drill Yard (Drillmaster) — added from the 2026-09-05 playtest

Prototype (v0.1.37, 2026-09-05): Eric: "abilities don't say what they do… we need passives too that can be taught/learned (maybe new building?!?)". "drill_yard" (era 2, 8 timber + 2 stone + 1 hide, 25 s) with keeper Hesk the Drillmaster (Journeyman Marshal, sheet hermit_corvan). The def carries "teaches" — ids from Passives.DEFS — instead of recipes: LEARN costs gold + goods once per passive (Building.teach, teach_gold honours the Straw Dummies module's teach_discount 0.5). Passives with "requires": "sparring_ring" wait for that module. Player keeps passives (pool) and passive_loadout (max Passives.MAX_EQUIPPED = 2) — the ABILITIES board's PASSIVES row toggles them. Each passive is one knob: Iron Lungs rest ×1.5 · Thick Skin +0.10 protect · Light Step sneak ×1.5 + conceal ×0.85 · Sure-Footed dodge cost ×0.5 · Frugal skill cost ×0.8 · Keen Eye backstab +0.5 · Gourmand food ×1.3. Hesk's quest "Straw and Rope" (2 hide) rewards Iron Lungs directly ("passive" reward key). Plot "drill" at (-320, 70); Hesk at (-250, 110).

Shell: a trampled ring behind the inn — dummies, an arms rack, a target, a banner (composed from winlu training_dummy_pole / rack_arms / fence_rail_a / target_round / flag_banner_a / hay_pile).

Mason's Yard (Stone Worker)

Prototype (v0.1.24, 2026-09-03): first Era-2 shell — "era": 2 on the def; plots show "Needs the Era 2 charter" until chartered, and charter_ready now counts only current-era buildings (else the next era could never be chartered). Gerd (Journeyman Builder, 2 quests). Producer (1 stone / 45 s, cap 6; Quarry Pit +1) AND crafter (CUT: 3 stone → 1 cut stone, 6 s). Mortar Shed = prerequisite for the Watchtower. The walls track is its dialog: RAISE THE PALISADE (10 timber + 4 cut stone, 40 s) → city.walls {tier 1, hp 240}; raiders outside a standing gate besiege it (4 dmg per 1.2 s each — a full wave needs ~14 s) before the road; REPAIR = 2 timber to full; Watchtower +20 s warning. Away-raid with walls: a tenth of the store + 60 gate damage, no wreck.

Shell: stone cutting — cut stone (the refined form). Owns roads and walls construction (see Walls track below).

Weaver

Prototype (v0.1.26, 2026-09-03): "Weaver's Loom" (6 timber, 3 stone, 1 cut stone), Brida (Apprentice Merchant, 2 quests). Producer of cloth (1 / 45 s, cap 6 — flax stock abstracted). WEAVE: Quilted Coat (3 cloth, +15 %), Dyed Cloak (Dye Vat; 4 cloth + 2 bitterleaf, +22 %), TAN leather (Tannery; 2 hide → 1 leather), Leather Jerkin (Tannery + Hides quest; 3 leather + 1 cloth, +30 % — the "medium armor" of t2 pulled forward as a taught recipe). Boars drop hides. First armor ladder that is crafted, not found; sits between scraps (5 %) / copper mail (20 %) and iron mail (40 %).

Shell: loom — cloth + basic cloth armor.

Herbalist

Prototype (v0.1.25, 2026-09-03): "Herb Garden" (4 timber, 3 stone), Nell (Apprentice Loremaster, 2 quests). Producer: 1 bitterleaf / 40 s, cap 6; Drying Racks +1 bitterleaf; Seed Beds +1 sunroot (new herb). Herb Lore quest teaches the Alchemist's stamina draught.

Shell: herb garden + herb-lore (herb nodes marked on explored map).

Alchemist

Prototype (v0.1.25, 2026-09-03): "Alchemist's Lab" (5 timber, 5 stone, 1 cut stone), Ysolde (Journeyman Loremaster, 2 quests). BREW: healing potion (2 bitterleaf + 1 wildberries), stamina draught (taught), ironbark tonic (Ingredient Cabinet + taught by Bitter Work). Still = craft_bonus 1 (every brew makes two — first module that multiplies output). Tonics = the potion buff layer: Player. potion_buff multiplies incoming damage (0.85 for 120 s), separate from food_buff, so meal + tonic stack as designed. Brew hall (stat-buff line) still t2/era 3.

Shell: small lab — basic healing/stamina potions.

Fishery

Prototype (v0.1.28, 2026-09-04): "Fishing Dock" (8 timber, 2 stone) on a new pond (Ground ponds cfg: terrain 5 over a shallow 7 under-layer, corner colliders in group "water"). Tarn (Apprentice Shepherd, 2 quests). Producer 1 fish / 40 s, cap 6; Net Loft (3 cloth + 2 timber) cycle ×0.7; Smokehouse (4 stone + 2 charcoal) → SMOKE 2 fish → smoked fish (+50 food, the travel ration). First Catch teaches the Inn's Fish Stew (+5 % power, 360 s, +25 HP). Last Era-2 shell: Era 3 chartered in the smoke test.

Shell: river dock — fish (food variety type #2).

Mill

Prototype (v0.1.27, 2026-09-03): "Grist Mill" (6 timber, 6 stone, 2 cut stone), Osk (Apprentice Steward, 2 quests). The Farm shell now produces grain (1 per harvest) beside cabbage. GRIND 2 grain → 1 flour; Bakehouse module → bread (food, +40); Grain Lift = craft_bonus 1 (every grind makes two). First Grind quest teaches the Inn's Shepherd's Pie (bread + meat + cabbage → +8 % power, 300 s): the first three-ingredient-type meal. Icons: grain = Herb-Bundle-01 recolored gold, flour = winlu sack_open, bread = Sausage-01 lightened (no bread icon in the owned packs).

Shell: grindstones — flour (grain's refined form; unlocks real meals).

Trading Post

Prototype (v0.1.16, 2026-09-02): built as the 4th plot, keeper Wren (2 quests). BUY from era-1 stock only (potion 8, ore 5, timber/ stone 3, herbs/berries 2); SELL anything at half value (gear too). Ledger Desk module: buy ×0.85 / sell ×1.25. "Loot" now displays as gold. The era cap is enforced by construction (stock lists only chartered-era goods).

Shell: market stall — buy/sell basics. Hard rule: never sells materials/goods above your chartered era — money cannot skip exploration.


Era 3 building (3-tier ladder)

Jewelcrafter

Prototype (v0.1.29, 2026-09-04): "Gem Bench" (6 timber, 4 cut stone, 2 charcoal; era 3), Vesna (Journeyman Merchant, 2 quests). Gem source = Mine Gem Seam module (+1 rough gem / haul; the t3 seam pulled forward) and the post's era-3 stock. CUT 2 rough → 1 cut gem; Cutting Wheel = craft_bonus_for cut_gem (2). Trinkets registry (Trinkets): Copper Ring (+5 % power, ring slot), Amulet of Ward (+6 % protection, necklace slot, taught by Rough Stones); no wear. Sockets (Setting Kit module): Player.gear_gems {gear id → gem}, one per piece, +8 % power on a weapon / +8 % protection on armor; stays with the piece across swaps; PRY returns the gem to the bag — "gems stay transferable" is live. Socketing press stays with the Blacksmith on paper; here the kit does it.

Shell: gem bench — cut gems (Mine input) + basic rings/amulets. Sockets enter via Blacksmith t3 socketing press, same era.


Era 4 buildings (2-tier ladders — arcane professions START gated:

per the top-anchored rule, t1 already requires a Journeyman)

Enchanter

Prototype (v0.1.33, 2026-09-04): "Enchanting Circle" (era 4; 6 cut stone, 4 timber, 4 charcoal), Wyn (Journeyman Loremaster, 2 quests). Feedstock answered: every other raider carries raw essence and spills it in its sack when killed (raids primary); the Disenchant Font grinds carried gear into raw essence at value÷10 (secondary); the post sells raw essence at Era 4. Essence Forge: 2 raw → 1 essence. Enchants (def["enchants"]) bind to the EQUIPPED piece for essence + gold, one per piece, re-enchant replaces, stays with the piece across swaps (Player.gear_ench): Keen +12 % power, Warding +12 % protection (taught by First Light), Hungry +5 HP per kill (Rune Library). Imbue altar / grand array still on paper.

Shell (t1, J required): enchanting circle — apply enchants for essences + gold.

Scribe

Prototype (v0.1.34, 2026-09-04): "Scriptorium" (era 4; 4 cut stone, 6 timber, 3 cloth), Aldous (Journeyman Loremaster, 2 quests). Two skills exist only as torn tomes (items) in wilds sacks: Second Wind (new "restore" kind, +40 stamina, 25 s) and Whirlwind (aoe). RESTORE torn tome + cloth → tome item (kind "tome"; READ to learn). Restoration Desk = craft_time_mult 0.5 (first such module). Athenaeum = def["fusions"]: 2 tome fragments (camp hoard, quests) + cloth + essence → a tome of the chosen school. Cartography desk on paper. All 19 shells now prototyped.

Shell (t1, J required): scriptorium — restore damaged tomes. Most raid/dungeon tomes are found damaged; the Scribe makes them learnable. (This is the profession's core loop — no copying; a solo hero needs one copy.)


Walls (structure track — unstaffed)

Built and upgraded by the Mason's Yard (wall crew) with Engineer emplacement slots per tier. Not a staffed building: no NPC, no recipes.


Grid totals

16 tracks: 3 exemplar docs + 12 compact ladders + Walls. Upgrade moments: ~58 tiers + ~110 modules + walls — comfortably past the "never max quickly" bar before recipes, gems, or enchant levels.

Storehouse + haulers (decided 2026-09-02)

Prototype (v0.1.19, 2026-09-02): built as described below. Shell 5 timber + 5 stone, capacity 40; Racks +40; Tally Board haul legs ×0.6 (12s → 7.2s). World.city["store"], villagers, haulers[]. Costs draw bag-first then store. Haulers are a data state machine (idle → to_yard → to_store) ticking in World.advance, so they work while the hero is in the wilds; the Town scene draws one villager sprite per record walking the real path. Overflow goes back into the yard with a toast. First villager = Ida, a captive behind the bandit camp: TAKE THEM HOME once no camp guard stands.

The producers' per-building yard caps are the prototype's "come home" pull. The real design adds a Storehouse (Era 1, unstaffed shell): the city's shared stockpile in World.city["store"], with a capacity that is the real lever (raised by tiers and modules). Producers still fill their yards; haulers — villagers recruited in the wilds and assigned to the Storehouse — walk the yards on a timer and move goods into the store, so a fully staffed city auto-collects. Until a hauler is assigned, the hero still walks the yards. Buildings draw build/module costs from bag + store. This keeps: the hero's bag for the wilds, the Storehouse cap as the economy's ceiling (raid target, future-survival- raid-system), and the recruit system (Recruits, friends and markets) as the thing that automates chores. Third producer (Farm) should be built AFTER the Storehouse so the pattern is settled.

Open questions

Prototype v0.1.47 (2026-09-06) — producers scale with the era: World.producer_haul(def, id) = base produces + (era − 1) for base goods (0 stays 0; module yield_bonus unchanged on top) and producer_cap(def) = cap + 2·(era − 1); used by _produce, hauler returns, Building.haul_of, Building.cap() and the yard dialog line.
Prototype v0.1.48 (2026-09-06) — the Trading Post scales with the era: plot data gained shelf {id: n} (stocked to World.shelf_max() = 2 + 2·(era−1) on first use; a newly chartered good arrives stocked) and restock_t; World._shop_tick puts one good back on one shelf every 45 s. Building.on_shelf(id), buy refuses a bare shelf, BUY rows show "(n left)" / "(sold out)". sell_price × World.sell_era_mult() = 1 + 0.1·(era−1). Era goods stay charter-gated (stock_era2/3/4).
Prototype v0.1.51 (2026-09-06) — Weaver and Jewelcrafter scale with the era: both defs carry era_haste + era_batch; World.batchable(item) limits batch bonuses to goods (never weapon/armor/trinket/tome), so leather and cut gems gain +1 per era while coats, rings and amulets stay one piece. Sockets: World.gem_bonus() = 0.08 + 0.02·(era−1) read live by Player.gem_power/gem_protect, the socket button and the gear caption.
Prototype v0.1.54 (2026-09-06) — Mill and Fishery scale with the era: both defs carry era_haste + era_batch (flour, bread, smoked fish +1 per batch per era on top of Grain Lift / Smokehouse; fish and grain scale as producer goods). Every crafter in the valley now scales.