GDD: The Dive — the run becomes the session¶
Overview¶
The Dive turns a session from a sequence of independent raids into one continuous descent. Loot is unbanked while you carry it, floors are pushed through rather than replayed, health carries between them, and every floor presents the same escalating question: bank what you have, or take it deeper for more.
This is the single structural change chosen in response to the publisher's directive for a new
extraction game from existing assets. It sits on top of the action pivot
(../action-pivot/gdd.md) and changes none of its verbs. See ./concept.md for the pitch and
the reasoning.
Mechanics¶
The three exits¶
Every floor resolves in exactly one of three ways, and the whole design is legible from this table:
| Banks the haul | Ends the run | Advances the checkpoint | |
|---|---|---|---|
| Safe exit | yes | yes | yes |
| Descend portal | no | no — the next floor generates and the run continues | no |
| Death | no — the Safe Pocket only | yes | no |
The player-facing sentence is "you only keep what you carry out."
The boss floor's portal is the one exception to the middle row and is described in The boss floor below: it banks like a safe exit rather than continuing the run, because there is nothing below it.
This inverts today's rules, where both exits bank and the descend portal additionally advances progress — making descending strictly better and therefore never a decision. After the inversion the descend portal is the risky door: taking it costs the guaranteed bank the player is standing next to.
What carries between floors¶
Descending rebuilds the world and preserves the player. Carried: the haul (bag, Safe Pocket, loose currency), current health, consumables, any gear field-equipped during the run, the run's upgrade cards, and the run's accumulated statistics.
Reset per floor: the map and everything in it, the vault and its key, the floor's guardian, and the floor clock. The key being floor-scoped means an unspent key is forfeit on descent — a small rule the game states once in copy rather than letting the player discover it as a bug.
Health not resetting is the design's second compounding resource. With no passive regeneration, attrition and fortune grow together, and the pad question becomes a genuine composite: you extract because you are rich, because you are hurt, or — usually — both.
Depth¶
Two rewards scale with depth, deliberately split so each has a clean sentence.
Depth upgrades what you find. Floor danger already drives zone tier, which drives loot rarity. Deeper floors hold better things through the mechanism that already exists — no new system.
Diving multiplies what you sell it for. A run-scoped Depth Bonus applies at bank time to currency and to the sale value of valuables. It is a readability device, not a math device: the player needs to see, at the moment of choosing, why the risky door is worth it.
The bonus counts floors descended this run, not the floor number reached. This makes a deep start and a long dive genuinely different plays — a deep start buys better tables and less walking, a long dive buys value — and it closes the exploit of starting deep and banking immediately to farm a multiplier. It applies to currency rather than gear because an item cannot be multiplied without invisibly re-rolling it.
The descend upgrade¶
Boarding the descend portal presents three cards before the next floor generates. The player picks one. This is also the run's only breath: the moment where haul, depth, and health are on screen together.
Offers always contain one card from each of three fixed categories, so the choice reads the same way every time — survive longer / kill faster / carry more out:
- Body — restore health, raise maximum health, heal on flank crits
- Edge — flank-crit damage, dash cooldown, weapon handling
- Greed — an extra Safe Pocket slot, a better Depth Bonus, a wider pickup magnet
Cards are run-scoped: they live on the run, evaporate at bank or death, and never touch the save. This boundary is what keeps the feature one structural bet rather than a second progression system requiring balance against the gear meta. Cards stack additively and may repeat. There are no rarity tiers and no synergy tree; if the system ever needs depth, that is a later decision.
One safety rail is non-negotiable: when the player is badly hurt, the Body card is forced to be a heal. Without it, carrying health between floors produces a death spiral that arrives at the boss floor unwinnable — reproducing, on purpose, the failure the measured funnel already shows at the boss wall.
Two rails the dive makes necessary¶
The Safe Pocket is automatic. The most valuable finds in the bag are always protected and ride out of a death; Deep Pockets adds a slot for the run. The player never manages it — the set re-picks itself the moment they find something better — and the protected items are shown in the HUD during the run, so what a death would cost is readable before it happens rather than revealed afterwards. This has to be automatic rather than a player choice: the manual protect control belongs to the in-run inventory, which is parked, and a compounding haul needs its floor to exist from the first floor rather than after a menu lesson.
Salves have a carry cap. Potions are grabbed on contact and now carry between floors, so without a cap they accumulate across a dive until every fight is winnable by drinking. That silently deletes attrition — the second thing the dive compounds, and half of what makes the question on each pad real. At the cap a salve is left on the ground, still there for the trip back, so the floor keeps a reserve the player has to walk to instead of a resource they hoard.
The clock, re-purposed¶
The floor clock drives the extraction-pad closure schedule and nothing else. Time no longer kills the player. A hard timer death cannot coexist with an accumulating haul: it would let a multi-floor fortune be erased by a clock rather than by a decision, several times per session.
What remains is the closure pressure, validated at G0, with its meaning inverted. Safe exits close on schedule; the descend portal never closes. The clock therefore no longer ends the raid — it pushes the player down, progressively removing the cheap ways out until banking means a long walk back through a hostile map while the descend portal sits right there. The reserve pad below is the one exception that keeps banking always possible. Camping a floor after the clock expires is self-limiting, since a floor's loot and enemies are finite and do not respawn.
One safe exit always remains open. Today the last safe pad arms a countdown once the descend opens, funnelling the endgame into the descend portal. Under the dive that rule is retired: taking away the ability to bank converts the design's central choice into coercion, and a player denied a cash-out on a large haul reads it as the game cheating rather than as tension. The funnelling intent that rule served is now carried by the Depth Bonus, which pulls players downward with reward rather than pushing them with denial. This is an explicit change to a G0-frozen rule and should be re-tested as one.
The boss floor¶
The floor holding a biome's boss carries both exit types:
- Safe exits — bank the dive, advance the checkpoint, biome not cleared. Always available.
- The boss portal — still gated on the boss dying; banks the dive and clears the biome, unlocking the next.
The boss stops being a mandatory gate and becomes the highest-stakes instance of the question the player has already answered on every floor of the run. Arriving rich and badly hurt and choosing to walk away is a good outcome: the biome waits, nothing is lost, and a player who would have churned against the wall instead banks a great run and starts another dive.
This is the design's largest single retention effect and it costs almost nothing to build — the measured funnel's worst number by a factor of roughly three is a floor that offers no way out except through the boss.
Rivals at depth¶
Rival raiders treat a large carried haul near an open pad as a reason to turn on the player. Because the haul no longer resets per floor, that condition becomes permanently true a couple of floors into any dive, which would make every rival in the back half of a run hostile.
The threshold must therefore scale with the run rather than sit at a flat count. Whether deep divers should read as hunted — which is good flavour — or whether that turns the late dive into a rival gauntlet is a tuning question for playtest, not a design decision to make on paper.
Progression / economy¶
Nothing about the meta economy changes. The 8-slot gear loadout, blueprint upgrades, the stash, and the currencies all keep their current roles and curves. The dive changes only how much arrives at once and how it feels to earn.
The checkpoint advances on banked extractions only. A floor is unlocked by cashing out from it, not by touching its portal. Dying at depth keeps the checkpoint where the last successful bank left it — the player lost the haul, never the ladder, preserving the project's no-reset promise. This also stops the checkpoint outrunning the player's actual competence, which is what currently delivers under-equipped players to the boss floor.
Start depth is a choice. The floor picker offers any floor up to the checkpoint. Combined with the descents-not-floors rule, the lobby now poses a question before the run begins: drop deep for better tables and a shorter run, or drop shallow and build the multiplier.
Biome clearing is unchanged in spirit: kill the boss and leave through its portal.
Depth is paid for once, not twice. Currency uses a deliberately flatter rarity curve than gear. Rarity is depth-driven, so letting currency use the full gear spread meant depth paid it through the loot table and again through the depth bonus. Gear keeps the wide spread — that is depth's reward — and the depth bonus is the single tunable that prices diving.
The depth bonus prices risk, and must sit below break-even. For a per-floor death chance p,
banking-versus-descending breaks even at p/(1-p). Because descending also earns a whole extra floor
of loot, the bonus has to sit below that line: if the multiplier alone clears break-even, banking early
is never correct and the choice the design exists to create is decorative. A cap keeps the deepest,
least-tested floors from compounding past that reasoning.
The remaining inflation risk is handed off, not guessed at. A depth multiplier compounding on top of a rarity ramp delivers hauls of a different order to an economy tuned for single-raid banking. The multiplier's slope starts conservative and belongs to the combat-and-economy re-anchor pass rather than to this document.
UX¶
The at-risk readout is the feature. A persistent HUD element pairs the two numbers that are the entire decision:
🎒 2,340 at risk ⬇ Depth 3 · ×1.5
This is what makes the design legible in a thirty-second demo. The current build shows a bag count and a timer, and neither is a decision.
The extraction pad already announces itself and already runs a boarding channel. What changes is the copy at the moment of contact: a safe pad states what banking would secure; the descend portal states what continuing would risk and what it would multiply. Closure banners keep their current form.
The descend screen — three cards, the haul total, the new depth multiplier, and current health. It doubles as the run's pacing beat and as the tutorial for the card system.
Result screens do real work. The extract card becomes a dive summary: floors descended, depth bonus, total banked, checkpoint reached. The death card leads with what was lost and frames the next run as winning it back — with a compounding haul this framing is the emotional payload of the whole system rather than a nicety. The retry path keeps its G0-validated two-tap speed; it now drops the player at their checkpoint and is labelled as diving again.
Onboarding does not grow. The tutorial keeps its three stages and its verbs-only curriculum; adding a fourth lesson about banking economics would reproduce the accumulated-gate loss the measured funnel already attributes to a long tutorial. The dive teaches itself on the first real run through the existing one-time coach: a single line at the first descend portal, and the first card screen serving as its own tutorial. Only the third stage's wording needs a pass.
Visual identity¶
Depth should be felt as descent, not merely counted. The transition between floors is the feature's signature moment and deserves the budget: a downward camera or lighting movement, the haul total resolving upward into its new multiplier, and a shift in the floor's ambient palette so that arriving deeper reads before the player has seen a single enemy.
The at-risk number should be alive — it ticks up visibly as loot lands, and it is the element that pulses when a pad closes. The design's tension is carried by a number, so that number must behave like a character rather than like a label.
Existing feedback language is reused throughout: the closure banners, the boarding ring, the loot-magnet spill, the flank-crit freeze-frame. No new visual grammar is introduced — this is a structural change wearing the vocabulary the player already reads.
Scope¶
In: the exit inversion and its banking rules; carrying state between floors; the Depth Bonus; the descend-upgrade cards with their three categories and heal rail; the timer's demotion to a closure schedule; the always-open reserve pad; the boss floor's safe exits; the at-risk HUD; the descend screen; the reworked result cards; the rival haul-threshold fix; the checkpoint and floor-picker re-read.
Out, deliberately:
- Rivals descending with the player and reappearing deeper with fatter hauls. The obvious next beat and a good one — but it is content stacked on a structural bet, and stacking those is how one bet becomes three.
- Any change to the meta economy, the gear slots, or the blueprint curve.
- Card rarity, synergies, or a card meta. Additive, repeatable, run-scoped, flat.
- Any change to the action pivot's verb layer. Combat, perception, and rival rules ship as frozen at G0.
- New content of any kind — no new floors, biomes, enemies, or assets.
Cuttable if the first playtest reads well without it: the descend-upgrade cards. They are the only net-new subsystem here and the only part whose removal would not unmake the design.
ТЗ / tech spec¶
Design-clarity-first, at the "what must exist" level. Validate on web, then port.
Tunables (config.js / window.CONFIG)¶
- A new
divegroup holding the structural rules, so the whole feature is one place in the Tuning panel: a master enable flag (the A/B toggle, matching how every action-pivot rule shipped), the depth bonus per descended floor, the health-threshold at which the Body card is forced to a heal, and the number of cards offered. proggains nothing structural, but its checkpoint semantics change meaning and its description strings must say so.map.roundTimekeeps its name and changes meaning: it is now a per-floor closure schedule, not a raid length. The closure timings are already expressed as fractions of it and re-scale for free.extractionneeds the reserve-pad rule to become conditional on the dive being enabled.rivalneeds its fat-haul threshold expressed so it can scale with descents rather than sitting at a flat item count.- The upgrade cards want a data table alongside the existing gear/set tables — id, category, label, and effect — so cards are added by editing data, not logic, and appear in tuning automatically.
- Every value follows the project rule: defined in defaults, described in the meta map, referenced at the use-site, never inlined.
Game systems (game.js, and its Unity equivalent later)¶
- A descend path distinct from run-end. Today boarding either portal ends the run. There must be a way to rebuild map, enemies, chests, extracts and the floor clock while preserving the player object and the run's accumulated state. This is the feature's central piece of work and the one most likely to leak bugs, because run setup currently assumes a fresh player.
- Banking moves to the safe-exit path. The run-end logic must stop treating the descend portal as a banking event and stop advancing the checkpoint there; the safe-exit branch takes over the advance.
- Run-scoped modifier state on the run object, consulted by combat, movement, loot and extraction, cleared when the run ends. It must never write to the save.
- Depth accounting — descents this run, and the bonus applied at bank time to currency and valuables.
- Timer demotion — expiry stops ending the run; it continues to drive closures.
- Reserve-pad exemption when the dive is enabled.
- Boss-floor exits — safe pads present on the boss floor, with the boss portal keeping its gate and its biome-clearing effect.
- Rival threshold scaling.
- Guards — the tutorial and sandbox runs must never dive. Difficulty scaling already derives from biome and floor, so it follows the descent for free.
UI / art¶
- Persistent at-risk + depth HUD element; the run haul value is already computed and needs displaying, not deriving.
- Descend screen — three cards, haul, multiplier, health.
- Result screens — dive summary on extract; loss-led framing on death; retry relabelled and re-targeted at the checkpoint.
- Floor picker relabelled from replay-selection to drop-depth.
- Pad copy distinguishing bank-and-end from risk-and-continue.
- Floor-transition treatment — the descent moment described under Visual identity.