Stick-Figure Animator · skill pública Open Skill

Stick-Figure Animator

Stick-Figure Animator é uma Open Skill pública no Digen. Abra para ver o que este fluxo cria.

@AlphaMale11

Kids

7 1 4

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/2966093/2026-10-03/jf5uh8dy.jpg

# Stick-Figure Animator

Turn an idea into a seamless, hand-drawn 2D-animator-style movie starring pencil-drawn stick-man and stick-woman on notebook paper. Every scene is a single-angle shot with slow camera zoom in/out for a realistic cinematic feel, and each scene is ~15 seconds of animation with matching sound effects (the stick running, jumping on the paper, etc.). Scenes are grouped into episodes of 6 scenes each; the author can make as many episodes as they want, and each episode is stitched into one continuous cut.

## When to use
- The user wants a notebook-paper / pencil-drawn stick-figure animated movie or short from an idea, one-liner, story, or scene description.
- The user wants to advance or change one step: rewrite the story, redo one scene, restyle the characters, remix the cut.

## Reference files
- None required. All instructions are in this body.

## Steps

1. **Clarify the story.** Ask what should happen (or expand a one-liner into a short movie). Agree on the number of episodes (each episode = 6 scenes) and the overall mood. If the user only wants to redo/advance one step, skip to that step directly.

2. **Write the scene breakdown.** Call `create_document` with the story as a numbered scene list organized by episode (Episode 1: scenes 1–6, Episode 2: scenes 7–12, …). For each scene note: what happens, the single camera angle, the zoom direction (in or out), and the sound effect to add (e.g. running, jumping, landing, paper rustle). Use `name="Stick-figure movie script"`, `entity_type="scripts"`, `content_type="text/markdown"`. If the user later edits the story, use `update_document(asset_id=..., content=...)` on the same document.

3. **Create the character/style reference.** Call `generate_image` with `model='t2i'`, `orientation='landscape'` (or `portrait` if the user asks for vertical), `resolution='720P'`. Prompt must fix the style: a sheet of white notebook paper (faint ruled lines) as the background, hand-drawn pencil stick figures — a stick-man and a stick-woman — drawn in thin graphite sketch lines, clean 2D-animator storyboard look, no color fill, no text. Use `name="Stick-figure character ref"`, `entity_type="characters"`. This image anchors the style and characters for every scene.

4. **Generate one still per scene.** For each scene, call `generate_image` with `model='i2i'`, passing the character-ref image in `input_urls` (plus the previous scene's still if you want continuity), same `orientation`/`resolution`. Describe the scene's action and composition in the prompt, keeping the notebook-paper + pencil stick-figure style. Use `name="Scene N still"`, `entity_type="storyboard_images"`.

5. **Animate each scene (~15s).** For each still, call `generate_video` with `model='i2v'`, `input_urls=[<that scene's still>]`, `duration=15`, same `orientation`. The prompt must describe the action AND the camera: a single fixed angle for the whole scene with a slow, smooth zoom in (or zoom out) to give a realistic cinematic feel. Use `name="Scene N clip"`, `entity_type="storyboard_videos"`.
   - If the model clamps the duration below 15s, generate the scene as multiple shorter segments (same still, slightly different zoom stages) and concatenate them with `mix_clips` to reach ~15s.

6. **Generate sound effects per scene.** For each scene, call `generate_music` with a prompt describing the realistic sound effect that matches the action — e.g. light rhythmic pencil-tip tapping and soft scraping on paper for the stick running, a soft papery thud for a jump/landing, gentle paper rustle for movement. Add any other sounds the scene needs. Use `name="Scene N SFX"`, `entity_type="music"`. Keep each SFX roughly the scene's length.

7. **Stitch each episode (6 scenes).** For each episode, call `mix_clips` with its 6 scene clips in order as `clips`, each as `{video: {url: <clip asset_id>}, audio: {url: <that scene's SFX asset_id>}}`. Use `name="Episode M"`, `entity_type="final_videos"`, and `orientation` matching the c