orbit/dev
Brian Fertig 78b280d7db Add 'Pirate Problems' quest with combat ambush and save-state ledgers
- New main-story quest granted after 'Special Delivery' is claimed AND its payoff comms are ACKed all the way through (unlocks.acked gate)
- Three-step checklist: speak with Trestle (trestleQ4 warning beats), defend from a rolling wave of six raiders at the gate-to-capital midpoint, return to the Neutral Capital World
- CombatSystem.startWaves gains an origin option so ambush enemies materialize in a ring around a specified point rather than off-screen around the ship
- CommsHub fires a new onAck hook before onEnd so the scene can record acknowledgments and run its grant pass in the same tick
- QuestState.isUnlockMet / grantUnlocked accept a gates.acked set; GameScene supplies it from the comms acked-ledger
- SaveData captures/restores comms.acked, combat.done, and story.capitalReturned; resetRunState clears all three on New Game
- Combat is now built for every scene (not just ?combat demo); the hostile pack spawns only in the sandbox boot
- Test suites updated: quest unlock gating, ambush wave shape, roster count 25→28, save round-trip of new ledgers
2026-09-16 20:15:21 -06:00
..
shots Rework combat bar into bottom-centered orb strip 2026-09-16 16:14:35 -06:00
actionbar.test.mjs
…
asteroids.test.mjs
…
build-check.html
…
build-check.mjs
…
build-shot.html
…
build-shot.mjs
…
builds.test.mjs
…
cargo.test.mjs
…
cbox-test.html
…
cdp-cast.mjs
…
cdp-eval.mjs
…
cdp-firefox.mjs
…
cdp-probe.mjs
…
cdp-shot.mjs
…
cdpshot.mjs
…
clickout-test.html
…
clickout-test.mjs
…
combat-flycheck.mjs Sharpen range flight feel: smoothed turn, ramped throttle, instant brake 2026-09-16 00:17:35 -06:00
combat-shot.mjs Combat feedback parity: README combat section, screenshot evidence, CDP shot harness 2026-09-16 02:58:55 -06:00
combat.sfxcheck.mjs Combat SFX layer: seven distinct event voices, shared across both contexts 2026-09-16 00:47:45 -06:00
combat.test.mjs Add 'Pirate Problems' quest with combat ambush and save-state ledgers 2026-09-16 20:15:21 -06:00
comms-click.html
…
comms-click.mjs
…
comms-hold.html
…
comms-hold.mjs
…
comms-intro.html
…
comms-intro.mjs
…
comms-mine.html
…
comms-mine.mjs
…
comms-shot.html
…
comms-shot.mjs
…
comms-trestle-hold.html
…
comms-trestle-hold.mjs
…
comms-trestle.html
…
comms-trestle.mjs
…
comms-types.html
…
comms-types.mjs
…
comms-upgrade-hold.html
…
comms-upgrade-hold.mjs
…
comms.test.mjs Add 'Pirate Problems' quest with combat ambush and save-state ledgers 2026-09-16 20:15:21 -06:00
compass-far.html
…
compass-far.mjs
…
contact.test.mjs
…
container-probe.html
…
container-probe.mjs
…
decode.test.mjs
…
delivery-launch.test.mjs
…
dialog-shot.html
…
dialog-shot.mjs
…
discovery.test.mjs
…
economics-report.mjs Halve trade margins: distance bands -> x0.75/x1.15/x1.85/x2.75/x3.75 2026-09-15 11:38:57 -06:00
economy-bands-audit.mjs Halve trade margins: distance bands -> x0.75/x1.15/x1.85/x2.75/x3.75 2026-09-15 11:38:57 -06:00
economy.test.mjs
…
engine-flare-test.mjs
…
exit-gate-shot.html
…
exit-gate-shot.mjs
…
explore.test.mjs
…
faction-balance.diag.mjs
…
faction-sweep.diag.mjs
…
factions.test.mjs
…
frames.test.mjs
…
galaxy-labels.test.mjs
…
galaxy-legend-shot.html
…
galaxy-legend-shot.mjs
…
galaxy-map.test.mjs
…
galaxy.test.mjs
…
gate-comms.html
…
gate-comms.mjs
…
hold-restore.html
…
hold-restore.mjs
…
jump-cargo.html
…
jump-cargo.mjs
…
jump-travel.test.mjs
…
jumpgate.test.mjs
…
jumps.test.mjs
…
landing-click.html
…
landing-click.mjs
…
map-click.html
…
map-click.mjs
…
map-dest-shot.html
…
map-dest-shot.mjs
…
map-shot.html
…
map-shot.mjs
…
menu-intro-test.html
…
menu-intro-test.mjs
…
mineral-hud.test.mjs
…
mining-test.html
…
mining-test.mjs
…
mining.test.mjs
…
music.test.mjs
…
nebula.test.mjs
…
new-research-shot.html
…
new-research-shot.mjs
…
particle-probe.html
…
particle-probe.mjs
…
perimeter-shimmer.test.mjs
…
phaser-loader.mjs
…
phaser-stub.mjs
…
planet-balance.test.mjs
…
planet.test.mjs
…
popup-shot.html
…
popup-shot.mjs
…
probe-imports.html
…
quest-ready.html
…
quest-ready.mjs
…
quest-tracker.test.mjs
…
quest-window.test.mjs
…
quests.test.mjs Add 'Pirate Problems' quest with combat ambush and save-state ledgers 2026-09-16 20:15:21 -06:00
queue-celebrate.html
…
queue-celebrate.mjs
…
reputation.test.mjs
…
research-builds.test.mjs
…
research-complete-shot.html
…
research-complete-shot.mjs
…
research-cue-shot.html
…
research-cue-shot.mjs
…
research-cue.test.mjs
…
research-shot.html
…
research-shot.mjs
…
route-pulse-live.html
…
route-pulse-live.mjs
…
route-pulse.test.mjs
…
route-shot.html
…
route-shot.mjs
…
route.test.mjs
…
run-all.mjs
…
save-shot.html
…
save-shot.mjs
…
saves-ui-test.html
…
saves-ui-test.mjs
…
saves.test.mjs Add 'Pirate Problems' quest with combat ambush and save-state ledgers 2026-09-16 20:15:21 -06:00
scan-test.html
…
scan-test.mjs
…
scan.test.mjs
…
scene-restart-probe.html
…
scene-restart-probe.mjs
…
scout-dest-shot.html
…
scout-dest-shot.mjs
…
scout-dest.html
…
scout-dest.mjs
…
scout-overlap.html
…
scout-overlap.mjs
…
server.mjs Add combat sandbox: standalone arena to tune combat before it ships 2026-09-15 20:54:33 -06:00
sfx.test.mjs
…
ship-behavior.test.mjs
…
shop-hud-shot.html
…
shop-hud-shot.mjs
…
shop-hud.html
…
shop-hud.mjs
…
shop-select-shot.html
…
shop-select-shot.mjs
…
shop-shot.html
…
shop-shot.mjs
…
shop-ui.test.mjs
…
shot-firefox.mjs
…
signal-compass-flow.html
…
signal-compass-flow.mjs
…
signal-compass.test.mjs
…
smoke-game.mjs
…
star-art.test.mjs
…
starfield.test.mjs
…
station-frames.test.mjs
…
station-shot.html
…
station-shot.mjs
…
storm.test.mjs
…
surface-flow.mjs
…
surface-hud-shot.html
…
surface-hud-shot.mjs
…
surface-hud.html
…
surface-hud.mjs
…
surface-shot.html
…
surface-shot.mjs
…
surface-skip.html
…
surface-skip.mjs
…
surface-test.html
…
system-category.test.mjs
…
system-chart.test.mjs
…
system-effects.test.mjs
…
system-hud.test.mjs
…
system-layout.test.mjs
…
test-game.html
…
tether-flow.html
…
tether-flow.mjs
…
tether-newworld.html
…
tether-newworld.mjs
…
tether-rules.audit.mjs
…
tether.test.mjs
…
trade-scout.test.mjs
…
tutorial.test.mjs
…
type-preview.test.mjs
…
video-reopen.html
…
video-reopen.mjs
…
video-replay.html
…
video-replay.mjs
…
vignette-flow.html
…
vignette-flow.mjs
…
vignettes.test.mjs
…
wd-shot.mjs
…
wdshot.mjs
…
world-names.test.mjs
…
zorder-test.html
…
zorder-test.mjs
…