Split The code is public; the app answers only to the crew.
A teammate's call you can hear: the radio has no sound, so a callout only exists if you happen to be reading #181
Sign in to join this conversation.
Split The code is public; the app answers only to the crew.
Give a radio call a sound, so the four teammates #172 just taught to talk are something you notice while you are aiming somewhere else.
Since pull #172 a bot says what it sees on the message line, and since #103 the person can call go A, go B and hold with <kbd>Z</kbd>. Both are silent.
src/client/audio.tsalready generates every sound in the game — the shot, the footstep, the plant, the defuse, the bomb's beep, the pain — andearshot.tshandsmain.tsa cue for each. A line of text in the middle of a firefight is a line nobody reads: the whole point of a callout is that it reaches you while your eyes are on a doorway.Done looks like
callout.ts(SIDE_GAP4s,SPEAKER_GAP6s,REPEAT_GAP12s) are the rate limit — do not add a second one.AudioContextthe wayaudio.test.tstests the rest: a call produces exactly one blip with no panner in its chain; mute produces none; a call the person cannot hear produces none.Files I expect to change:
src/client/audio.ts,src/client/audio.test.ts,src/client/cues.tsorearshot.ts(whichever owns the cue — say which and why),src/client/main.ts,README.md.Waits on #110, whose pull rewrites a large part of
audio.tsfor the flashbang; landing a second sound into that file at the same time is a conflict for no reason.Risks: the arena and the simulation must not learn about this — a sound is a cue on the way out, and nothing in
world.tsorobserve.tschanges. Keep it quiet: a blip that is louder than a footstep will be the first thing anyone turns off.Brief that fits: vesper.