Ad variations
A variant is a new scene copied from one that exists, with one thing
changed, filed in the same project. The source is never touched, its stills
and clips are never copied, and nothing is spent until the person has seen a
variant's price from quote and said yes to it in the chat. Change ONE thing
per variant, so what gets kept says something.
The order
- Find the source:
recent,searchorprojectgives itsscene_id;scenereads it in full (prompt, seconds, title, the timed shots) and gives only the COUNT of its photos; the refs themselves are what you passed, orproject'sreferenceslist, each naming the scenes it is on. Read it first. - Agree the variable with the person: hook, length, first shot, product photo or model. Draft the change, show it, get a yes.
duplicate_scenewith thescene_idand ONLY the fields that change; the rest is copied. The reply gives the newscene_idandcopied_from.- Note which is which (below), then
quoteeach variant and say its price:keyframes(stills,eachcredits a still) andclip(itscreditsin all), beside thebalance. Then WAIT. One yes covers exactly the quotes the person was shown and named; anything else needs its own yes. - On the yes,
approvewith thatscene_id,what"clip", thetokensfrom its quote and the sameprovider,modelandframethe quote was priced with (and itsdurationwhen the scene is one shot). Tokens are good for one hour; a changed choice is refused, never re-priced.what"keyframes" draws the stills instead, on a yes of its own. Thenjobwith the returned id (waitup to 15) until it is done;sceneshows the clips. - Later,
what_worksreads what was kept.
The five changes
- Hook (
prompt): rewrite the first window's line only -- the first sentence said, or the first image -- in the person's own words, and keep every other window, the style block, the sound and the avoid list as is. - Length (
prompt+seconds): re-time the windows so they still run contiguously from 0 to the new total, each 2-10 s; drop or shorten a shot rather than squeeze them all;secondsis the last window's end. - First shot (
prompt): swap the opening window for a different image (the product before the face, or the reverse); the rest stays timed. - Product photo (
refs+roles): a different pack shot fromelementsas the first ref with roleproduct(or a different face assubject). The first ref anchors the render, so this changes the picture most. A refelementsdid not list is refused. - Model: a scene carries no model; it is picked at the quote, so no copy
is needed.
recommend_modelranks models for the job in words;quotewithmodel(andframe) prices the same scene on another one, andapprovewith those tokens and that same choice renders it there;set_preferenceswithvideo_modelmakes it the default wherever a call passes nothing (the quote then says so inpreference; name it again atapprove), anddraft_firsttrue prices the cheaper draft frame where a model has one.video_modelslists them with credits per frame.
Telling variants apart
A copy is titled " (copy)" and cannot be renamed from here (a
write_scene rewrite replaces a scene's text, never its title), so keep a
short table in the chat as you go and say which scene_id is which:
| scene_id | variable | change | credits (each from its own quote) |
|---|---|---|---|
| 412 | source | -- | 3 shots: its quote's total |
| 418 | hook | opens on "two weeks" | 3 shots: its quote's total |
| 419 | length | 15 s to 10 s | 2 shots: its quote's total |
Worked example
Source 412 is a 15 s to-camera ad with three windows and the person wants a
shorter one. Re-time it: (0-4s) the open unchanged, (4-10s) the product shot
two seconds shorter with the closing line moved to its end, the third window
dropped. Then duplicate_scene with scene_id 412, the re-timed prompt
and seconds 10: it gives scene 419. quote 419 with model ltx2.3 reads
two shots, each with its credits, and their total (each window is fitted up
to the model's shortest length), beside the balance. Say that and wait. On "yes", approve
419, what "clip", the two tokens, provider fal, model ltx2.3, frame
1080p; job until it is done; scene 419 shows the clip.
Reading the result
what_works says, per model and per preset, how many outputs were made and
kept (downloaded, cut, starred, used again), how many tries a keeper takes,
and what was posted with a scene behind it. When enough_data is false,
say so rather than read a winner into two renders. scene on each variant
shows which clips landed, with its studio link.
Do not
- Never change two variables in one copy and call it a test.
- Never call
approvewithout a yes in this chat to that variant's own price, never approve on the person's behalf, and never carry one yes over to the next variant or a second render of the same one. - When
quoteorapproveanswersinsufficient_credits(withneedsandavailable), stop and say so: credits are added in the studio. - Never put a URL in
refs(exactly aselementslists them), and never rewrite the source withwrite_sceneto make a variant; copy it.
