Player Request Backlog (disposition)
Status: IN PROGRESS — owner disposition 2026-08-01; design-fit gate mandatory (standing idea 25325) Parents: index.md, combat.md, economy.md, heroes.md
Last updated: September 17, 2026
Dark Tower — Player Request Backlog (disposition)
Status: IN PROGRESS — owner disposition 2026-08-01; design-fit gate mandatory (standing idea 25325)
Parents: index.md, combat.md, economy.md, heroes.md
Related: human_idea 21800 (audio refresh), human_task 24214 (on-device combat resume), prior design review task 24452
Design Fit Gate (MANDATORY — all games)
Player feedback is input, not a product mandate. Every KEEP theme and every fix MUST be checked against design + code before shipping:
| Fit class | Meaning | Agent action |
|---|---|---|
| HAVE | Already designed and shipped (or mostly) | Verify; improve discoverability/copy if needed; do not rebuild |
| INTENTIONAL | Designed away from the ask (cap, paywall, floors) | Do not clobber; teach or slight rebalance only if design owner reopens |
| GAP | Design promises it / fits pillars but missing or broken | Build to design, not to the loudest complaint |
| TUNE | Fits design; numbers/copy need adjustment | Tune within existing formulas and voice rules |
| BUG | Code diverges from design | Fix code toward design; scenario_test |
Rules for builders:
- Load the owning design doc before coding.
- If the ask contradicts a documented intent (e.g. potion cap 3, account-link for guild, difficulty floors), stop — decline or escalate to design, do not “fix” the design out of existence.
- Prefer explain / discover / wire existing systems over new systems.
- Prefer scenario_tests that lock the design law (cap still 3; examine works; etc.).
- Same gate applies to every game and every tweak (DF, Lineage, Zoo, …).
Applies equally to DF/Lineage/Zoo standing backlogs: darkness-falls, lineage, zoo-simulator.
How to use
Live query (do not freeze):
SELECT id, character_level, status, created_at, feedback_text
FROM claude.player_feedback
WHERE game_type = 'DARK_TOWER' AND feedback_type = 'FEEDBACK'
AND status IN ('NEW','VIEWED','ACTIONABLE','QUEUED')
ORDER BY created_at DESC;
As of 2026-08-01 open set: ~489 (380 VIEWED / 96 QUEUED / 13 NEW).
Disposition of the KEEP pack
Every item below reached a terminal outcome. The pack is not a backlog of intentions any more; where an item is still open it names the task that owns it.
| Item | Outcome | Evidence |
|---|---|---|
| T8 gold | FIXED | is the single renderer behind the moneyreplacementvalue substitution and concatenated the raw long, so how much gold do i have said "about one point two million" while inventory said "1234567" one breath later. It now routes through PurchaseVoiceFormatter.spokenIntegerOrComma, fixing ~12 call sites at once. Four sites that wrote goldAmount + " " + getDarkTowerMoneyType(gbp) were collapsed onto the same renderer — that one-arg overload returns the SINGULAR "gold coin", so the mine spoke "You collect 450 gold coin". Guard: scenario_test 3418. |
| T4 potion cap | cap VERIFIED CORRECT, copy FIXED | maxHealingItemsPerCombat returns a literal 3 and never reads its argument; the cap is untouched and still locked by . Both capped strings promised the player could raise the cap "by capturing buff stack locations in the free explore zones" — a mechanism that exists nowhere in the game. Both now state the cap plainly and point at the mid-combat buy option. Guard: scenario_test 3419; scenario_test 689's prose pin was updated under the TUNE licence this table grants. |
| T5 waves | VERIFIED CORRECT | Waves already carry entry text, a per-wave header, a wave-cleared line, best-run framing and a death rank. Not rebuilt. |
| T5 raid | FIXED | Raid score reads RAID_BOSS_UNLOCK_POINTS. Raid cards now speak the percent complete; raid status still answers on demand. |
| T3 grouping | VERIFIED CORRECT | Multi-enemy attacks already collapse to one cross-enemy sentence; enemy health already bands above three. Not re-expanded. |
| T3 grammar | FIXED | Two spoken clauses lacked a noun and an end stop — a bare count read as "3 can't fight this round", and the dominated clause ran into the sentence after it. |
| T3 duplication | FIXED | Round-start HP is the single health line. Enemy count is spoken once: "There are N enemies still standing." The attack rollup no longer restates "Across N enemies". Guard: . |
| T10 messages | FIXED (cbc248129) | LISTEN_TO_MESSAGES is in ; listen no longer drains a second page. |
| T1 examine | FIXED | Inspect routes to learn. learnAbout() speaks no plus sign, percent sign, or raw enum. Equip slot pages offer a what-does-it-do option. Guard: , . |
| T11 collect hub | FIXED | Auction winnings and completed quests are implementations. process_action_handlers row 305 stays on collectDailyQuests, which now delegates COLLECT to . Honor-token collect joins the same hub. |
| T18 hit chance | VERIFIED CORRECT — DECLINED | Code matches this doc term for term, including the difficulty floors, the 93 cap and the level curve. The investigate-condition (code differs from formula) is not met, so the outcome is teaching copy (task 26855), not a rewrite. The player claim that hit chance never scales is factually wrong: level 1 gives +0, level 100 +40. |
| T19 capacity | DECLINED BY DESIGN | A basic attack hits one enemy on purpose — index.md "Every DT combat turn is one meaningful action". The 1-versus-20-to-30 mismatch is real but widening basic-attack targeting needs an owner decision. Explanatory copy is task 26855. |
| T6 / T7 | VERIFIED LIVE | Hero-return announce and direct-power-by-name both still live; not reimplemented. |
KEEP — with design fit (owner 2026-08-01)
| ID | Theme | Fit | Design truth | Build shape (allowed) |
|---|---|---|---|---|
| T1 | Examine weapon/armor/gem/accessory | GAP | Inventory/equip exist; players need “what does this do” without equipping | Examine / inspect by slot; do not invent a second inventory model |
| T2 | Character-select / walk SFX | GAP (asset) | Voice identity; not a systems rewrite | Asset-curator + wire keys; pairs 21800 music rotation |
| T3 | Combat HP / enemy-list verbosity | TUNE | Combat rollup already exists (, voice-length design). Players still report long HP lists | Tighten rollup / optional detail tier; do not reintroduce full per-enemy essays |
| T4 | Healing potion mid-fight fairness | INTENTIONAL + TUNE | Cap = 3 per combat is design law (index.md Quick Start, combat.md). : KEEP intentional; mid-combat buy potion already shipped |
Never uncap without GA6 rebalance. May improve copy when capped / buy path discoverability |
| T5 | Waves/raid points grind | TUNE | Waves/raid are intentional endgame sinks | Clearer progress, not “delete waves.” Nostalgia “make it March” = decline |
| T6 | Hero missions complete notify | HAVE | SHIPPED — session-load announcement | Verify live; do not re-implement |
| T7 | Direct power by name | HAVE (mostly) | SHIPPED 24533 — 40+ powers direct-match; backstab earlier | Residual gaps only if a common power still needs NLU; expand carefully (name collisions) |
| T8 | Gold as thousands/hundreds | GAP (voice polish) | Fits voice-first; no economy change | Number formatting helper for large gold |
| T9 | Enchant weapons anytime | GAP | Enchantment content + marketing exist; player-facing enchant path was incomplete (24452 / epic 24532) | Wire enchant to design in economy.md — not a new diamond sink invent |
| T10 | Listen-messages less preamble | TUNE | Shared chat patterns () | Same as DF D1: less spam, still drain on listen |
| T11 | Unified collect menus | GAP | Multiple collect surfaces exist | One Collect hub if it maps cleanly to existing actions |
| T15 | Earlier / clearer companions | TUNE | Douglas at start is design; 6 slots + heroes layer | Unlock copy / list companions — not free max power companions at L1 |
| T17 | Soundtrack rotation | GAP (content) | 21800 — rotate owned tracks, not “no music” | Asset rotation; design-aligned |
| T18 | Hit chance “never scales” | INTENTIONAL (formula) | Formula includes level; floors/caps intentional (24452 DECLINE “never scales”) | Do not “fix” floors away. Optional: teach hit chance / difficulty; investigate only if code ≠ formula |
| T19 | Enemy count vs attack slots | TUNE / BUG | Attack capacity is design; spam enemies may be card content | Prefer content/card or explain; do not give infinite multi-target without design |
DEFER
| ID | Theme | Why |
|---|---|---|
| T12 | Frequent respec | Progression identity / economy — needs cost design |
| T13 | Gift/trade | No live P2P transfer; Economy 2.0 naming only |
| T14 | More / less predictable dungeons | Content after integrity bugs |
| T16 | Difficulty options as new modes | Difficulty already EASY–HELLSCAPE; new modes need design pass |
| T20 | Explosive shots shop SKU | Content SKU later |
| T25 | Last Light flavor beats | Storyline polish when editing that arc |
DECLINE (design / business)
| ID | Theme | Why |
|---|---|---|
| T21 | Gold → diamonds convert | Undercuts diamond IAP |
| T22 | Guild without account link | Link is intentional community safety; fix link failures instead |
| T23 | Remove monetization / free all chapters | Business model; fix broken purchases separately |
| T24 | Revert to March / “boring” only | Nostalgia; route real lag to bugs |
BUG / support escalate
| Theme | Sample | Notes |
|---|---|---|
| Chapter rewind / ch17–18 dead ends / loop | 10680, 10289, 10214, 10111, 10828 | Story graph integrity — design = card graph correct |
| Resume auto-attack | 10564, 24214 | Design: resume must re-present combat, not auto-resolve |
| Diamonds / protector pack / unread msgs | 11051–11052 | ISP + link; align design promises with fulfillment |
| Companion wrong / potions / trinkets / auction | 10110, 9930, 10206, 10398 | Toward designed behavior |
| Capture net vs “too healthy” | 10635 | Net selection already designed — verify live |
| NLU catch-all | 10919 | Skill health |
Prior design-accepted bugs still open unless shipped: Whirlwind AOE wiring (24531), enchant surface (24532).
Queue linkage (2026-08-01)
- 25349 — DT bugs: chapter progression + resume combat (card graph)
- 25350 — DT voice/UX KEEP (T1, T3, T8, T10, T11; verify T6/T7 HAVE)
- 25351 — DT balance/verify (T4/T5/T18/T19 — no design clobber)
- Do not re-queue T6/T7 as greenfield — verify only
- 24532 owns T9 enchant if still open; 24531 Whirlwind AOE if still open
Standing idea 25325 stays open for the next live cycle.
Changelog
- 2026-08-01 — Owner accepted recommended dispositions with Design Fit Gate (must not clobber design; HAVE/INTENTIONAL respected). Same gate required for all games.