@nodaro/prompts 1.18.0 → 1.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +9861 -1414
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +209 -10
- package/dist/index.d.ts +209 -10
- package/dist/index.js +9199 -765
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/__tests__/adult-only-ratchet.test.ts +18 -1
- package/src/__tests__/assemble-suno-input.test.ts +14 -1
- package/src/__tests__/character-motion-docs-example.test.ts +26 -0
- package/src/__tests__/character-motion-timing-catalogs.test.ts +76 -0
- package/src/__tests__/character-motion.test.ts +207 -0
- package/src/__tests__/fixtures/parameter-hint-golden.json +137 -1
- package/src/__tests__/hint-join.test.ts +57 -0
- package/src/__tests__/parameter-hint-mode.test.ts +28 -0
- package/src/__tests__/parameter-prompt-hint.test.ts +159 -0
- package/src/__tests__/parameter-registry-sync.test.ts +2 -0
- package/src/__tests__/picker-analyzer-registry.test.ts +1 -1
- package/src/__tests__/sound-aggregator.test.ts +1 -1
- package/src/__tests__/transition-timing-catalogs.test.ts +1 -1
- package/src/__tests__/video-reference-features.test.ts +10 -1
- package/src/age-floor.ts +1 -1
- package/src/assemble-suno-input.ts +3 -2
- package/src/camera-motions.ts +44 -42
- package/src/character-motion/animals-pets.ts +89 -0
- package/src/character-motion/athletic-stunts.ts +218 -0
- package/src/character-motion/camera-interaction.ts +137 -0
- package/src/character-motion/combat-weapons.ts +206 -0
- package/src/character-motion/dance.ts +173 -0
- package/src/character-motion/entrances-exits.ts +113 -0
- package/src/character-motion/evasive-falls.ts +134 -0
- package/src/character-motion/everyday-actions.ts +278 -0
- package/src/character-motion/face-expression.ts +182 -0
- package/src/character-motion/gestures.ts +308 -0
- package/src/character-motion/head-gestures.ts +98 -0
- package/src/character-motion/idle-ambient.ts +128 -0
- package/src/character-motion/posture-shifts.ts +143 -0
- package/src/character-motion/runway.ts +101 -0
- package/src/character-motion/stage-performance.ts +131 -0
- package/src/character-motion/turns-looks.ts +116 -0
- package/src/character-motion/two-person.ts +233 -0
- package/src/character-motion/types.ts +42 -0
- package/src/character-motion/unnatural-horror.ts +95 -0
- package/src/character-motion/vehicles-mounts.ts +101 -0
- package/src/character-motion/walks-runs.ts +125 -0
- package/src/character-motion.ts +286 -0
- package/src/factory-presets/music.ts +35 -35
- package/src/hint-join.ts +26 -0
- package/src/index.ts +2 -0
- package/src/parameter-prompt-hint.ts +67 -1
- package/src/picker-analyzer-registry.ts +9 -5
- package/src/picker-catalogs.ts +24 -0
- package/src/picker-wiring.ts +2 -0
- package/src/prompt-wizard-categories.ts +9 -5
- package/src/provider-prompt-doctrine.ts +1 -1
- package/src/sound-aggregator.ts +1 -1
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import type { CharacterMotion } from "./types.js"
|
|
2
|
+
|
|
3
|
+
/** Unnatural & Horror — 30 entries. Category id `unnatural-horror`. */
|
|
4
|
+
export const UNNATURAL_HORROR_MOTIONS: ReadonlyArray<CharacterMotion> = [
|
|
5
|
+
{ id: "twitch-head-sideways", label: "Head Twitch", category: "unnatural-horror", description: "Sharp head jerk to one side, then back",
|
|
6
|
+
promptHint: "the subject holds the head still, jerks it a few inches to one side in a sharp twitch, holds a beat, then snaps it back to center while the shoulders stay motionless",
|
|
7
|
+
term: "twitches the head sideways" },
|
|
8
|
+
{ id: "tilt-head-too-far", label: "Tilt Head Too Far", category: "unnatural-horror", description: "Head tips sideways past the natural limit",
|
|
9
|
+
promptHint: "the subject tips the head sideways toward one shoulder and keeps going past the natural limit until the ear nearly touches the shoulder, then holds it there with the eyes still facing forward",
|
|
10
|
+
term: "tilts the head too far" },
|
|
11
|
+
{ id: "snap-head-sideways", label: "Snap Head Sideways", category: "unnatural-horror", description: "Head whips to one side and stops dead",
|
|
12
|
+
promptHint: "the subject whips the head to one side in a single fast movement and stops it dead, chin over the shoulder, the body unmoved, then holds that position without blinking",
|
|
13
|
+
term: "snaps the head to one side" },
|
|
14
|
+
{ id: "backbend-into-crawl", label: "Backbend Crawl", category: "unnatural-horror", description: "Arches backward to the floor, crawls belly-up",
|
|
15
|
+
promptHint: "the subject arches backward from standing until both palms reach the floor behind them, then advances belly-up on hands and feet, pelvis pushed high, head hanging back between the arms",
|
|
16
|
+
term: "backbends into a spider crawl" },
|
|
17
|
+
{ id: "crawl-head-raised", label: "Crawl Head Raised", category: "unnatural-horror", description: "Advances on all fours with the head lifted",
|
|
18
|
+
promptHint: "the subject moves forward on all fours, palms and knees taking the weight in alternating diagonal pairs, the head lifted high and the eyes fixed straight ahead the whole way",
|
|
19
|
+
term: "crawls forward with the head raised" },
|
|
20
|
+
{ id: "rise-stiff-from-lying", label: "Stiff Board Rise", category: "unnatural-horror", description: "Rises from flat to standing without bending",
|
|
21
|
+
promptHint: "the subject lies flat on their back, then rises to standing as one rigid plank, the whole body pivoting at the heels with no bend at the waist or knees",
|
|
22
|
+
term: "rises stiff from lying flat" },
|
|
23
|
+
{ id: "contort-the-limbs", label: "Contort Limbs", category: "unnatural-horror", description: "Joints rotate past their natural range",
|
|
24
|
+
promptHint: "the subject rotates the elbows and knees past their natural range, the arms folding backward and the wrists turning inward, holding each wrong angle before shifting into the next one",
|
|
25
|
+
term: "contorts the limbs unnaturally" },
|
|
26
|
+
{ id: "jerk-like-marionette", label: "Marionette Jerk", category: "unnatural-horror", description: "Limbs snap upward as if pulled on strings",
|
|
27
|
+
promptHint: "the subject lets the limbs hang loose, then snaps each wrist and knee upward as if yanked from above, the body following in stiff disconnected jerks between slack pauses",
|
|
28
|
+
term: "jerks like a marionette" },
|
|
29
|
+
{ id: "drag-self-forward", label: "Drag Self Forward", category: "unnatural-horror", description: "Pulls forward on the forearms, legs trailing",
|
|
30
|
+
promptHint: "the subject lies face down, plants both forearms ahead, and hauls the torso forward across the floor in deliberate pulls, the legs stretched straight behind and sliding along without pushing, repeating the pull forearm over forearm",
|
|
31
|
+
term: "drags forward on the forearms" },
|
|
32
|
+
{ id: "claw-at-the-air", label: "Claw at Air", category: "unnatural-horror", description: "Hands rake at empty air near the face",
|
|
33
|
+
promptHint: "the subject raises both hands to face height and rakes the fingers through empty air in repeated grabbing sweeps, the elbows jerking and the hands closing on nothing each time",
|
|
34
|
+
term: "claws at the air" },
|
|
35
|
+
{ id: "press-hands-to-neck", label: "Hands to Neck", category: "unnatural-horror", description: "Both hands fly up to the collarbone",
|
|
36
|
+
promptHint: "the subject brings both hands up to the base of the neck, fingertips splayed flat against the collarbone, elbows lifting wide and shoulders hunching forward, then slides the hands down the chest and drops the arms to the sides",
|
|
37
|
+
term: "presses both hands to the neck" },
|
|
38
|
+
{ id: "scratch-at-door", label: "Scratch at Door", category: "unnatural-horror", description: "Fingernails drag down a door in strokes",
|
|
39
|
+
promptHint: "the subject presses both palms flat against the door or wall in front of them and drags the fingernails down the surface in repeated strokes, the fingers curling tighter with each pass as the forehead leans against it",
|
|
40
|
+
term: "scratches at a door" },
|
|
41
|
+
{ id: "roll-eyes-back", label: "Roll Eyes Back", category: "unnatural-horror", description: "Eyes roll up until only the whites show",
|
|
42
|
+
promptHint: "the subject rolls both eyes upward until only the whites show, the lids staying open and the head drifting back a few degrees, then the pupils drop into place again",
|
|
43
|
+
term: "rolls the eyes back" },
|
|
44
|
+
{ id: "stand-still-then-lunge", label: "Still Then Lunge", category: "unnatural-horror", description: "Motionless, then one explosive step forward",
|
|
45
|
+
promptHint: "the subject stands perfectly still with the arms at the sides, then without warning drives one foot forward and lunges the whole body toward the camera, stopping abruptly at full extension",
|
|
46
|
+
term: "lunges forward from a dead stop" },
|
|
47
|
+
{ id: "stutter-step-forward", label: "Stutter Step", category: "unnatural-horror", description: "Advances in half steps with hard stops",
|
|
48
|
+
promptHint: "the subject advances in short abrupt bursts, the body snapping forward a half step at a time with a hard stop between each, the legs barely appearing to carry the motion",
|
|
49
|
+
term: "stutter-steps forward in jerks" },
|
|
50
|
+
{ id: "walk-backward-head-turned", label: "Walk Backward Head Turned", category: "unnatural-horror", description: "Walks backward with the head turned fully",
|
|
51
|
+
promptHint: "the subject twists the head around over one shoulder until the face points behind them, then walks backward toward where the face is pointing, the feet feeling for the ground while the torso stays squared to the front",
|
|
52
|
+
term: "walks backward with the head turned" },
|
|
53
|
+
{ id: "hang-head-arms-dangle", label: "Hang Head Limp", category: "unnatural-horror", description: "Head drops forward, arms hang slack",
|
|
54
|
+
promptHint: "the subject lets the head drop forward until the chin rests on the chest, both arms hanging dead at the sides, the body swaying a little where it stands",
|
|
55
|
+
term: "hangs the head, arms dangling" },
|
|
56
|
+
{ id: "crab-walk-sideways", label: "Crab Walk", category: "unnatural-horror", description: "Belly-up on hands and feet, moves sideways",
|
|
57
|
+
promptHint: "the subject sits, plants both palms behind the pelvis and lifts the torso belly-up off the floor, then travels sideways on hands and feet with the head tipped back between the shoulders",
|
|
58
|
+
term: "crab-walks sideways" },
|
|
59
|
+
{ id: "twitch-the-fingers", label: "Twitch Fingers", category: "unnatural-horror", description: "Fingers flutter and spasm at the sides",
|
|
60
|
+
promptHint: "the subject holds both arms straight at the sides while the fingers flutter and spasm in rapid irregular bursts, each hand curling half closed and springing open again, the arms never moving",
|
|
61
|
+
term: "twitches the fingers rapidly" },
|
|
62
|
+
{ id: "sway-head-lolling", label: "Loll and Sway", category: "unnatural-horror", description: "Body sways while the head rolls loose",
|
|
63
|
+
promptHint: "the subject shifts the weight from one foot to the other in a continuous sway while the head rolls loose on the neck, tipping shoulder to shoulder with the jaw slack and the eyes half open",
|
|
64
|
+
term: "sways with the head lolling" },
|
|
65
|
+
{ id: "breathe-ragged-heaves", label: "Ragged Heaves", category: "unnatural-horror", description: "Chest and shoulders pump in uneven breaths",
|
|
66
|
+
promptHint: "the subject draws breath in deep uneven heaves, the chest and shoulders rising sharply and dropping, the ribs pulling in between breaths, the rhythm breaking and restarting without ever settling",
|
|
67
|
+
term: "breathes in ragged heaves" },
|
|
68
|
+
{ id: "smile-too-wide", label: "Smile Too Wide", category: "unnatural-horror", description: "Mouth stretches wider than natural, holds",
|
|
69
|
+
promptHint: "the subject draws the corners of the mouth back until the smile stretches wider than the face allows, teeth fully bared, then locks it there while the eyes stay flat and unmoving",
|
|
70
|
+
term: "smiles too wide and holds it" },
|
|
71
|
+
{ id: "stare-then-blink-slowly", label: "Slow Blink Stare", category: "unnatural-horror", description: "Unblinking stare, then one deliberate blink",
|
|
72
|
+
promptHint: "the subject holds a fixed unblinking stare straight ahead, then closes both lids in one slow deliberate blink and opens them again onto the same unmoved stare",
|
|
73
|
+
term: "holds an unblinking stare and blinks slowly" },
|
|
74
|
+
{ id: "tilt-body-from-ankles", label: "Tilt From Ankles", category: "unnatural-horror", description: "Whole body leans sideways past balance",
|
|
75
|
+
promptHint: "the subject stays rigid from head to heel and tips sideways as one piece, pivoting only at the ankles, leaning well past the point of balance and holding there without falling",
|
|
76
|
+
term: "tilts sideways from the ankles" },
|
|
77
|
+
{ id: "scuttle-away-on-fours", label: "Scuttle Away", category: "unnatural-horror", description: "Drops to all fours and scurries off fast",
|
|
78
|
+
promptHint: "the subject drops from standing onto all fours in one motion and scurries away from the camera, the limbs moving in an uneven scramble with the back staying low",
|
|
79
|
+
term: "scuttles away on all fours" },
|
|
80
|
+
{ id: "shudder-head-to-toe", label: "Full Body Shudder", category: "unnatural-horror", description: "One shudder passes from head to feet",
|
|
81
|
+
promptHint: "the subject stands still, then shudders in one continuous wave that travels down from the head through the shoulders, torso and legs, the knees buckling slightly before the body settles",
|
|
82
|
+
term: "shudders from head to toe" },
|
|
83
|
+
{ id: "turn-head-first", label: "Turn Head First", category: "unnatural-horror", description: "Head rotates first, the body follows late",
|
|
84
|
+
promptHint: "the subject turns the head toward the camera first and holds it there, the shoulders and pelvis following a beat later in a separate stiff rotation until the whole body faces forward",
|
|
85
|
+
term: "turns the head before the body" },
|
|
86
|
+
{ id: "shake-head-into-blur", label: "Head Shake Blur", category: "unnatural-horror", description: "Head vibrates side to side, face blurring",
|
|
87
|
+
promptHint: "the subject shakes the head side to side so fast the features blur, the neck loose and the shoulders locked in place, then stops dead on a forward-facing stare",
|
|
88
|
+
term: "shakes the head into a blur" },
|
|
89
|
+
{ id: "rock-back-and-forth", label: "Rock in Place", category: "unnatural-horror", description: "Rocks the torso on one repeating beat",
|
|
90
|
+
promptHint: "the subject sits with the knees drawn up and rocks the torso forward and back on the same repeating beat, the arms wrapped around the shins and the gaze fixed on one spot",
|
|
91
|
+
term: "rocks back and forth in place" },
|
|
92
|
+
{ id: "let-the-jaw-drop", label: "Jaw Drops Open", category: "unnatural-horror", description: "Mouth falls open and stays slack",
|
|
93
|
+
promptHint: "the subject lets the jaw fall open under its own weight until the mouth hangs wide and slack, the lips loose and the tongue still, holding it open while the rest of the face stays blank",
|
|
94
|
+
term: "lets the jaw hang open" },
|
|
95
|
+
]
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import type { CharacterMotion } from "./types.js"
|
|
2
|
+
|
|
3
|
+
/** Vehicles & Mounts — 32 entries. Category id `vehicles-mounts`. */
|
|
4
|
+
export const VEHICLES_MOUNTS_MOTIONS: ReadonlyArray<CharacterMotion> = [
|
|
5
|
+
{ id: "get-into-car", label: "Get Into Car", category: "vehicles-mounts", description: "Pulls the driver door open and drops into the seat",
|
|
6
|
+
promptHint: "the subject pulls the driver door open, plants one foot inside, ducks the head under the frame and drops onto the seat, hauling the door shut behind them",
|
|
7
|
+
term: "gets into the driver seat" },
|
|
8
|
+
{ id: "get-out-of-car", label: "Get Out of Car", category: "vehicles-mounts", description: "Swings both legs out and stands up from the seat",
|
|
9
|
+
promptHint: "the subject shoves the car door open, swings both legs out onto the ground, pushes up off the seat to stand and knocks the door closed with a hip",
|
|
10
|
+
term: "gets out of the car" },
|
|
11
|
+
{ id: "slide-across-hood", label: "Slide Across Hood", category: "vehicles-mounts", description: "Hip-slides over the hood and lands on the far side",
|
|
12
|
+
promptHint: "the subject runs at the car, drops one hip onto the hood and slides across the metal with both legs swinging through, landing on both feet on the far side",
|
|
13
|
+
term: "slides across the car hood" },
|
|
14
|
+
{ id: "drive-off", label: "Drive Off", category: "vehicles-mounts", description: "Takes the wheel and pulls the car away",
|
|
15
|
+
promptHint: "the subject settles both hands onto the steering wheel, checks forward through the windshield, turns the wheel and leans slightly back as the car pulls away",
|
|
16
|
+
term: "grips the wheel and drives off" },
|
|
17
|
+
{ id: "shift-gears", label: "Shift Gears", category: "vehicles-mounts", description: "Drops a hand to the shifter and changes gear",
|
|
18
|
+
promptHint: "the subject drops the right hand from the wheel to the shifter, presses the left foot down on the clutch pedal, slots the lever into the next gear and returns the hand to the wheel",
|
|
19
|
+
term: "shifts gears" },
|
|
20
|
+
{ id: "check-mirror-and-turn", label: "Check Mirror & Turn", category: "vehicles-mounts", description: "Mirror glance, blind-spot look, then steers around",
|
|
21
|
+
promptHint: "the subject flicks a glance up to the rearview mirror, turns the head over one shoulder to check the blind spot and feeds the wheel around hand over hand",
|
|
22
|
+
term: "checks the mirror and turns" },
|
|
23
|
+
{ id: "lean-out-car-window", label: "Lean Out Window", category: "vehicles-mounts", description: "Head and shoulders out into the moving air",
|
|
24
|
+
promptHint: "the subject rolls the window down, props one forearm on the door frame and leans the head and shoulders out into the rushing air, wind pressing against the face",
|
|
25
|
+
term: "leans out the car window" },
|
|
26
|
+
{ id: "sit-on-car-hood", label: "Sit on Hood", category: "vehicles-mounts", description: "Pushes up off both palms to perch on the hood",
|
|
27
|
+
promptHint: "the subject backs up to the front of the car, plants both palms on the hood and pushes up to perch on the metal with both feet resting on the bumper",
|
|
28
|
+
term: "hops up to sit on the car hood" },
|
|
29
|
+
{ id: "unload-trunk", label: "Unload the Trunk", category: "vehicles-mounts", description: "Lifts the trunk lid and hauls out a heavy bag",
|
|
30
|
+
promptHint: "the subject lifts the trunk lid up on its struts, bends at the knees to take a heavy bag in both hands, hauls it clear and swings the lid down",
|
|
31
|
+
term: "lifts a bag from the trunk" },
|
|
32
|
+
{ id: "put-on-helmet", label: "Put On Helmet", category: "vehicles-mounts", description: "Pulls a helmet down and cinches the chin strap",
|
|
33
|
+
promptHint: "the subject raises a helmet in both hands, spreads the sides over the ears, pulls it down onto the head and cinches the chin strap tight under the jaw",
|
|
34
|
+
term: "pulls on a helmet" },
|
|
35
|
+
{ id: "mount-motorcycle", label: "Mount Motorcycle", category: "vehicles-mounts", description: "Swings a leg over the saddle and settles down",
|
|
36
|
+
promptHint: "the subject grips both handlebars, tips the motorcycle upright off its kickstand, swings one leg over the saddle and settles down with both feet planted on the ground",
|
|
37
|
+
term: "swings a leg over the motorcycle" },
|
|
38
|
+
{ id: "kick-start-engine", label: "Kick-Start Engine", category: "vehicles-mounts", description: "Stamps down on the kick lever and twists the throttle",
|
|
39
|
+
promptHint: "the subject rises off the saddle, stamps one foot down hard on the kick lever, drops back onto the seat and twists the throttle grip toward the hip",
|
|
40
|
+
term: "kick-starts the engine" },
|
|
41
|
+
{ id: "lean-into-turn", label: "Lean Into Turn", category: "vehicles-mounts", description: "Drops the inside shoulder and knee into a curve",
|
|
42
|
+
promptHint: "the subject drops the inside shoulder toward the road, tips the torso and knee down into the curve with the arms angled across the bars, and rises upright again",
|
|
43
|
+
term: "leans into the turn" },
|
|
44
|
+
{ id: "dismount-motorcycle", label: "Dismount Motorcycle", category: "vehicles-mounts", description: "Swings the trailing leg back over and steps off",
|
|
45
|
+
promptHint: "the subject kicks the stand down, rises on the footpegs, swings the trailing leg back over the saddle and steps off to stand beside the motorcycle",
|
|
46
|
+
term: "steps off the motorcycle" },
|
|
47
|
+
{ id: "hop-on-bike", label: "Hop on Bike", category: "vehicles-mounts", description: "Swings onto the saddle and drives the pedals down",
|
|
48
|
+
promptHint: "the subject pushes the bicycle forward a step, swings one leg over the saddle, drops onto it and drives both pedals down to pull away",
|
|
49
|
+
term: "pedals off on a bike" },
|
|
50
|
+
{ id: "brake-and-hop-off", label: "Brake & Hop Off", category: "vehicles-mounts", description: "Squeezes the brakes and steps clear of the bike",
|
|
51
|
+
promptHint: "the subject squeezes both brake levers, lifts off the saddle as the bicycle slows, drops one foot to the ground and steps clear while still holding the handlebars",
|
|
52
|
+
term: "brakes and hops off the bike" },
|
|
53
|
+
{ id: "push-scooter", label: "Push a Scooter", category: "vehicles-mounts", description: "Kicks off the ground and rolls on one foot",
|
|
54
|
+
promptHint: "the subject sets one foot on the scooter deck, grips the bars, pushes off the ground with the trailing foot in repeated kicks and tucks that foot up behind as the scooter rolls",
|
|
55
|
+
term: "kicks a scooter along" },
|
|
56
|
+
{ id: "mount-horse", label: "Mount Horse", category: "vehicles-mounts", description: "Springs off the stirrup up into the saddle",
|
|
57
|
+
promptHint: "the subject sets the left foot into the stirrup, grips the saddle horn, springs up off the standing leg and swings the right leg over to settle into the saddle",
|
|
58
|
+
term: "swings up into the saddle" },
|
|
59
|
+
{ id: "ride-at-walk", label: "Ride at a Walk", category: "vehicles-mounts", description: "Sits tall, pelvis rocking with a four-beat gait",
|
|
60
|
+
promptHint: "the subject sits tall in the saddle with the reins loose in both hands, pelvis rocking forward and back in time with the four-beat footfall of the walking horse",
|
|
61
|
+
term: "rides at a walk" },
|
|
62
|
+
{ id: "gallop-on-horseback", label: "Gallop", category: "vehicles-mounts", description: "Rises into a half-seat low over the horse's neck",
|
|
63
|
+
promptHint: "the subject rises out of the saddle into a half-seat, leans low over the horse's neck with both hands pushed forward and the knees absorbing each stride as the horse gallops beneath them",
|
|
64
|
+
term: "gallops in a half-seat" },
|
|
65
|
+
{ id: "rein-in-horse", label: "Rein In", category: "vehicles-mounts", description: "Sits deep and draws the reins back to a halt",
|
|
66
|
+
promptHint: "the subject sits deep into the saddle, draws both reins back toward the pelvis and leans the shoulders back past upright as the horse gathers its hindquarters and slows to a halt",
|
|
67
|
+
term: "reins the horse to a halt" },
|
|
68
|
+
{ id: "dismount-horse", label: "Dismount Horse", category: "vehicles-mounts", description: "Swings a leg over the rump and steps to the ground",
|
|
69
|
+
promptHint: "the subject frees the right foot from the stirrup, swings that leg back over the horse's rump, lowers down the side with both hands on the saddle and lands on both feet",
|
|
70
|
+
term: "swings down out of the saddle" },
|
|
71
|
+
{ id: "board-train", label: "Board the Train", category: "vehicles-mounts", description: "Steps across the gap as the doors slide shut",
|
|
72
|
+
promptHint: "the subject steps up across the gap onto the train, grips the door edge for balance and turns to face down the aisle as the doors slide shut behind them",
|
|
73
|
+
term: "steps aboard the train" },
|
|
74
|
+
{ id: "hold-train-strap", label: "Hold the Strap", category: "vehicles-mounts", description: "Grips an overhead strap and sways with the car",
|
|
75
|
+
promptHint: "the subject reaches overhead for a hanging strap, closes a fist around it, sets the feet apart and sways from the shoulders as the train car rocks",
|
|
76
|
+
term: "holds an overhead strap" },
|
|
77
|
+
{ id: "step-off-bus", label: "Step Off Bus", category: "vehicles-mounts", description: "Takes the handrail down the steps onto the curb",
|
|
78
|
+
promptHint: "the subject takes the handrail, steps down the bus stairs one tread at a time and drops off the last step onto the curb, releasing the rail to walk on",
|
|
79
|
+
term: "steps down off the bus" },
|
|
80
|
+
{ id: "row-boat", label: "Row a Boat", category: "vehicles-mounts", description: "Drives the legs back and lifts the blades clear",
|
|
81
|
+
promptHint: "the subject leans forward with straight arms, drops both oar blades into the water, drives back with the legs and torso and lifts the blades clear at the end of the stroke",
|
|
82
|
+
term: "rows with both oars" },
|
|
83
|
+
{ id: "paddle-kayak", label: "Paddle a Kayak", category: "vehicles-mounts", description: "Alternates blade strokes with a rotating torso",
|
|
84
|
+
promptHint: "the subject plants the paddle blade forward on one side, pulls it back along the hull with a rotating torso, lifts it out and drops the opposite blade in",
|
|
85
|
+
term: "paddles a kayak" },
|
|
86
|
+
{ id: "hail-taxi", label: "Hail a Taxi", category: "vehicles-mounts", description: "Arm straight up at traffic, then for the door handle",
|
|
87
|
+
promptHint: "the subject steps off the curb, shoots one arm straight up toward the oncoming traffic and, as a cab pulls in, lowers the arm to grab the rear door handle",
|
|
88
|
+
term: "hails a taxi and gets in" },
|
|
89
|
+
{ id: "climb-into-cab", label: "Climb Into Cab", category: "vehicles-mounts", description: "Hauls up on the grab handle into a high truck seat",
|
|
90
|
+
promptHint: "the subject reaches for the handle inside the door frame, sets one foot on the running board, hauls up and swings across into the high cab seat",
|
|
91
|
+
term: "climbs up into the truck cab" },
|
|
92
|
+
{ id: "jump-onto-moving-vehicle", label: "Jump on Moving Vehicle", category: "vehicles-mounts", description: "Sprints alongside and swings onto the running board",
|
|
93
|
+
promptHint: "the subject sprints alongside the moving vehicle, catches a handhold with one arm, swings both feet off the ground and pulls up onto the running board",
|
|
94
|
+
term: "jumps onto a moving vehicle" },
|
|
95
|
+
{ id: "grip-armrests", label: "Grip the Armrests", category: "vehicles-mounts", description: "Hands clamp the armrests as the seat pushes back",
|
|
96
|
+
promptHint: "the subject settles the spine back into the seat, curls both hands over the ends of the armrests, tightens the grip until the knuckles whiten and the head presses back against the headrest",
|
|
97
|
+
term: "grips the armrests" },
|
|
98
|
+
{ id: "stretch-in-aisle", label: "Stretch in Aisle", category: "vehicles-mounts", description: "Stands up out of the seat and reaches overhead",
|
|
99
|
+
promptHint: "the subject pushes up out of the seat into the narrow aisle, reaches both arms overhead until the spine lengthens, rolls the shoulders back and lowers the arms",
|
|
100
|
+
term: "stands and stretches in the aisle" },
|
|
101
|
+
]
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import type { CharacterMotion } from "./types.js"
|
|
2
|
+
|
|
3
|
+
/** Walks & Runs — 40 entries. Category id `walks-runs`. */
|
|
4
|
+
export const WALKS_RUNS_MOTIONS: ReadonlyArray<CharacterMotion> = [
|
|
5
|
+
{ id: "stroll-casually", label: "Casual Stroll", category: "walks-runs", description: "Relaxed unhurried walk, loose arms, easy steps",
|
|
6
|
+
promptHint: "the subject strolls forward with short relaxed steps, weight rolling easily heel to toe, arms swinging loosely at the sides, shoulders down and head drifting to look around",
|
|
7
|
+
term: "strolls casually, arms loose" },
|
|
8
|
+
{ id: "walk-briskly", label: "Brisk Walk", category: "walks-runs", description: "Purposeful clipped steps, arms swinging",
|
|
9
|
+
promptHint: "the subject walks briskly with clipped purposeful steps, heels striking firmly, arms swinging in a tight rhythm, torso upright and eyes fixed on a point ahead",
|
|
10
|
+
term: "walks briskly with purpose" },
|
|
11
|
+
{ id: "power-walk", label: "Power Walk", category: "walks-runs", description: "Fitness walk, elbows bent, arms pumping hard",
|
|
12
|
+
promptHint: "the subject power-walks with elbows bent at ninety degrees and arms pumping hard, pelvis driving each long stride, heels planting and toes pushing off with visible effort",
|
|
13
|
+
term: "power-walks, arms pumping" },
|
|
14
|
+
{ id: "stride-confidently", label: "Confident Stride", category: "walks-runs", description: "Long even strides, chest up, shoulders back",
|
|
15
|
+
promptHint: "the subject strides forward with long even steps, chest lifted and shoulders back, arms swinging in a full relaxed arc, each foot landing squarely with the weight committed",
|
|
16
|
+
term: "strides forward confidently" },
|
|
17
|
+
{ id: "jog-forward", label: "Jog", category: "walks-runs", description: "Light steady run, elbows bent, gentle bounce",
|
|
18
|
+
promptHint: "the subject jogs forward, elbows bent and hands loose near the waist, short strides landing midfoot, a gentle bounce in each step and breathing even",
|
|
19
|
+
term: "jogs forward, elbows bent" },
|
|
20
|
+
{ id: "sprint-flat-out", label: "Sprint", category: "walks-runs", description: "All-out run, knees driving, arms pumping",
|
|
21
|
+
promptHint: "the subject sprints flat out, torso leaning forward, knees driving high, arms pumping in sharp opposition, feet striking on the balls and pushing off hard behind",
|
|
22
|
+
term: "sprints flat out" },
|
|
23
|
+
{ id: "tiptoe-forward", label: "Tiptoe", category: "walks-runs", description: "Heels lifted, small careful steps on the toes",
|
|
24
|
+
promptHint: "the subject rises onto the balls of the feet and tiptoes forward with heels lifted, small careful steps, arms held slightly out for balance and shoulders raised",
|
|
25
|
+
term: "tiptoes forward, heels lifted" },
|
|
26
|
+
{ id: "sneak-forward", label: "Sneak", category: "walks-runs", description: "Low crouch, soft toe-first steps, eyes scanning",
|
|
27
|
+
promptHint: "the subject sneaks forward in a low crouch, knees bent, placing each foot down softly toe first, arms drawn in close to the body, head turning to check both sides",
|
|
28
|
+
term: "sneaks forward in a crouch" },
|
|
29
|
+
{ id: "stagger-unsteadily", label: "Stagger", category: "walks-runs", description: "Weaving unsteady walk, arms out for balance",
|
|
30
|
+
promptHint: "the subject staggers forward unsteadily, weight lurching from one foot to the other, path weaving side to side, arms floating out to catch balance and head lolling",
|
|
31
|
+
term: "staggers unsteadily, weaving" },
|
|
32
|
+
{ id: "limp-forward", label: "Limp", category: "walks-runs", description: "Favoring one leg, uneven dipping gait",
|
|
33
|
+
promptHint: "the subject limps forward favoring one leg, the stiff leg taking a short guarded step while the other swings through, the body dipping on each weighted step",
|
|
34
|
+
term: "limps, favoring one leg" },
|
|
35
|
+
{ id: "march-in-cadence", label: "March", category: "walks-runs", description: "Military cadence, high knees, stiff arm swing",
|
|
36
|
+
promptHint: "the subject marches forward in strict military cadence, knees lifting high, legs snapping straight, arms swinging stiffly shoulder-high in opposition, spine rigid and chin level",
|
|
37
|
+
term: "marches in military cadence" },
|
|
38
|
+
{ id: "walk-backwards", label: "Walk Backwards", category: "walks-runs", description: "Stepping backward, glancing over one shoulder",
|
|
39
|
+
promptHint: "the subject walks backwards, each foot reaching behind and landing toe first before the heel settles, weight shifting carefully, glancing over one shoulder to check the path",
|
|
40
|
+
term: "walks backwards" },
|
|
41
|
+
{ id: "skip-along", label: "Skip", category: "walks-runs", description: "Step-hop bounce on alternating feet",
|
|
42
|
+
promptHint: "the subject skips forward in a step-hop rhythm, alternating feet, bouncing up off each hop with arms swinging freely and a light springy lift through the whole body",
|
|
43
|
+
term: "skips along" },
|
|
44
|
+
{ id: "hop-on-one-foot", label: "Hop", category: "walks-runs", description: "Bounding forward on one foot",
|
|
45
|
+
promptHint: "the subject hops forward on one foot, the other leg bent and lifted, arms pumping with each push-off, landing and springing again in a chain of small bounds",
|
|
46
|
+
term: "hops on one foot" },
|
|
47
|
+
{ id: "crawl-on-all-fours", label: "Crawl", category: "walks-runs", description: "Hands and knees, opposite limbs advancing",
|
|
48
|
+
promptHint: "the subject crawls forward on hands and knees, opposite hand and knee advancing together, back level, head lifted to look ahead as the weight rocks from limb to limb",
|
|
49
|
+
term: "crawls on hands and knees" },
|
|
50
|
+
{ id: "army-crawl-forward", label: "Army Crawl", category: "walks-runs", description: "Flat on the belly, pulling forward on elbows",
|
|
51
|
+
promptHint: "the subject drops flat and army-crawls forward on the belly, dragging the body along with alternating elbows and knees, head kept low and chest pressed to the ground",
|
|
52
|
+
term: "army-crawls on the belly" },
|
|
53
|
+
{ id: "wade-through-water", label: "Wade", category: "walks-runs", description: "High deliberate steps against the water's drag",
|
|
54
|
+
promptHint: "the subject wades forward through the water, lifting each knee high and pushing it through against the drag, arms raised clear of the surface, torso leaning slightly into each step as the weight commits late",
|
|
55
|
+
term: "wades through water" },
|
|
56
|
+
{ id: "shuffle-forward", label: "Shuffle", category: "walks-runs", description: "Feet barely leaving the ground, slumped",
|
|
57
|
+
promptHint: "the subject shuffles forward with feet barely leaving the ground, short scuffing steps, shoulders slumped, arms hanging still and the head bowed",
|
|
58
|
+
term: "shuffles, feet scuffing the ground" },
|
|
59
|
+
{ id: "scurry-forward", label: "Scurry", category: "walks-runs", description: "Hurried tiny steps, hunched and leaning ahead",
|
|
60
|
+
promptHint: "the subject scurries forward in hurried tiny steps, shoulders hunched, elbows tucked, upper body leaning ahead of the feet as if late, eyes darting",
|
|
61
|
+
term: "scurries with tiny hunched steps" },
|
|
62
|
+
{ id: "stroll-hands-in-pockets", label: "Hands in Pockets Stroll", category: "walks-runs", description: "Elbows out, loose rolling steps, slight forward lean",
|
|
63
|
+
promptHint: "the subject strolls forward with both hands tucked into pockets, elbows angled out, shoulders relaxed, loose rolling steps and a slight forward lean of the head",
|
|
64
|
+
term: "strolls with hands in pockets" },
|
|
65
|
+
{ id: "walk-while-talking", label: "Walk & Talk", category: "walks-runs", description: "Steady walk with hands gesturing mid-speech",
|
|
66
|
+
promptHint: "the subject walks while talking, steps steady and unbroken, mouth moving in speech, hands gesturing in time with the words, head turning aside mid-sentence and back to the path ahead",
|
|
67
|
+
term: "walks and talks, gesturing" },
|
|
68
|
+
{ id: "trudge-wearily", label: "Trudge", category: "walks-runs", description: "Heavy weary steps, head down, feet dragging",
|
|
69
|
+
promptHint: "the subject trudges forward with heavy weary steps, feet dragging and landing flat, shoulders sagging under the effort, head down and arms hanging limp at the sides",
|
|
70
|
+
term: "trudges wearily" },
|
|
71
|
+
{ id: "prance-forward", label: "Prance", category: "walks-runs", description: "Springy high-knee steps, toes pointed",
|
|
72
|
+
promptHint: "the subject prances forward with springy high-knee steps, toes pointed on each lift, chest up and arms held out lightly, bouncing playfully off the balls of the feet",
|
|
73
|
+
term: "prances with high knees" },
|
|
74
|
+
{ id: "strut-boldly", label: "Strut", category: "walks-runs", description: "Chest out, exaggerated arm swing, bold stamps",
|
|
75
|
+
promptHint: "the subject struts forward with chest pushed out, chin raised, exaggerated arm swing and long bold steps that land with a deliberate stamp, shoulders squared",
|
|
76
|
+
term: "struts, chest out" },
|
|
77
|
+
{ id: "swagger-forward", label: "Swagger", category: "walks-runs", description: "Wide lazy stride, shoulders rolling",
|
|
78
|
+
promptHint: "the subject swaggers forward with a wide lazy stride, shoulders rolling side to side with each step, arms swinging loose and low, weight sinking into every landing",
|
|
79
|
+
term: "swaggers, shoulders rolling" },
|
|
80
|
+
{ id: "sashay-forward", label: "Sashay", category: "walks-runs", description: "Hip-swaying walk, feet crossing on one line",
|
|
81
|
+
promptHint: "the subject sashays forward with hips swaying side to side, each foot crossing in front of the other along a single line, shoulders back and one hand trailing at the hip",
|
|
82
|
+
term: "sashays with swaying hips", adultOnly: true },
|
|
83
|
+
{ id: "run-in-panic", label: "Panicked Run", category: "walks-runs", description: "Frantic escape run, glancing back",
|
|
84
|
+
promptHint: "the subject runs in panic, arms flailing loosely, strides uneven and frantic, torso twisting to glance back over a shoulder before facing forward and pushing harder",
|
|
85
|
+
term: "runs in panic, glancing back" },
|
|
86
|
+
{ id: "run-crouched", label: "Crouched Run", category: "walks-runs", description: "Low tactical run, knees bent, head ducked",
|
|
87
|
+
promptHint: "the subject runs low in a crouch, knees deeply bent and torso folded forward, head ducked, arms tucked in, feet moving in short driving steps that keep the body down",
|
|
88
|
+
term: "runs low in a crouch" },
|
|
89
|
+
{ id: "climb-stairs", label: "Climb Stairs", category: "walks-runs", description: "Knee lifts to each step, hand sliding up the rail",
|
|
90
|
+
promptHint: "the subject climbs a flight of stairs, lifting each knee to plant the whole foot on the next step, weight driving up through the leading leg, one hand sliding along the rail and torso tipped slightly forward",
|
|
91
|
+
term: "climbs the stairs" },
|
|
92
|
+
{ id: "descend-stairs", label: "Descend Stairs", category: "walks-runs", description: "Toe-first steps down, weight lowered under control",
|
|
93
|
+
promptHint: "the subject descends a flight of stairs, each foot reaching down to the next step toe first before the heel settles, weight lowering under control, chin level and one hand trailing on the rail",
|
|
94
|
+
term: "descends the stairs" },
|
|
95
|
+
{ id: "push-through-crowd", label: "Push Through Crowd", category: "walks-runs", description: "Shoulder wedged forward, forearm parting the way",
|
|
96
|
+
promptHint: "the subject pushes through the crowd, turning one shoulder forward to wedge between bodies, forearm raised to part the way, pelvis twisting sideways and short driving steps forcing a path ahead",
|
|
97
|
+
term: "shoulders through the crowd" },
|
|
98
|
+
{ id: "sidle-along-wall", label: "Sidle Along Wall", category: "walks-runs", description: "Back and palms flat to the wall, side-stepping",
|
|
99
|
+
promptHint: "the subject sidles along the wall with back and palms pressed flat against it, stepping sideways one foot after the other, knees soft, head turned to watch the direction of travel",
|
|
100
|
+
term: "sidles along the wall, back pressed" },
|
|
101
|
+
{ id: "stomp-off-angrily", label: "Stomp Off", category: "walks-runs", description: "Storms away, flat heavy stamps, fists clenched",
|
|
102
|
+
promptHint: "the subject turns sharply and stomps off, each foot slamming down flat and heavy, fists clenched and arms swinging stiffly, shoulders squared and head held rigidly forward without looking back",
|
|
103
|
+
term: "stomps off, fists clenched" },
|
|
104
|
+
{ id: "zombie-shamble", label: "Zombie Shamble", category: "walks-runs", description: "Stiff outstretched arms, pitched torso, one foot dragging",
|
|
105
|
+
promptHint: "the subject shambles forward with both arms held stiffly outstretched, torso pitched forward off balance, one leg dragging behind as the other lurches ahead, head hanging to one side and jaw slack",
|
|
106
|
+
term: "shambles, arms stiffly outstretched" },
|
|
107
|
+
{ id: "sleepwalk-forward", label: "Sleepwalk", category: "walks-runs", description: "Eyes half-closed, arms out ahead, flat-footed drift",
|
|
108
|
+
promptHint: "the subject sleepwalks forward with eyes half-closed and face slack, both arms extended straight ahead, flat-footed steps drifting in a straight line, the body upright and not reacting to anything around it",
|
|
109
|
+
term: "sleepwalks, arms held out ahead" },
|
|
110
|
+
{ id: "run-in-circles", label: "Run in Circles", category: "walks-runs", description: "Tight looping run, body leaning into the turn",
|
|
111
|
+
promptHint: "the subject runs in tight circles, body leaning into the turn, inside foot pivoting on each stride while the outside leg pushes wide, arms held out and head whipping around to keep looking ahead",
|
|
112
|
+
term: "runs in tight circles" },
|
|
113
|
+
{ id: "brace-against-wind", label: "Brace Against Wind", category: "walks-runs", description: "Torso pitched forward, forearm shielding the face",
|
|
114
|
+
promptHint: "the subject leans hard into the wind, torso pitched forward with one shoulder dropped, forearm raised to shield the face, feet planting wide in short braced steps that fight for every stride",
|
|
115
|
+
term: "leans into the wind, forearm up" },
|
|
116
|
+
{ id: "walk-with-cane", label: "Walk with Cane", category: "walks-runs", description: "Cane plants in time with the opposite foot",
|
|
117
|
+
promptHint: "the subject walks forward with a cane, planting its tip ahead in time with the opposite foot, weight leaning briefly onto the cane hand as the other leg swings through, steps short and even",
|
|
118
|
+
term: "walks with a cane" },
|
|
119
|
+
{ id: "roll-forward-in-wheelchair", label: "Wheelchair Roll", category: "walks-runs", description: "Both hands drive the push rims in matched strokes",
|
|
120
|
+
promptHint: "the subject rolls forward in a wheelchair, both hands gripping the push rims and driving them forward in matched strokes, shoulders rounding on each push and releasing on the return, chin up and looking ahead",
|
|
121
|
+
term: "rolls forward in a wheelchair" },
|
|
122
|
+
{ id: "pull-rolling-suitcase", label: "Pull Rolling Suitcase", category: "walks-runs", description: "One arm trailing back on the handle, case on its wheels",
|
|
123
|
+
promptHint: "the subject walks forward pulling a rolling suitcase, one arm trailing straight back to the extended handle, the case tilted onto its wheels behind, torso angled slightly toward the free side and the other arm swinging",
|
|
124
|
+
term: "walks pulling a rolling suitcase" },
|
|
125
|
+
]
|