Power-ups: repair, Overdrive and Shield pods - #6
Merged
Merged
Conversation
Nine pods on a fixed seed, floating in the arena. Fly through one to
collect it.
Repair pod (green heart) +35 hull, six of them, back after 25s
Overdrive pod (violet ^^) 2x fire rate and 2x damage for 18s,
three of them, back after 45s
Built as the minefield's mirror — same seeded placement, same instanced
geometry, same contact test — because that is what makes the numbers
argue with each other. A mine is 45 flat damage and a pod is 35 flat
healing, so both land hardest on the thinnest hull: the Wasp fears the
minefield exactly as much as it loves the pods. The heal stays under the
mine so a pod never fully pays one back, or the minefield stops being
terrain you route around and becomes a toll.
Overdrive multiplies out to 4x damage, but not for everyone. It does not
discount gun heat, so a boosted Wasp banks heat twice as fast and
redlines in half the time — 3.1x sustained against the full 4x on the two
guns without a heat quirk. Left uncompensated on purpose: the airframe
that already fires fastest gaining least from firing faster still is the
argument the quirk makes everywhere else.
Pods are player-only. Nothing in EnemyPilot steers toward one, so a
hostile collecting one would be a coin flip that quadrupled its damage
with no tell and no counterplay. That asymmetry is the one place this
breaks the "one flight model, both sides" rule, so it is argued out at
the top of world/pickups.ts rather than left to be discovered.
HUD: a violet gauge in the airframe panel for the whole buff, and a
centre countdown for the last ten seconds. A second pod refreshes the
clock rather than stacking it.
Checks: simcheck covers placement, contact, collection, respawn, the
full-hull no-op, that repairing does not restart the Drone's nanite
delay, and that Overdrive expires and does not survive a respawn. The
balance harness measures the boosted DPS and time-to-kill matrices and
asserts the pods are worth the detour, the heal does not undo a mine,
and no boosted kill lands too fast to see.
|
Someone is attempting to deploy a commit to the Delineator Team on Vercel. A member of the Team first needs to authorize it. |
Review feedback from the #gamedev thread. Overdrive Halves the fire interval and no longer touches bolt damage, so total output is 2x rather than 4x and the way you see it is the rate of fire. That also removes a nasty second-order effect: the old 2x-damage bolt pushed a Drone's volley to 80 against a 70-hull Wasp, deleting one between frames with no hit flash and nothing to read. Alpha strike is now invariant under the buff, and the harness asserts it — measured boosted TTK bottoms out at 0.78s, above even the stock 0.6s floor. Duration 18s -> 10s, and pods now stack instead of refreshing. Stacking duration is safe in a way stacking magnitude is not: the effect is a fixed 2x whether you hold one pod or four, so the ceiling never moves. Shield New blue pod. Refuses incoming damage outright — bolts, mines, station scrapes, the star — for 10s, stacking. Three things deliberately do not happen while it holds: the damage clock does not reset, so a shielded Drone keeps repairing; the refused hit is not credited to the shooter, so it cannot inflate accuracy the way sear damage once did; and the ship stays targetable, so bolts still arrive and splash. Rendered as a faceted wireframe bubble that brightens over its last two seconds. Countdown at 5s for both, from one shared constant. Pod glyphs Every pod is now a glyph inside a ring, turned to face you. The billboard is the load-bearing part: a flat extruded glyph thins to a line twice a rotation and foreshortens into a bar for most of the rest, which is why the old stacked chevrons read as a blocky arrow at any distance. Overdrive is now a lightning bolt — one silhouette with a hard zig-zag nothing else in the arena has. The ring is sized so its outer edge is exactly PICKUP_RADIUS: the frame you see is the hitbox you are steering at. Its inner edge clears every glyph by a wide margin, because the first attempt had icons touching their frames and both bloomed into a single filled disc. Also fixed: the killfeed's "+10s" uppercased to "+10S" and read as "+105" in this font, and the countdown banner sat on the callout line so a "SHIELD UP" callout landed on top of an Overdrive countdown. Counts are now 5 repair / 4 overdrive / 4 shield, respawning at 25 / 30 / 30 seconds.
saucy-tech
marked this pull request as ready for review
August 5, 2026 19:58
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 89c68b9679
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Three power-ups, per the
#gamedevthread. Updated after Brandon's review — see What changed in review at the bottom.Thirteen pods on a fixed seed, floating and turning to face you. Fly through one to collect it.
Screenshots
Every pod is a glyph inside a ring, turned to face you. The billboard is the load-bearing part: a flat extruded glyph thins to a line twice per rotation and foreshortens into a bar for most of the rest, which is exactly why the first pass read badly at range. The ring is sized so its outer edge is exactly the pickup radius — the frame you can see is the hitbox you are steering at.
Repair pod. Lime, because lime is the hull gauge it refills. Emphatically not red: red in this arena means a mine, and a heal sharing a colour with the one object that takes 45 hull off you is a trap rather than a pickup.
Overdrive pod. A lightning bolt — one silhouette with a hard zig-zag nothing else in the arena has, which is what makes it legible at the range you actually decide whether to turn for it.
Shield pod. Blue, pushed well off the Hornet's cyan so it never reads as a contact at range.
Shield holding. A faceted wireframe bubble that brightens sharply over its last two seconds — a second channel saying the same thing as the HUD countdown, for a pilot whose eyes are on the reticle rather than the corner panel.
Both buffs up, one counting down. Gauges in the airframe panel with live second counts, and a centre banner for the last five seconds. Overdrive's gauge has gone amber and is flashing; Shield's is still blue with 9.35s on it.
How it is built
The pods are the minefield pointed the other way — same seeded placement, same instanced geometry, same contact test. That is deliberate, because it is what makes the numbers argue with each other. A mine is 45 flat damage and a repair pod is 35 flat healing, so both land hardest on the thinnest hull: the Wasp fears the minefield exactly as much as it loves the pods. The heal stays under the mine so a pod never fully pays one back.
Overdrive adds bolts, not bolt damage. This is the important one.
spec.damageis untouched, so alpha strike — and therefore every one-volley-kill threshold in the game — is invariant under the buff. It also does not discount gun heat, so a boosted Wasp banks heat twice as fast and redlines in half the time:That
alphacolumn is the unboosted one and stays that way. The airframe that already fires fastest gaining least from firing faster still is the argument the heat quirk makes everywhere else.A Shield refuses damage outright — bolts, mines, station scrapes, the star. Three things deliberately do not happen while it holds:
onDamagedis what the loop counts as "a hit landed" and letting it fire would inflate the accuracy stat with bolts that accomplished nothing — the same trap sear damage already has a comment about;Both timed pods stack. Stacking duration is safe in a way stacking magnitude is not: the effect is a fixed 2× whether you hold one pod or four, so the ceiling never moves and the harness has one number to check. Deliberately uncapped — with four pads on a 30s respawn, the real limit is how much of the arena you are willing to cross instead of fighting.
Pods are player-only. Nothing in
EnemyPilotsteers toward one, so a hostile collecting one would be a coin flip with no tell and no counterplay. That is the one place this breaks the repo's "one flight model, both sides" rule, so it is argued out at the top ofsrc/world/pickups.tsrather than left to be discovered.Checks
npm run checkis green. New coverage:MAX_STEPframe.What changed in review
Two smaller things I caught while shooting the screenshots and fixed:
+10suppercased to+10S, which reads as+105in this font. Now+10 SEC.SHIELD UPcallout landed on top of an Overdrive countdown. Moved below the callout line.Worth your eye: thirteen pods is a lot of objects in the arena, and because they billboard, distant ones read as small bright rings. It looks good to me, but it is more visual furniture than the arena had before — say the word if you want the counts down. All counts, durations and respawns are one-line constants at the top of
src/world/pickups.ts.Still drafted for feedback before marking ready.
🐝 Opened by Bumble from the
#gamedevthread.