neon-sprawl/docs/decomposition/epics/epic_03_crafting_economy.md

5.4 KiB
Raw Blame History

Epic 3 - Crafting, Gathering, and Itemization Economy

Source Anchors

  • Master epic reference: neon_sprawl_vision.plan.md — Core Epic Map, System Modules Epic 3
  • Related modules: E3.M1, E3.M2, E3.M3, E3.M4, E3.M5

Ownership and success (Level 1)

  • Ownership focus: Economy Design + Content Engineering + Client presentation (Godot)
  • Success criteria: Crafting is a primary progression lane with healthy supply-demand loops and consistent item relevance — playable in the client, not server/Bruno-only proof.

Objective

Implement gathering from world nodes, item/inventory representation, recipe execution, and later durability/sinks and economy policy so players can complete gather-refine-craft-use loops that matter for combat and quests.

Module Breakdown

E3.M1 - ResourceNodeAndGatherLoop

  • Responsibility: Node spawning, gather interaction, resource output events.
  • Key contracts: ResourceNodeDef, GatherResult, ResourceYieldTable
  • Dependencies: E1.M3, E2.M2
  • Stage target: Prototype

E3.M2 - RefinementAndRecipeExecution

  • Responsibility: Raw-to-refined processing and recipe crafting execution pipeline.
  • Key contracts: RecipeDef, CraftRequest, CraftResult
  • Dependencies: E3.M1, E3.M3
  • Stage target: Prototype

E3.M3 - ItemizationAndInventorySchema

  • Responsibility: Item definitions, rarity/quality fields, stackability and equipment metadata.
  • Key contracts: ItemDef, ItemInstance, InventorySlot
  • Dependencies: None
  • Stage target: Prototype

E3.M4 - SinkAndDurabilityLifecycle

  • Responsibility: Item decay/consumption/repair sinks that sustain market demand.
  • Key contracts: DurabilityState, ItemSinkEvent, RepairCostRule
  • Dependencies: E3.M3, E8.M3
  • Stage target: Pre-production

E3.M5 - EconomyBalancePolicy

  • Responsibility: Faucet/sink parameter set and guardrails for inflation/deflation.
  • Key contracts: EconomyPolicy, PriceBandRule, FaucetSinkRatio
  • Dependencies: E3.M4, E9.M2
  • Stage target: Pre-production

Implementation Slices (Backlog-Ready)

Slice 1 - Items and inventory MVP

  • Scope: E3.M3 with equipment/consumable slots sufficient for prototype loadouts and quests.
  • Dependencies: None
  • Acceptance criteria:
    • Craft outputs and quest rewards land in inventory deterministically.
    • Item schema versioned for forward-compatible migrations.
  • Telemetry hooks: item_created, inventory_full / transfer failures.

Slice 2 - Gather nodes and outputs

  • Scope: E3.M1 with 4-6 node types and yield tables; awards crafting/gathering XP via E2.M2.
  • Dependencies: E3.M3, E1.M3, E2.M2
  • Acceptance criteria:
    • Full gather interaction in prototype region without dupes or free resources.
  • Telemetry hooks: resource_gathered, gather_node_depleted.

Slice 3 - Recipes and crafting pipeline

  • Scope: E3.M2 with 8-12 starter recipes per prototype minimums.
  • Dependencies: E3.M1, E3.M3
  • Acceptance criteria:
    • Player completes gather to refine to usable item used in combat or quest.
  • Telemetry hooks: item_crafted, craft_failed with reason, time-to-first-craft.

Slice 5 - Client economy integration (prototype)

  • Scope: Godot clients + HUD for E3.M3 inventory, E3.M1 gather feedback, E3.M2 craft UI; playable gather → refine → make session in the client (vision prototype gates).
  • Dependencies: Slice 13 server APIs landed (NEO-55, NEO-63, NEO-70); E2.M2 skill-progression GET for XP visibility.
  • Acceptance criteria:
    • Inventory HUD reflects server state after gather and craft.
    • Player completes gather → refine → usable item in Godot without Bruno.
    • Salvage / refine skill progression visible after gather/craft (Epic 2 Slice 3 integration AC).
  • Telemetry hooks: reuse Slice 13 server hook sites; client dev print / HUD feedback only until E9.M1 ingest.

Linear backlog: E3S5-client-prototype-backlog.mdNEO-72NEO-75.

Slice 4 - Sinks and economy policy (pre-production)

  • Scope: E3.M4 + E3.M5 with tuning hooks and validation against outliers.
  • Dependencies: E8.M3 (market settlement optional), E9.M2
  • Acceptance criteria:
    • At least one durable sink is live; policy alerts on faucet/sink ratio breaches.
  • Telemetry hooks: item_sink, repair_performed, economy KPI aggregates.

Risks and Mitigations

  • Risk: Crafting bypassed by drops or NPC vendors.
    • Mitigation: Prototype quest requires crafted item; monitor gather-to-craft conversion.
  • Risk: Exploit duplication or negative stacks.
    • Mitigation: Server-authoritative craft and inventory; integrity signals via E9.M4.

Definition of Done

  • Prototype gather-craft loop meets plan pass/fail gates in the Godot client (Slice 5), not Bruno-only.
  • Slices 13 + Slice 5 together satisfy vision prototype in-scope features for crafting loop and progression visibility.
  • Pre-production adds sinks and policy with dashboard visibility (Slice 4).