recipes
Every noise GREASEPAINT makes, written down as a recipe: how long it is, whether it LOOPS, which generated recording seeds it, and a `build` that fills a mono f32 array at 24 kHz with `game.audio.synth`.
audio.recipes
Every noise GREASEPAINT makes, written down as a recipe: how long it is,
whether it LOOPS, which generated recording seeds it, and a build that fills
a mono f32 array at 24 kHz with game.audio.synth.
Thirty-two clips in seven families — the beds (a warped calliope four rooms away, the tent itself: canvas, wind, a rope, and the house drone that rises with the heat), the UI furniture, the four gags, what lands on Ada, the tent's meter and its paint, the acts, and what the heat sounds like.
What the heat sounds like
tent_laugh, tent_laugh_2 and tent_laugh_3 are the same recorded house
three times over, and the difference is measurable rather than a matter of
taste: 4.20 s / 4.60 s / 5.60 s long, rms 0.30 / 0.34 / 0.42, and 39 % / 64 %
/ 76 % of the energy sitting under 300 Hz. The second is the room the joke was
told in; the third is every seat in it. bed_heat is what stays behind
between the laughs — held pipes two octaves under the calliope with the
tritone over them, and a hall of people not quite sitting still.
Four small ones go with the mechanics the heat brought: grin_bite (dried
greasepaint coming off her in flakes), card_curtsey (a skirt swept, and the
calliope bowing with her), card_tear (stiff handbill card taken across the
grain) and lamp_ping (a filament taking the current).
Everything sits in one reverb — a big soft canvas room, long and dull, never a stone hall — so the whole mix reads as one place.
How a bed loops at all
loopStart / loopEnd are stored by the encoder and read by no playback
surface, and an Opus round trip loses the head of the clip, which is a click on
every pass. So the three beds are built long, folded end over head with
Synth.seamless, and baked codec = "pcm". The bake reports the step across
the join: all land under 0.02, where a click reads in the tenths, and
bed_heat's join (0.0003) is fifty times quieter than the loudest step inside
its own material.
game/audio/bake.luau turns these into .soundClip assets under
game/audio/clips. Nothing here runs at play time — the game ships baked
clips, so a browser session synthesises nothing on the player's machine.
Scoped to this part · feeds back into the world's score.