A Sequencer attachment tool for Unreal Engine. StayPut handles attach and detach in a Level Sequence and rewrites the affected keyframes so the visual playback doesn't change. Use it when you need to switch parenting partway through a shot without re-animating anything.
Plugin dependencies (enabled automatically): LevelSequenceEditor. This ships with the Unreal Editor. No setup required.
Plugins/ directoryThree modes, picked via the toggle buttons at the top of the panel.
Attach one or more child actors to a parent. Each child's keyframes are converted from world space into the parent's local space. Playback looks identical to before.
StayPut creates a Sequencer Attach Track for each child and rewrites their transform keys.
Two plain-attach buttons sit beside it, for when you don't want the world position preserved: Simple Attach keeps the child's existing local transform under the new parent, and Zero Attach zeroes location and rotation so the child snaps to the parent's pivot or socket (scale is preserved).
Detach children from their parent. Keys are baked from local back to world space. The Attach Track is removed.
Zero an actor's rotation and compensate every one of its children so nothing visually moves. Handy for cleaning up imported animation, or for resetting a parent's orientation without breaking the children's poses.
Attach a child to a specific bone or socket on a Skeletal Mesh. StayPut samples the bone's world transform every frame, accounting for animation, IK, and Control Rig, and converts the child's keys relative to that bone.
In Parent mode, when the picked parent has a Skeletal Mesh, a bone/socket picker appears under the parent dropdown.
The Component dropdown lists all of the parent Blueprint's scene components, socket and bone-bearing ones first. Explicitly picking a component with no bone selected attaches to that component itself, sampling its own world transform: a vehicle rig's wheel, a procedural attach point. Auto-filled components keep plain actor-attach behaviour.
StayPut works at any nesting depth. Subsequences and shots appear as expandable folder rows in the panel tree, and all three modes operate on actors inside them. Spawnables and custom bindings inside shots resolve correctly.
Child and parent can live in different sequences of the same open hierarchy: parent into a shot, out of a shot, at any depth. The parent picker lists the whole hierarchy grouped per sequence instance, checked rows can span multiple sequences, and one click, one Ctrl+Z, reverts everything. Bone and socket attaches work across sequences too, including shots with offsets or different display rates.
An opt-in toggle in Parent and Unparent modes that re-runs construction scripts and Ticks the attach chain's Blueprint actors at every sampled frame. Use it for logic-positioned attach points, like a terrain-tracing car on a rail rig; without it such rigs sample frozen. Slow, because it runs Blueprint logic per frame.
Tick From Current Playhead to split the timeline at the Sequencer playhead. Keys before the playhead are left untouched; keys at and after the playhead get converted to the new space.
Used for mid-sequence space switches. A prop in one character's hand can be detached at frame 100 and attached to another character at the same frame. Past animation stays as it was.
In Parent mode, tick Motion Attach to freeze the child to a single offset relative to the parent at the attach frame. The child then rigidly follows the parent and has no animation of its own past the attach point.
For prop handoffs: a sword passed between characters, an object picked up and carried.
In Unparent mode, tick Static Detach to freeze the child at its world position at the detach frame. The child no longer inherits the parent's motion; it stops dead.
For dropped objects: a character releases something while moving, and the prop stays where it was released.
Minimal (default): adds keys only at parent inflection points. Fast, minimal extra keys. Use when the parent is stationary or only changes at a few keys.
Bake: writes a key at every frame at the chosen bake FPS, so children follow the parent exactly. Use when the parent is actively moving. In Unparent mode, Bake samples the child's true engine-evaluated world transform per frame, capturing whatever drives it: actor parents, bones, components, whole nested chains.
When Bake is selected, a Bake FPS control appears. It defaults to the sequence's display rate and accepts any value from 5 to 240. Higher values produce smoother playback at unlocked viewport framerates but write more keyframes.
Create Pivot spawns an empty actor at the average position of the selected actors, adds it to the sequence with a transform track, and optionally parents the selection to it. Use for group pivots: camera rigs, actor clusters.
The actor list sorts A to Z, Z to A, or in Sequencer order, with folders always first. Live search filters by name and reaches inside collapsed subsequence folders.
The panel has Select All, Select None, Invert Selection, Select All Parented (Unparent mode), and Select All With Rotation (Clean Rotation mode).
Before running, StayPut checks for circular attachment chains, missing transform tracks, non-uniform parent scale, and existing attachments. Warnings appear in the confirmation dialog.
Every operation is wrapped in a single Undo transaction. Ctrl+Z reverses everything: key edits, attach tracks added or removed, the lot.