Generate variations
generate_soundsGenerates sound variations for an event (spends credits: refused until the user approved the cost in the conversation, see approve_spending). Without prompt/duration/loop, uses the event's. LOOP OR ONE-SHOT, decided from what the sound is in the game: a LOOP is anything that lasts while something keeps happening and the game plays on repeat: ambience and weather, music, engines and machines, fire burning, flowing water, AND movement cycles: footsteps, walking, running, crawling, galloping, sustained wing flapping, rolling. Footsteps are a walk cycle with several steps (6-10 s), never a single step. A ONE-SHOT is one discrete action: hit, swing, click, cry, death, explosion, door, item, sting. DURATION: one-shots at least 2 s even for a tiny click, since shorter clips come out thin (hits, clicks and swings 2 s; cries, deaths, collapses and stings 3-5 s); movement loops 6-10 s; ambience, engine and fire loops 10-16 s. A music TRACK (Music folder) is not a sound effect: it is generated with generate_music and lasts up to the user's plan limit (generate_music duration_sec says it), usually 1-3 min for a theme and 30-60 s for a short loop. The server refuses one-shots under 2 s and loops under 6 s. COST = seconds rounded up × the account price per second (creditsPerSecond in list_games) × variations. The request can be in any language: the AI understands it and describes the sound for the generator (exact=true: translate only, literal). Returns the new variations (each with its editor link), the event page (url) and the game's studio (studioUrl). The game only plays chosen sounds: if the event has none yet, ALL the new variations become chosen and the game picks one at random (auto_choose=false turns this off; voice lines are never chosen automatically, generate them with generate_voice); an existing choice doesn't change. To switch or trim the list, use choose_sound.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"event_id": "<event_id>"
},
"name": "generate_sounds"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| loop | No | true for anything continuous the game repeats (ambience, music, engines, fire, footsteps, running, flapping). Saved on the event. | |
| exact | No | true = literal mode: only translates to English, without the AI filling out the description. | |
| prompt | No | Description of the sound, preferably in English. | |
| channels | No | Audio channels. auto (default): mono for everything the game positions (footsteps, hits, creatures, interface), stereo for Ambience backgrounds and for music in any folder. stereo: for a sound that does not come from a spot on the map (a sting, a screen whoosh). The choice is saved on the event. | |
| event_id | Yes | ||
| variations | No | If omitted: 1 for a looping sound (ambience), 3 for everything else. | |
| auto_choose | No | ||
| duration_sec | No | One-shot at least 2 s; movement loops 6-10 s; ambience 10-16 s. A music track is generate_music, not this. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| created | Yes | ||
| credits | Yes | ||
| refunded | Yes | ||
| studioUrl | Yes | ||
| generationIds | Yes |