Demo Mod — equipped kit + type/quality (all doll seats)
Status: Implemented (mock + FS/docs/kanban) · 2026-10-26
Scope: HTML Demo Mod mock + docs/inventory/demo-mod-item-specs.md + FS-GUN-012 + docs/22-demo.md + Demo kanban seed cards
Out of scope: Real mesh / Refit Install · full GDD Unique spreadsheet · Bore spend · Crafting bag · shipping UMG (pattern only)
Authority: FS-LOD-001 · FS-GUN-012 · FS-ITM-* · FS-GUI-004 · prior jewelry design 2026-10-26-demo-mod-jewelry-sockets-design.md
Every equipped paper-doll combat seat can change:
- Which Demo kit fills the seat (session fill — mesh never changes).
- Type / quality / name identity on that piece (same spirit as jewelry).
One OV37 pattern for Weapons · Armor · Jewelry/ES (hard-coded Specials/Ordnance/Tentacles stay TBA stubs — no kit catalog this pass).
Layout (Approach 1)
Section titled “Layout (Approach 1)”OV37 chrome fixed: brand · crumb · subtabs · Back/OK. Tab body scrolls (1080p).
| Piece kind | Subtabs |
|---|---|
| Jewelry / ES | Stats · Affixes · Sockets (existing) |
| Armor · Phys Shield · Melee | Stats · Affixes · Sockets (sandbox wells; Artifact Unique/Apex only) |
| Guns | Stats · Affixes · Sockets · Gunfeel (Mag / Optic or Counterweight / AA dials — move gunfeel off the single scroll into this tab) |
Stats tab (all doll pieces)
Section titled “Stats tab (all doll pieces)”| Field | Behavior |
|---|---|
| Seat | RO |
| Equipped kit | Select from seat-family Demo catalog (see below). Changing kit resets plate, affixes (padded empty 3+3), sockets/wells, art, gunfeel to that kit’s defaults. Name/quality may reset to kit defaults. |
| Name | Editable |
| Type | Seat-gated enum (gun Receiver/Type label, melee family, shield family, armor weight Light/Med/Heavy, Ring/Amulet/ES) |
| Quality | Common → Apex |
| Kind | Auto from quality + type |
| Plate | Editable keys for that family |
Affixes / Sockets
Section titled “Affixes / Sockets”Same grammar as jewelry design: ≤3+3; wells 0–6; Phonon/Gem/Jewel; Artifact Unique/Apex; Chord on Common + Phonon order. Guns/armor get the same sandbox (Demo skips Bore cost).
Gunfeel tab (guns only)
Section titled “Gunfeel tab (guns only)”Existing MagFamily / MagSize / Optic or Counterweight / AA / Bloom / RangeStat rows. Mag OK → OmniVisor ammo unchanged in meaning (OV38).
Demo kit catalogs (not full GDD)
Section titled “Demo kit catalogs (not full GDD)”Author in demo_mod_mock_data.js as allowlists:
| Seat family | Catalog ids (minimum; expand as rows exist) |
|---|---|
| Ranged (W1–W4) | auto, pulse, scout, hc, sidearm, smg, sg, heavy, gl (+ existing) |
| Melee (W4/Wrist as applicable) | blade, sword, wrist (+ stubs ok) |
| PhysShield | pshield (+ optional variants) |
| Armor per seat | helm/chest/gloves/belt/boots Light·Med·Heavy or existing plate ids tagged by weight |
| Jewelry/ES | ring / amulet / eshield kits (existing) |
Seat empty stays omit-on-list; Mod does not invent bag loot — only swap among catalog kits for that seat family.
Session model: scenario.fill[seat] = kitId after OK on kit change (or commit kit into state.committed + live fill override). List row name/kind updates immediately after OK.
Docs / FS / kanban (same implement pass)
Section titled “Docs / FS / kanban (same implement pass)”- FS-GUN-012 — OV37 = subtabs; kit + type/quality on Stats; sockets editable in Demo sandbox; Jewelry Chord note; categories Specials/Ordnance/Tentacles ×4 TBA; AC line for kit swap.
- docs/22-demo.md — Demo Mod UI lock table match.
- demo-mod-item-specs.md — all doll seats use subtabs + kit picker.
- GDD reader — rebuild/sync Demo prose if sourced from 22-demo / gdd-content.
- kanban-seed.js Demo Mod kit module — add/update cards:
- Equipped doll categories + Mod ON/OFF gate
demo-mod-item-specs.md- Kit + type/quality picker (all seats)
- Jewelry/armor sockets + Chord sandbox
- Specials / Ordnance / Tentacles ×4 TBA
- Retire or reword “list all weapons character has” → equipped doll seats only
Acceptance
Section titled “Acceptance”- W1: change Equipped kit Auto→HC → plate/mag defaults update; OK; list shows HC.
- Chest: change Type weight / kit; affixes editable; OK persists.
- Ring: existing jewelry Chord path still works.
- Gunfeel tab still drives Mag → HUD ammo.
- 1080p: only tab body scrolls.
- FS + 22-demo + kanban seed reflect the above.
Non-goals
Section titled “Non-goals”Full Receiver×Frame matrix UI · real socket Install meshes · changing Specials TBA into real skills · Ladder live affix power (lab only).