Advertisement
AI Sound Design

Writing AI Prompts for Heal Sounds: “Warm Shimmer” Is Not Enough

Ask a generator for a warm shimmer and you get the average of every warm shimmer in its training data. What to specify instead, with prompts you can adapt.

The prompt is four words: warm shimmering heal, gentle, ethereal. The generator answers. It always answers. What comes back is a glassy pad with a slow swell, a two-and-a-half second tail, and a cluster of detuned sines around 3 kHz. Nothing about it is broken. It is also nearly the same sound you got the last three times, and close to the heal cue in two other games you played this year.

That is not a broken model. Adjectives point in a direction, and a generator asked for a direction tends to return the most typical sound inside it: the middle of everything it has been taught to call warm and shimmering, and a large share of shipped heal cues live there.

Nothing in those four words said how long, how fast, how bright, or what the sound is made of. The generator filled in those blanks with its own defaults. If the cue has to fit your game, you have to take those decisions back.

Why “Warm Shimmer” Resolves to the Same Sound Every Time

Warm is comparative. To one designer it means a low shelf around 300 Hz and a little saturation; to another it means a soft attack and nothing above 4 kHz. The word does not separate those two readings. Shimmer is a texture word with no time, level or pitch in it. Together they describe a neighbourhood, not an address.

A text-conditioned model also has no idea that your game already has a bright coin at C6 and a damage thud near 180 Hz. It can only return the average of the examples labelled with those words.

The gaps in the prompt are then filled by defaults, and the defaults are that average. Attack often lands somewhere around 40–60 ms because soft swells dominate the label. The tail runs long because reverb is read as airy. Energy clusters between 2 and 5 kHz because that band is read as shimmer. Three reasonable choices that add up to a cue which cannot cut through combat.

A specific physical action can do more than six adjectives, because it drags a transient, a noise character and a decay shape along with it.

What a Usable Prompt Actually Contains

Six elements. You rarely need all of them, and pinning any three usually pulls the result away from the mode.

  • Source and physical action. What is being moved or struck, and how. “Air pushed through a small metal chime” gives a mechanism; “shimmer” gives a mood.
  • Envelope in time. Attack, decay and the point where it reaches silence, in milliseconds. “5 ms attack, exponential decay to silence at 420 ms” is a shape. “Gentle” is not.
  • Total duration and tail. Say the length in seconds and what happens at the end. A cue that closes at 700 ms will not turn into a pad by accident.
  • Spectral centre. Where the energy sits, in Hz. “Body centred at 620 Hz with a breath layer band-limited 1.8–2.8 kHz” places the cue in your mix instead of in someone else’s.
  • Texture. The grain: harmonic, granular, noisy, breathy or moving. “Two sines with slow amplitude movement” is a texture you can hear in advance.
  • Negative terms. The fastest way to exclude the wrong reading. No bell, no choir, no reverse swell, no harp, no long tail. Each of those is a shortcut back to the average.

The list is a checklist, not a template. A forty-word prompt with five of these pinned usually beats a four-word one, and length is a side effect rather than the goal. The habits behind writing better AI sound prompts apply here, with one addition: heal sounds are easy to make pretty and hard to make legible.

Three Heal Situations, Annotated

Same category, three different briefs. The mood words survive, but they are no longer carrying the message alone.

Instant heal, combat, 0.6 seconds

short heal confirmation, 0.6 s total, 4 ms noise transient band-passed 1.8–2.5 kHz, body centred 620 Hz rising to 900 Hz in two steps, triangle plus one fifth, dry, decay to silence by 420 ms, no bell, no choir, no reverse swell

The 0.6-second ceiling comes from the situation, not from taste: the player is moving when this fires. The 4 ms transient registers before the music does, and band-limiting it keeps it from turning into a click. The two-step rise says gain while still landing somewhere, which a continuous glide does not. The negatives do the most work here, because bell, choir and reverse swell are the shortest routes back to the average.

If it comes back reading as a coin, lower the body to 520 Hz and drop the fifth before changing anything else. One axis at a time.

Regeneration channel, 4 seconds, looping

steady 4.0 s heal bed, no attack transient, level flat within 1 dB, two sines at 300 Hz and 450 Hz with 5 Hz amplitude movement, filtered noise at -24 dB, no fade at the start, no tail, no shimmer

There is no attack here on purpose. The cue repeats for as long as the channel runs, and a transient that reads once will read as a stutter on the eighth repeat. A loop point is also a spec the generator cannot infer: keep 100 ms of steady signal at each end and crossfade 40 ms in the engine. The “no shimmer” clause keeps the top end clear of hit sounds still landing while the player heals.

Co-op revive, 2.5 seconds, stationary player

2.5 s revive, breath in over 300 ms, rising minor third landing at 1.2 s, body 220 Hz to 660 Hz, granular texture, 600 ms room tail, nothing above 6 kHz, no choir, no harp

Length is affordable here because the player is held in place for the animation. The landing point at 1.2 s matters more than the rise: a gesture that keeps climbing leaves the ear waiting. The granular texture gives the cue a body a sine stack cannot, and the 6 kHz ceiling stops it masking the revive UI tones. No choir, no harp: both are what a model reaches for on the word ethereal.

Try a Brief, Not an Adjective

Set a duration, a spectral centre and a closing time, then listen to what the generator does with a written brief instead of a mood.

Open the Heal Sound Generator →

Change One Axis at a Time

Once the prompt has six parts, the temptation after a bad generation is to rewrite all of them. Change one axis per attempt: source, envelope timing, spectral centre, texture, or the negative list. Two changes at once and a better result tells you nothing about which clause caused it, while a worse result can bury a clause that was working.

Keep a log, because these tools are not deterministic and versions move under you. A prompt that produced a good cue last month can produce a different sound after an update; without the seed and the version string you have a memory, not a record. For every generation worth keeping, note:

  • the seed and the model version string, exactly as the interface shows them;
  • the full prompt text, not the cleaner version in your head;
  • the exposed parameters: duration, temperature, any loudness normalisation;
  • the output file name and its render settings, such as 48 kHz, 24-bit WAV;
  • one line on what it was accepted or rejected for.

That log is what makes the next round cheap. The habits for iterating prompts rest on it more than on any clever phrase: a logged clause can be tested.

If the shimmer itself is the problem and no wording fixes it, the top layer can be rebuilt and mixed in, and synthesizing a shimmer from oscillators walks through that stack.

Audition It Against the Damage Cue

A heal heard alone always sounds fine. Nothing masks it, nothing competes with it, and no music is playing. The cue that matters most is the one that took the health away.

Play the damage cue, then the heal 300 ms later, at the same monitor gain. If the heal body sits in the 200–400 Hz region shared with the impact thud, the thud will win. Move the heal body up, or cut 3 dB around 250 Hz, and listen again.

Then lowpass the mix at 4 kHz and drop the level 20 dB, roughly what a phone speaker does to your cue before the player hears it at full volume. If the sound disappears, its identity is in the low-mid, the first thing a small driver throws away.

Third check: zoom to the first 20 ms of both files and compare the transient shapes. When the heal opens with the same envelope as the damage cue, players read it as another hit no matter what happens in the body.

Finally, audition the encoded file, not the WAV. 48 kHz, 24-bit is a sensible working format, but what ships is usually Opus at 96 kbps or Vorbis. Encode it and check whether the 4 ms attack survived.

A heal understood in the middle of a fight is the whole job. The four words are a reasonable first sentence, not a brief.

Advertisement