DRIFTLANDS co-op survival on drifting tides — studio progress

Quick Design Spec: Inventory & Hauling

Type: New Small System Scope: The item-stack interface and the two carry/storage components every economy system builds against. Owns stacks, bag capacity, and carry↔storage transfer rules. Does NOT own item definitions (Crafting), harvest overflow behavior (Harvesting), or storage placement (Base Building). Date: 2026-08-26 Estimated Implementation: ~3 days (matches the sprint-1 time-box; TD advises a micro-spike if the storage-race implementation surfaces unknowns)

Overview

Every fight and every node feeds the bag on your back — this system is that bag, and the shared chest it empties into at home. A player carries a fixed-slot stack inventory (the CARRY component); the home island holds host-authoritative shared containers (SHARED-STORAGE components — one per storage chest Base Building places, BB Rule 12; any number may exist). Hauling is the loop beat between them: fill the bag on a docked land, get it home before the tide, bank it. Tension is opportunity cost only — there is no weight, no slowdown, no loss on death or departure.

Core Rules

Tuning Knobs

Knob Default Range Category Rationale
bagSlots108–16gateSmall enough that a deep push forces bank-or-push decisions ("bag three-quarters full of tin"); big enough to not nag
maxStack (fiber / timber / sinew)2010–50gateLocked per-item by crafting F4 (2026-08-26) — Crafting owns the values, this row cites them; interacts with bagSlots for effective haul size
storageSlots (home container)4024–80gateMust comfortably exceed a full bag so banking never blocks at MVP
equipmentSlots2 (weapon, armor)fixed at MVP—Matches Combat's two gear hooks; not a config knob until Tier 1
transferBatchWindow0 ms0–100feel0 = every click is its own host transaction; raise only if RPC volume becomes a measured problem

All values live in assets/data/inventory.json, not hardcoded. Effective haul capacity = bagSlots × maxStack — retune together with Harvesting yield rates and tide window W (the bank-or-push decision only exists if a bag fills in comfortably less than one tide window).

Acceptance Criteria

Systems Index

Already tracked as MVP system #6 (Economy, quick-spec, sprint-1 exit criterion). On approval: status flips from "Not Started — HIGH RISK" to "Designed (quick-spec)" — unblocking design starts for Harvesting, Crafting, and Base Building.

Forward refs owned elsewhere: transfer RPC shape + STORAGE replication representation → netcode ADR; item definitions & stack values → Crafting GDD; blocked-harvest UX → Harvesting GDD; container placement → Base Building GDD; save format details → Save quick-spec.