fix: tighten gun audio timing and replace off-character sounds

- Gunshots: strip lead-in silence from every firearm recording (the audible
  delay between trigger and bang) and hard-trim to a single 0.7s crack with
  a fast fade — the outdoor-range echo read as 2-3 extra shots. Big single
  shots (AWP/shotgun/rocket/mortar) keep a 1s tail but still one boom.
- Hit confirm: short fleshy punch thock instead of the bell ("taco bell")
- Dash: clean synthesized air whoosh (bandpassed pink noise swell) instead
  of thruster fire crackle; grapple shoot inherits it
- Jump: push-off foot scuff + faint whoosh instead of the balloon boing
- Wind speed-loop: deep lowpass so it reads as rushing air, not fire
- Grenade: silent in flight — the rocket-engine loop made it sound like it
  was burning; bounces still audible

Verified: reimport + smoke test 0 failures, 11/11 movement tests.

Co-Authored-By: Claude Fable 5 <[email protected]>
This commit is contained in:
Nicholas Butzke
2026-07-17 23:29:34 -04:00
co-authored by Claude Fable 5
parent a9b0775de3
commit 0155bcdf04
27 changed files with 3 additions and 15 deletions
+3 -15
View File
@@ -10,21 +10,9 @@ func _ready() -> void:
damage = 120.0
func _setup_effects() -> void:
# Audio
flight_sound = AudioStreamPlayer3D.new()
flight_sound.bus = "SFX"
flight_sound.stream = load("res://assets/sounds/rocket_flight.wav")
flight_sound.autoplay = true
if flight_sound.stream is AudioStreamWAV:
flight_sound.stream.loop_mode = AudioStreamWAV.LOOP_FORWARD
flight_sound.stream.loop_end = flight_sound.stream.data.size() / 2 # mono 16-bit frames
flight_sound.unit_size = 6.0
flight_sound.max_db = 0.0
flight_sound.max_distance = 45.0
flight_sound.volume_db = -10.0
add_child(flight_sound)
flight_sound.play()
# No flight loop — a lobbed grenade flies silently (the rocket engine
# loop read as "the grenade is on fire"). Bounces still make noise.
# Grenade Body
var body_mesh = MeshInstance3D.new()
var sphere = SphereMesh.new()