Skip to content

Action Pivot + Rival Interactions — Preliminary Implementation Plan

Status: DRAFT — pending approval by the lead game designer. Do NOT start implementation. This plan sequences everything documented in concept.md / gdd.md and ../rival-interactions/rival-interactions-gdd.md. Sizes are rough t-shirt estimates (S ≈ hours–1 day · M ≈ 2–4 days · L ≈ a week+), for planning conversation only — not commitments. Every phase ends at a decision gate.

Strategy recap: web prototype = time-boxed rule-validation vehicle (disposable probes, fastest iteration, richest simulation — full rival AI lives there); Unity = shipping target (all feel/UX/telemetry work). Validated rules and numbers port to Unity verbatim. Orientation stays portrait throughout.

Baseline: the July 16–19 publisher test (docs/research/playtest-2026-07-telemetry.md) is the measured pre-pivot state — CPI $1.52 (good), D1 22.5%, FTUE completion 75.5%, one raid per session, fail spikes at 1-2 / 1-5 / 2-1. Gates G2 and G3 score against it.


Phase 0 — Web rule-validation sprint (time-boxed: 1–2 weeks)

Goal: answer "is the pivoted loop fun?" before any Unity work. Everything here is a throwaway probe — no polish, no parity obligation, delete-or-park freely after porting.

# Probe What it validates Size
0.1 Minimal floating joystick on web (disable tap-to-move) Representative input for all other probes S–M
0.2 Dodge as an on-screen button (rebind the existing swipe-dodge; crude cooldown display) The Action Button hypothesis: does a dash verb make moment-to-moment fun? S
0.3 Combat retune: fast TTK (sponge multipliers to neutral), always-on flank crit, drop the mutual-sight fire gate "Fast and juicy" — kills per minute, fight length, flank-crit readability S (mostly config)
0.4 Aggro-only enemy perception behind a flag (bypass detection fill / suspect / bush concealment) Does removing the stealth read hurt or help? A/B-able live via the tuning panel M
0.5 [go/no-go] Closing-extractions pressure replacing the storm death (staged pad closures + countdown) Does spatial pressure carry tension without the hard timer death? This is the pivot's least-built system on both platforms (web has only a dormant closesAt field) and its designated tension-carrier — if this probe reads flat, rework at the GDD level before any Unity work M
0.6 Rival Tier 0: neutral/hostile flag, both-way targeting filter, tap-to-declare, retaliation, contested-objective escalation, crude intent glyphs The encounter-as-choice model, against the web build's full rival AI M
0.7 Floor pressure gating + first-floor generosity (rivals from floor 1, threat/loot tuning, arrows/clock from floor 2) — plus the measured spike fixes: the hound's 1-2 entry (fail 13.8 — pack-flagged, the first real melee pressure; n.b. mob speeds run at player parity, the authored 162 is inert), the 1-5 boss wall (fail 43.9), and the 2-1 triple-stack (rivals + Warden out-sight + map jump, fail 18.9 / churn 35%) The "first real raid is a designed win" ramp; targets fail <5 on 1-1/1-2 per the baseline S (config)
0.8 Death → instant retry: no ladder reset, "Raid again" straight into the same floor The retry-appetite loop S
0.9 Loot frequency raise (drop rates, spill sizes) "Feels abundant, banks only on extract" — the Badlanders guardrail check S (config)
0.10 Guarded-extraction retune: portal guard count/tier on the from-floor gating (floor 1 unguarded); later floors bias the last-open pad toward the guarded descend portal The extraction finale fight — does "clear guards → hold the pad" carry the endgame tension the storm used to? S (config + small)
0.11 Sight-fairness invariant: clamp enemy engagement to player sight (or raise fog.radius above max enemy visR); threat arrows on aggro from floor 1; modest radius/zoom bump No invisible shooters once the mutual-sight gate is gone (6 enemy types out-see the player today); how much fog the action loop wants S (config + small)
0.12 Weapon rhythm: "one fight per mag" retune across the 4 archetypes (sniper mag pass); A/B vs parked rtsMode steady fire Is reload a risk-pricing beat or pure friction under fast TTK? S (config)
0.13 Healing: instant potion (drop the rooted channel), potion-drop-rate raise; no auto-regen Does instant-use keep HP attrition as a greed lever without doomed-walk frustration? S

Gate G0 (team playtest): play floors 1→3 repeatedly. Exit criteria: the team calls the loop fun; each probe gets a keep / adjust / kill verdict recorded in the GDD; kept numbers are frozen for the Unity port. Anything killed here never costs Unity work — that is the entire point of this phase.


Phase 1 — Unity core pivot (after designer approval + G0)

Port the validated rules verbatim; build the feel-critical pieces that web can't validate.

1a — Input & combat feel - Combat-math re-anchor (ordered): TTK target table (trash/mid/heavy/boss) → derive multipliers → headless verification → web feel-check; keep the power-ratio clamp; shift enemy scaling toward HP, revisit enemy attack cadence; dedicated boss pass (phases over raw HP) — M - Sight-fairness invariant + heal/weapon rules from G0 into GameConfig — S - Action Button widget (portrait HUD, bottom-right; cooldown face, wind-up pulse cue) — M - Revive the parked Dodge as the button's action (i-frames, dash step, haptics) — S–M - Targeting changes: remove the mutual-sight gate; flank-crit rule + heavier crit feedback — S–M - Combat retune values into GameConfig (from G0) — S - Dash smear/afterimage VFX + flank-crit flash variant — S–M

1b — Raid structure - Aggro-only perception mode in EnemyController/DetectionModel behind the master flag (stealth pipeline parked, not deleted) — M - Closing-extractions scheduler in RaidController + banner/minimap close markers — M - Per-floor pressure gating config (spawn/prog): rivals/arrows/clock from-floor knobs, first-floor generosity — S–M - Guarded-extraction gating: portal guard count/tier joins the from-floor knobs; last-open pad bias toward the guarded descend portal on later floors; boarding hit-stall and no-force-board-mid-fight rules preserved as-is — S - Round length + storm-off default (storm stays a flag) — S

1c — Rival interactions Tier 0 (dependency of rivals-from-floor-1) - Neutral/hostile state + triggers over the existing bot goal system; warning state — M - Both-way targeting filter (player auto-fire and rival fire exclude neutrals) — S–M - Tap-to-declare (range-armed raycast, confirm flash + sting; reuses the parked tap-target hit-test only) — M - Intent glyphs on the rival health-bar anchor — S–M

1d — Retry & meta flow - "Raid again" fast path rebuilding the run without the lobby scene round-trip; result-screen variant led by the retry button — M. (No-ladder-reset on death needs no work — verified 2026-07-23 it already ships on both web endRun and Unity MetaLoopController; the fast path is the whole gap.) - Daily hook (promoted from the backlog): "first extraction of the day = bonus loot" (badge + one multiplier) — S. Promoted because the baseline's D2→D3 collapse (16.4% → 3.45%) shows the loop lacks any comeback trigger, and Phase 3 should measure the pivot with at least one; everything else in-scope only improves the session itself. - HUD cleanup: remove stamina ring, detection vignette, sonar blips — S

1e — Telemetry (must ship with 1, it gates everything later) - TinySauce events: raid funnel (start/extract/death per floor), retry-after-death vs retry-after-extract, session length, plus the six encounter events (encounter-started, player-declared, rival-declared, avoided, rival-killed, killed-by-rival) — S–M

1f — Gear-meta re-theme pass (content, parallelizable) - crit → flank-crit damage semantics; Stalker set re-themed to flank/dash identity; stealth perks replaced with action-legible ones (dash cooldown, reload speed, potion potency, magnet radius); FTUE-granted items re-checked for stealth flavor — M - Consequential retirements applied and verified (stamina model, backstab tell + grace rules, bush concealment references in tips/FTUE, minimap content, floor-1 soft time cap) — S–M

Gate G1: internal device build; editor + device smoke playtests pass; funnel events verified arriving.


Phase 2 — FTUE rewrite (parallelizable with late Phase 1)

  • Three new stage assets: ① move + auto-fight + Action Button · ② loot/magnet/extract · ③ flank crit + dodge-through-telegraph — M–L
  • Retire the old 7 stages from the sequence (assets kept); trim the first-raid coach to rivals + closing-exits tips — S
  • FTUE completion funnel events — S

Gate G2: a fresh save reaches the first real raid in a few minutes and the funnel shows no in-tutorial cliff on the internal build.


Phase 3 — Device playtest & the metrics gate

  • Internal → publisher playtest cohort (TinySauce), portrait build — S (ops)
  • The only phase that tests the actual retention hypothesis. Watch: the post-FTUE funnel cliff (the metric that triggered this pivot), D1, session length/count, retry-after-death rate (MISFITZ benchmark: dying should feed retries), encounter telemetry.

Gate G3 (with the publisher) — scored against the July 16–19 baseline:

Metric Baseline Target
FTUE completion 75.5% ~88%+
D1 retention 22.5% 30%+
D0 sessions / raids per session 2.2 / ~1 3+ / 2–3
Fail/complete on 1-1 and 1-2 1.3 / 13.8 < 5
Reach biome 2 25.7% 45%+

Metrics improve → proceed to Phase 4; metrics flat → revisit at the GDD level before building more; encounter data feeds the Tier-2 decision. (Baseline caveat: 250 installs, D2+ cells single-digit — compare like-for-like cohort sizes or larger.)


Phase 4 — Fast-follows (only after G3 passes)

  • Rival Tier 1: Hunter/Rat/Opportunist archetypes over the Tier-0 state machine; human-style name pool + cosmetic variance; the emote signal verb; "Slain by " result block (attribution + the result line already ship in Unity — only name-pool/ portrait dressing remains) — M–L
  • Collection sets: per-biome set definitions, drops wired into the spill/magnet flow, lobby album screen + set-completion rewards — L
  • Action Button variants: 2–3 alternative actions as a loadout choice (same single button slot) — M

Phase 5 — Gated bets (each needs its own go-decision)

  • Rival Tier 2 (alliances/betrayal, rival-vs-rival fights, async ghosts) — gated on Phase-3/4 encounter telemetry showing encounters drive retention.
  • Hero roster (characters with unique kits) — the open question flagged in the concept; decide only after the pivot's retention read, mindful of MISFITZ's meta-collapse lesson.
  • Real networking — remains out of scope indefinitely.

Nice-to-have backlog (deliberately deferred — revisit after the pivot ships)

Not in any phase; parked here so they aren't lost. Each is small and metric-oriented:

  • Invisible difficulty adaptivity (DDA): quiet death-streak easing — N consecutive deaths on a floor nudges threat budget/enemy damage down a notch, reset on extract. Targets the bottom skill quartile at the exact drop-off point.
  • ~~Daily hook~~ — promoted to Phase 1d (see above) on the baseline's D2→D3 collapse; light daily contracts remain here as the step up.
  • Loss framing + revenge hook on the death screen: show exactly what was dropped ("win it back"); the rival that killed you reappears next run with a bounty marker, carrying your loot — converts the churn moment into a comeback story.
  • Recommended-power signposting on the floor picker: surface "recommended Power ~X" per floor (the threat-tag math already computes it) so a difficulty wall redirects players into the upgrade loop instead of churn.

Dependencies & risks

  • Phase 0 must precede Phase 1 for the rules it validates — but Phase-1a feel work (Action Button widget, VFX) has no web dependency and can start immediately on approval if schedule pressure demands overlap.
  • Rival Tier 0 (1c) blocks rivals-from-floor-1 (1b gating) — without the neutral model, floor-1 rivals would mean floor-1 forced PvP.
  • Telemetry (1e) blocks Gates G3 and the Tier-2 decision — it cannot slip to "later."
  • Biggest design risks to watch at G0: tension loss without the storm/stealth dread (does closing-extraction + rivals carry it?), and loot abundance cheapening the extract decision (the Badlanders trap). Both are cheap to catch on web and expensive after.
  • Out of every phase: web-build polish or parity; landscape orientation; networking.

Approval checklist (for the lead game designer)

  1. The pivot itself: stealth demoted to flank-crit positioning; action-first loop. (concept)
  2. Closing extractions replacing the storm hard-death. (gdd — Mechanics)
  3. Death → instant retry with no floor-ladder reset. (gdd — Mechanics)
  4. Rival encounters neutral-by-default + tap-to-declare, Tier 0 in the pivot. (rival GDD)
  5. FTUE collapsed to 3 stages. (gdd — UX)
  6. Web-first Phase 0 validation sprint before Unity work. (this plan)
  7. Portrait orientation retained. (gdd — UX)
  8. Fast-follow ordering: rival archetypes and collection sets after the metrics gate. (this plan)
  9. Sight-fairness invariant (nothing engages the player from beyond their sight) + fog kept with a modest bump. (gdd — Pivot-adjacent decisions)
  10. Weapons keep mag+reload ("one fight per mag"); healing goes instant-potion, no auto-regen. (gdd — Pivot-adjacent decisions)
  11. Gear-meta re-theme (crit = flank-crit damage, Stalker → flank/dash, perk swap) and the consequential-retirements list. (gdd — Pivot-adjacent decisions)
  12. Daily hook ("first extraction of the day") promoted from the backlog into Phase 1d, so the G3 retest measures the pivot with one comeback trigger. (this plan — 1d)