Implement Phase 2 audio gaps: 25 medium-difficulty synthesizers and ambient loops

- 23 new ExpandedSciFiAudioSynth methods + 2 WhoniverseAudioSynth methods
  covering audio_gaps.md rows #21-#45: Cardassian door, turbolift, replicator,
  scanner activation, console type clatter, Vorlon song, neural-bond swell,
  hull regen, Belter jury-rig telemetry, hull strain moan, Icarus beacon,
  void whisper, Beryllium thrum, Omega-13, repulsorlift drone, Bebop chug,
  carousel groan, slipstream surge, O2 regulator, pipe drips, steam vent,
  crash-couch gimbal, HAL respiration, Death Blossom, Cygnus piston chug
- Keyed ambient-loop registry (_scheduleLoop/_stopLoop) replacing ad-hoc
  timer fields; stopAllLoops clears registry plus legacy timers
- Single startPresetAmbience funnel in app.js engages ambience per preset on
  engage/switch and tears down on full stop; whoniverse ambience stopped on
  every preset change
- All 10 universe soundboards rebuilt (6-8 buttons each, span-2 Belter
  telemetry); NEURAL PULSE event now fires the real neural-bond swell
- TelemetrySynth era routing intentionally untouched (Phase 3 scope); docs
  updated in audio_gaps.md and sound_reference.md
This commit is contained in:
Claude
2026-09-04 08:49:58 -07:00
parent f2776885c9
commit 71252ff84f
6 changed files with 3602 additions and 121 deletions
+38 -34
View File
@@ -166,8 +166,10 @@ const UniverseRegistry = {
{ id: 'btn-door-swish', label: 'DOOR PNEUMATIC SWISH' },
{ id: 'btn-bosun-whistle', label: "BOSUN'S PIPE WHISTLE" },
{ id: 'btn-medical-monitor', label: 'SICKBAY ECG MONITOR' },
{ id: 'btn-chirp-single', label: 'LCARS SINGLE CHIRP' },
{ id: 'btn-chirp-ack', label: 'LCARS DATA ACK' }
{ id: 'btn-cardassian-door', label: 'CARDASSIAN BULKHEAD DOOR' },
{ id: 'btn-turbolift', label: 'TURBOLIFT WHOOSH' },
{ id: 'btn-replicator', label: 'REPLICATOR SHIMMER' },
{ id: 'btn-chirp-single', label: 'LCARS SINGLE CHIRP' }
],
presets: StarshipPresets
},
@@ -194,7 +196,9 @@ const UniverseRegistry = {
{ id: 'btn-tardis-door', label: 'POLICE BOX WOODEN DOOR' },
{ id: 'btn-fast-return', label: 'FAST-RETURN LEVER' },
{ id: 'btn-demat-switch', label: 'DEMAT SWITCH' },
{ id: 'btn-telepathic', label: 'TELEPATHIC CHIME' }
{ id: 'btn-telepathic', label: 'TELEPATHIC CHIME' },
{ id: 'btn-scanner-activate', label: 'SCANNER ACTIVATION' },
{ id: 'btn-type-clatter', label: 'CONSOLE TYPE CLATTER' }
],
presets: {
'tardis-1963': {
@@ -303,9 +307,9 @@ const UniverseRegistry = {
soundboard: [
{ id: 'btn-geiger', label: 'GEIGER COUNTER' },
{ id: 'btn-dock-clamp', label: 'HYDRAULIC CLAMPS' },
{ id: 'btn-relay-click', label: 'M/TH/UR TELETYPE' },
{ id: 'btn-switch-pop', label: 'HEAVY SOLENOID' },
{ id: 'btn-pneumatic-door', label: 'PNEUMATIC SEAL PURGE' },
{ id: 'btn-pipe-drips', label: 'CONDENSATION DRIPS' },
{ id: 'btn-steam-vent', label: 'BOILER VENT HISS' },
{ id: 'btn-crash-couch', label: 'CRASH-COUCH GIMBAL' },
{ id: 'btn-air-handler', label: 'HVAC AIR HANDLER' }
],
presets: {
@@ -409,12 +413,12 @@ const UniverseRegistry = {
{ id: 'btn-bio-defense', label: 'BIO-DEFENSE BURST', type: 'biodefense' }
],
soundboard: [
{ id: 'btn-telepathic-chime', label: 'NEURAL TWITCH' },
{ id: 'btn-fast-return', label: 'VASCULAR PUMP' },
{ id: 'btn-demat-switch', label: 'CHITIN CREAK' },
{ id: 'btn-chirp-sweep', label: 'BIOPLASMIC HISS' },
{ id: 'btn-sonic', label: 'SYMBIOTE VOCALIZATION' },
{ id: 'btn-relay-click', label: 'MEMBRANE FLUTTER' }
{ id: 'btn-neural-bond', label: 'NEURAL-BOND SWELL' },
{ id: 'btn-fast-return', label: 'VASCULAR PUMP' },
{ id: 'btn-demat-switch', label: 'CHITIN CREAK' },
{ id: 'btn-chirp-sweep', label: 'BIOPLASMIC HISS' },
{ id: 'btn-vorlon-song', label: 'VORLON SINGING RESONANCE' },
{ id: 'btn-hull-regen', label: 'HULL REGEN TEXTURE' }
],
presets: {
'bio-moya': {
@@ -497,12 +501,12 @@ const UniverseRegistry = {
{ id: 'btn-hal-override', label: 'HAL 9000 OVERRIDE', type: 'hal' }
],
soundboard: [
{ id: 'btn-hal-chime', label: 'HAL LOGIC CONFIRM' },
{ id: 'btn-relay-click', label: 'TAPE REEL SPOOL' },
{ id: 'btn-hal-breath', label: 'HAL RESPIRATION' },
{ id: 'btn-death-blossom',label: 'DEATH BLOSSOM SURGE' },
{ id: 'btn-cygnus-chug', label: 'STEAM PISTON CHUG' },
{ id: 'btn-chirp-single', label: 'ASTROGATOR BEAT' },
{ id: 'btn-chirp-sweep', label: 'ANALOG GLISSANDO' },
{ id: 'btn-fast-return', label: 'MAGNETIC TAPE LATCH' },
{ id: 'btn-dock-clamp', label: 'PNEUMATIC SEAL PURGE' }
{ id: 'btn-relay-click', label: 'TAPE REEL SPOOL' }
],
presets: {
'ret-jupiter-2': {
@@ -605,12 +609,12 @@ const UniverseRegistry = {
{ id: 'btn-flak', label: 'FLAK BARRAGE', type: 'flak' }
],
soundboard: [
{ id: 'btn-dradis-ping', label: 'DRADIS SCAN PING' },
{ id: 'btn-switch-pop', label: 'WEAPONS ARMED' },
{ id: 'btn-dock-clamp', label: 'BULKHEAD SEAL' },
{ id: 'btn-chirp-sweep', label: 'RADAR TARGET LOCK' },
{ id: 'btn-fast-return', label: 'TURBO-THRUSTER SWELL' },
{ id: 'btn-air-handler', label: 'RCS THRUSTER BURST' }
{ id: 'btn-dradis-ping', label: 'DRADIS SCAN PING' },
{ id: 'btn-switch-pop', label: 'WEAPONS ARMED' },
{ id: 'btn-dock-clamp', label: 'BULKHEAD SEAL' },
{ id: 'btn-carousel-groan', label: 'CAROUSEL MOTOR GROAN' },
{ id: 'btn-slipstream', label: 'SLIPSTREAM SURGE' },
{ id: 'btn-oxygen-reg', label: 'O2 DEMAND VALVE' }
],
presets: {
'mil-sulaco': {
@@ -703,12 +707,12 @@ const UniverseRegistry = {
{ id: 'btn-solar-swell', label: 'SOLAR SHIELD SWELL', type: 'solar' }
],
soundboard: [
{ id: 'btn-solar-roar', label: 'HEAT SHIELD ROAR' },
{ id: 'btn-cryo-sigh', label: 'CRYO POD SIGH' },
{ id: 'btn-orion-thump', label: 'ORION PULSE THUMP' },
{ id: 'btn-dock-clamp', label: 'HULL STRAIN MOAN' },
{ id: 'btn-telepathic-chime', label: 'VOID RESONANCE' },
{ id: 'btn-chirp-sweep', label: 'TACHYON SENSOR PING' }
{ id: 'btn-solar-roar', label: 'HEAT SHIELD ROAR' },
{ id: 'btn-cryo-sigh', label: 'CRYO POD SIGH' },
{ id: 'btn-orion-thump', label: 'ORION PULSE THUMP' },
{ id: 'btn-hull-strain', label: 'TRUE HULL STRAIN MOAN' },
{ id: 'btn-void-whisper',label: 'PSYCHIC VOID WHISPER' },
{ id: 'btn-icarus-beacon', label: 'ICARUS I DISTRESS BEACON' }
],
presets: {
'deep-avalon': {
@@ -804,9 +808,9 @@ const UniverseRegistry = {
{ id: 'btn-tape-clunk', label: 'CASSETTE CLUNK & WHIRR' },
{ id: 'btn-grappler-servo', label: 'GRAPPLER SERVO MOTOR' },
{ id: 'btn-radio-static', label: 'RF SQUELCH STATIC BURST' },
{ id: 'btn-dock-clamp', label: 'FUEL LINE VALVE' },
{ id: 'btn-afterburner-snd',label: 'AFTERBURNER BOOST' },
{ id: 'btn-fast-return', label: 'TURBO JET BURN' }
{ id: 'btn-repulsor-drone', label: 'REPULSORLIFT DRONE' },
{ id: 'btn-bebop-chug', label: 'MARINE DIESEL CHUG' },
{ id: 'btn-afterburner-snd',label: 'AFTERBURNER BOOST' }
],
presets: {
'out-betty': {
@@ -894,7 +898,7 @@ const UniverseRegistry = {
{ id: 'btn-commlock', label: 'COMMLOCK CALLING TONE' },
{ id: 'btn-sevas-spark', label: 'CONDUIT SPARK ARC' },
{ id: 'btn-station-ecg', label: 'CLINICAL VITAL (ECG)' },
{ id: 'btn-dock-clamp', label: 'DOCKING CLAMP LATCH' }
{ id: 'btn-belter-telemetry', label: 'BELTER JURY-RIG TELEMETRY', span: 2 }
],
presets: {
'sta-babylon-5': {
@@ -981,8 +985,8 @@ const UniverseRegistry = {
{ id: 'btn-tea-machine', label: 'TEA DISPENSER GURGLE' },
{ id: 'btn-kettle-whistle', label: 'KETTLE STEAM WHISTLE' },
{ id: 'btn-plaid-alarm', label: 'LUDICROUS PLAID ALARM' },
{ id: 'btn-beryllium-pulse',label: 'BERYLLIUM CORE PULSE' },
{ id: 'btn-chirp-ack', label: 'ORVILLE ACK CHIRP' }
{ id: 'btn-beryllium-thrum',label: 'BERYLLIUM SPHERE THRUM' },
{ id: 'btn-omega-13', label: 'OMEGA-13 CAPACITOR WHINE' }
],
presets: {
'com-orville': {