Skip to content

Timeline

100 tools. Back to the index.

add_attach_track

Additive, idempotent.

Add a Sequencer 3D-Attach track on a binding so it follows another binding (e.g. a prop attached to a character's hand socket) over the section's range. The attachee binding owns a UMovieScene3DAttachTrack; AddConstraint creates an attach section pointing at the target binding. Idempotent by (target_binding_guid, start_frame).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding to attach (the attachee; this binding owns the attach track).
target_binding_guid string yes GUID of the binding to attach TO (the parent/target).
start_frame number no Optional start frame of the attach section (default: the sequence playback range start).
duration number no Optional duration in frames (default: the playback range size).
socket_name string no Optional socket name on the target to attach to (default: none -> target root).
component_name string no Optional component name on the target to attach to (default: none).

Returns: { sequence_name: string, binding_guid: string, target_binding_guid: string, track_added: bool, already_exists: bool, start_frame: int, duration: int, socket_name: string, component_name: string, section_count: int, track_class: string, saved: bool, save_error?: string }

add_audio_section

Additive.

Adds (or reuses) a root audio track on a Level Sequence and optionally a section. Finds an existing root UMovieSceneAudioTrack or adds one. If sound_path loads a USoundBase, a sound section is placed at the playback range start.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
sound_path string no Optional content path of a USoundBase, e.g. "/Game/Audio/MySound".

Returns: { sequence_name: string, track_class: string, audio_track: string, audio_track_index: int (the index set_audio_track_volume / set_audio_track_pitch take), track_added: bool, sound_loaded: bool, section_added: bool, section_count: int, sound_path: string, saved: bool, save_error?: string }

add_camera_cut

Additive.

Adds a camera cut section bound to a camera binding over a frame range. Creates the camera cut track if it does not yet exist.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
camera_binding_guid string yes GUID of the camera binding the cut switches to.
start_frame number yes Inclusive start frame (tick resolution).
end_frame number yes Exclusive end frame (must be > start_frame).

Returns: { sequence_name: string, camera_binding_guid: string, start_frame: int, end_frame: int, section_class: string, section_count: int, saved: bool, save_error?: string }

add_camera_cut_section

Additive.

Append a new UMovieSceneCameraCutSection bound to the given camera binding GUID over a frame range.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
camera_binding_guid string yes GUID of the camera binding the cut switches to.
sequence_name string no Alias for sequence_path.
start_frame number no Inclusive start frame (default 0).
end_frame number no Exclusive end frame (default = start_frame + 1).

Returns: { sequence_path: string, track_class: string, camera_binding_guid: string, section_index: int, section_count: int, start_frame: int, end_frame: int, section_added: bool, saved: bool, save_error?: string }

add_camera_cut_track

Additive.

Adds (or returns the existing) camera cut track on a Level Sequence's movie scene.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.

Returns: { sequence_name: string, track_class: string, track_added: bool, section_count: int, saved: bool, save_error?: string }

add_camera_focus_track

Additive.

Add a Float property track on ACineCameraActor::ManualFocusDistance to a Level Sequence binding. Thin domain wrapper over add_property_track.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the camera binding to attach the focus track to.
track_label string no Optional display label for the new track.

Returns: Forwarded response from add_property_track: { sequence_name, binding_guid, property_type, property_name, track_class, section_class, section_created, section_count, saved }

add_component_material_track

Additive.

Adds a component material parameter track for one indexed material slot to an object binding of a Level Sequence (first asset-name match under /Game), or reuses the binding's existing track for that slot, and saves the sequence. With parameter_name it keys that scalar parameter at frame (a tick-resolution frame) and reads the key back: success requires it, and a key the engine would skip (locked section, read-only sequence) is refused before anything is written; without it, it only adds a section spanning the playback range when the track has none. The slot index is not checked against the bound component, which is not resolved. An unknown binding_guid or a material_index that is not a whole number >= 0 is an error. For a Material Parameter Collection use add_material_parameter_collection_track; for other animated properties use add_property_track.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence
binding_guid string yes GUID of the actor/component object binding to attach the material track to
material_index number no Optional indexed material slot the track animates, a whole number >= 0 (default 0)
parameter_name string no Optional scalar material parameter name to key
value number no Optional scalar value for the keyed parameter (default 0.0)
frame number no Optional frame number for the key (default 0)

Returns: { sequence_name: string, binding_guid: string, track_class: string, track_added: bool, material_index: int, material_type: string, parameter_name: string, value: number, key_added: bool (read back from the track), section_added: bool (the track gained a section, keying included), scalar_channel_count: int, section_count: int, saved: bool, save_error?: string }

add_event_track_section

Additive.

Append a new UMovieSceneEventSection to the existing UMovieSceneEventTrack on the sequence.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
sequence_name string no Alias for sequence_path.
start_frame number no Inclusive start frame for the new event section (default 0).
end_frame number no Exclusive end frame for the new event section (default = start_frame + 1).

Returns: { sequence_path: string, track_class: string, section_index: int, section_count: int, start_frame: int, end_frame: int, section_class: string, section_added: bool, saved: bool, save_error?: string }

add_event_track_to_sequence

Additive.

Adds a root event track (UMovieSceneEventTrack) to a Level Sequence.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.

Returns: { sequence_name: string, track_class: string, section_count: int, saved: bool, save_error?: string }

add_fade_track_to_sequence

Additive.

Adds (or returns the existing) root fade track with a fade section spanning the playback range.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.

Returns: { sequence_name: string, track_class: string, track_added: bool, section_added: bool, section_count: int, section_class: string, saved: bool, save_error?: string }

add_keyframe_to_property_track

Additive.

Adds a keyframe to a property track's section channel(s) at the given time. The property track must already exist (call add_property_track first). The value is keyed onto every channel of the section:

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding owning the property track.
property_type string yes One of "Float", "Bool", "Vector", "Color", "Visibility".
time_seconds number yes Time (seconds, >= 0) at which to place the key.
value any no Key value. For Float: a scalar. For Bool/Visibility: a bool. For Vector/Color: a list of numbers (Vector/Color). Defaults to 0 / [] if omitted.

Returns: { sequence_name: string, binding_guid: string, property_type: string, time_seconds: float, key_frame: int, keys_added: int, channel_count: int, saved: bool, save_error?: string }

add_level_visibility_track

Additive.

Add a level-visibility track + section controlling streamed-level visibility over the playback range.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence
visible boolean no Optional: true = levels Visible (default), false = Hidden
level_names array no Optional array of streamed-level short names the section controls

Returns: { sequence_name: string, track_class: string, track_added: bool, section_added: bool, section_count: int, section_class: string, visibility: string, level_count: int, saved: bool, save_error?: string }

add_marked_frame

Destructive, idempotent.

Adds a marked frame (a labelled marker on the Sequencer timeline) at a tick-resolution frame of a Level Sequence found by asset name under /Game, in an undo transaction, and saves the sequence; is_determinism_fence turns the same mark into an evaluation fence. Idempotent per frame: an existing mark at that frame is updated instead of duplicated, its label replaced when one is given and both flags overwritten with the values passed (false when omitted); already_existed says which. Read marks with get_marked_frames, delete one with remove_marked_frame.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
frame number yes Tick frame number to mark.
label string no Optional human-readable label (auto-generated if empty).
is_determinism_fence boolean no Optional bool (default false): treat the mark as an evaluation fence (cannot be crossed in one evaluation).
is_inclusive boolean no Optional bool (default false): when a determinism fence, how the previous/next ranges are dissected ((X,Y]->(Y,Z] vs (X,Y)->[Y,Z]).

Returns: { sequence_name: string, frame: int, mark_index: int, label: string, is_determinism_fence: bool, is_inclusive: bool, already_existed: bool, marked_frame_count: int, saved: bool, save_error?: string }

add_material_parameter_collection_track

Additive.

Add a Material Parameter Collection master track bound to an MPC asset, optionally keying a scalar parameter (asset-level, headless).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence
mpc_path string yes Object path of an existing UMaterialParameterCollection asset (e.g. /Game/MyGame/MPC_X)
parameter_name string no Optional scalar parameter name to key on the MPC track
value number no Optional scalar value for the keyed parameter (default 0.0)
frame number no Optional frame number for the key (default 0)

Returns: { sequence_name: string, track_class: string, track_added: bool, mpc_path: string, mpc_name: string, parameter_name: string, value: number, key_added: bool, section_added: bool, scalar_channel_count: int, section_count: int, saved: bool, save_error?: string }

add_property_track

Additive.

Adds a typed property track + section to a Level Sequence binding. The track animates a named property on the bound object. A section spanning the movie scene's playback range is created so keys evaluate.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence (found by AssetName under /Game).
binding_guid string yes GUID of an existing binding (possessable or spawnable).
property_type string yes One of "Float", "Bool", "Vector", "Color", "Visibility".
property_name string yes Name of the animated property (e.g. "RelativeLocation", "Intensity", "bHidden"). Used as both the property name and path.

Returns: { sequence_name: string, binding_guid: string, property_type: string, property_name: string, track_class: string, section_class: string, section_created: bool, section_count: int, saved: bool, save_error?: string }

add_sequence_folder

Additive, idempotent.

Create a Sequencer outliner folder on a Level Sequence's movie scene (root folder, or a child of a named parent), inside an undo transaction, and save the sequence; success requires the save. Idempotent by name: a folder that already exists succeeds with already_existed true and saved false (nothing is written).

Parameter Type Required Description
sequence_path string yes Asset path OR bare asset name of the target Level Sequence.
folder_name string yes Name of the folder to create.
sequence_name string no Alias for sequence_path.
parent_folder string no Optional name of an existing parent folder; if given, the new folder is nested under it instead of at the root.

Returns: { sequence_path: string, folder_name: string, parent_folder: string, created: bool, already_existed: bool, root_folder_count: int, saved: bool, save_error?: string }

add_shot_section

Additive.

Adds a cinematic shot section (UMovieSceneCinematicShotSection) to the shot track and saves the sequence. Creates the cinematic shot track if it does not exist yet. The inner shot sequence is shot_sequence_path, or <target name>_Shot in the target's folder when omitted; it is loaded when it exists, else created and saved as a new asset (inner_sequence_created says which). An inner shot sequence that cannot be loaded, created or saved (a new one that fails to save stays in memory only), that is the target itself or that already plays it at any depth is an error and nothing is added. success is false, with save_error, when the save of the target fails.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
sequence_name string no Alias for sequence_path.
shot_sequence_path string no Optional content path of the inner shot Level Sequence. If omitted, an inner shot Level Sequence is created and persisted.
start_frame number no Inclusive start frame for the shot section (default 0).
duration number no Section duration in tick frames (default 150).

Returns: { sequence_path: string, track_class: string, track_added: bool, section_added: bool, inner_sequence_created: bool (true only when this call created the inner sequence), shot_name: string, shot_sequence_path: string, start_frame: int, duration: int, section_count: int, section_class: string, saved: bool, save_error?: string }

add_shot_track

Additive.

Adds a cinematic shot track (UMovieSceneCinematicShotTrack) to a Level Sequence.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
sequence_name string no Alias for sequence_path.

Returns: { sequence_path: string, track_class: string, track_added: bool, section_count: int, saved: bool, save_error?: string }

add_skeletal_animation_track

Additive.

Adds a skeletal-animation track to a Level Sequence binding. If anim_path loads a UAnimSequenceBase (a UAnimMontage qualifies), a section is added starting at the playback range start; otherwise just the empty track.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of an existing binding (typically a SkeletalMeshActor).
anim_path string no Optional content path of a UAnimSequenceBase or UAnimMontage, e.g. "/Game/Anims/MyAnim".

Returns: { sequence_name: string, binding_guid: string, track_class: string, track_added: bool, anim_loaded: bool, section_added: bool, section_count: int, anim_path: string, saved: bool, save_error?: string }

add_slomo_track

Additive.

Add (or return) the root time-dilation (slomo) track with a float section over the playback range, setting the dilation value at a frame. Asset-level/headless (NOT the PIE-only player play-rate).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence
dilation number no Optional time-dilation multiplier (default 1.0; <1 slower, >1 faster)
frame number no Optional frame number for the dilation key (default 0)

Returns: { sequence_name: string, track_class: string, track_added: bool, section_added: bool, section_count: int, section_class: string, dilation: number, saved: bool, save_error?: string }

add_spawnable_to_sequence

Additive.

Adds a spawnable actor binding to a Level Sequence (asset-model, headless).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence (found by AssetName under /Game).
class_name string no AActor subclass name (e.g. "CineCameraActor" default, "StaticMeshActor", "PointLight", or a "/Script/Module.Class" path).

Returns: { sequence_name: string, binding_guid: string, display_name: string, class_name: string, spawnable: bool, saved: bool, save_error?: string }

add_subcomponent_possessable

Additive.

Adds a component possessable as a child of an existing binding (possessable or spawnable) of a Level Sequence found by asset name under /Game, in an undo transaction, and saves the sequence; each call adds a new one, named possessable_name or else the component_class text. It records name, class and parent only: no component object is bound to it. To possess an actual component of an editor-world actor use bind_component_to_sequence; for whole actors use bind_actor_to_sequence or add_spawnable_to_sequence. An unknown parent GUID, an unresolvable class, or a class that is not an ActorComponent is an error.

Parameter Type Required Description
sequence_name string yes Name of the level sequence asset.
parent_binding_guid string yes GUID of the parent binding (spawnable or possessable).
component_class string yes Component class name (e.g. 'StaticMeshComponent', 'SpotLightComponent').
possessable_name string no Optional override name for the new possessable.

Returns: { sequence_name: string, possessable_guid: string, component_class: string, parent_guid: string, saved: bool, save_error?: string }

add_subsequence_track

Additive.

Nests one Level Sequence in another: finds the target's first root track of exactly the subsequence class (never a cinematic shot track or another subclass) or adds one, adds a sub section playing the inner sequence from start_frame for duration tick-resolution frames, and saves the target. The inner sequence is sub_sequence_path, or <target name>_Sub in the target's folder when omitted; it is loaded when it exists, else created and saved as a new asset (inner_sequence_created says which). Each call adds another section. An inner sequence that cannot be loaded, created or saved (a new one that fails to save stays in memory only), that is the target itself, or that already plays the target at any depth is an error and nothing is added. success is false, with save_error, when the save of the target fails. For cinematic shots use add_shot_track.

Parameter Type Required Description
sequence_path string yes Full /Game path (e.g. "/Game/MyGame/SUBSEQ_Example") OR bare asset name of the target Level Sequence.
sequence_name string no Alias for sequence_path.
sub_sequence_path string no Optional content path of the sub Level Sequence to nest. If omitted, a sibling inner Level Sequence is created and persisted.
start_frame number no Inclusive start frame for the sub section (default 0).
duration number no Section duration in tick frames (default 150).

Returns: { sequence_path: string, track_class: string, track_added: bool, section_added: bool, inner_sequence_created: bool (true only when this call created the inner sequence), start_frame: int, duration: int, section_count: int, sub_sequence_path: string, sub_sequence_name: string, saved: bool, save_error?: string }

add_transform_keyframe

Additive.

Adds one transform keyframe (9 double channels) at a time on a binding's transform section. Requires a transform track to already exist (call add_transform_track_to_binding first).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding.
time_seconds number yes Time of the key in seconds (>= 0). Converted to ticks via tick resolution.
location array no Optional [x, y, z] world location.
rotation array no Optional [pitch, yaw, roll] world rotation.
scale array no Optional [x, y, z] scale (default 1,1,1).

Returns: { sequence_name: string, binding_guid: string, time_seconds: float, key_frame: int, keys_added: int, channel_count: int, saved: bool, save_error?: string }

add_transform_track_to_binding

Additive.

Adds a 3D transform track (with a section spanning the playback range) to a binding.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding (from add_spawnable_to_sequence / bind_actor_to_sequence / get_sequence_bindings).

Returns: { sequence_name: string, binding_guid: string, track_class: string, track_added: bool, section_created: bool, section_count: int, saved: bool, save_error?: string }

add_visibility_track

Additive.

Add a Visibility property track on bVisible to a Level Sequence binding. Thin domain wrapper over add_property_track.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding to attach the visibility track to.
track_label string no Optional display label for the new track.

Returns: Forwarded response from add_property_track: { sequence_name, binding_guid, property_type, property_name, track_class, section_class, section_created, section_count, saved }

add_weighted_value_keyframe

Additive.

Write a single key onto an existing float property track's first section (cubic / linear / constant interp).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding owning the float property track.
time_seconds number yes Time (seconds, >= 0) at which to place the key.
property_name string no Name of the float property (default "Weight"; used for response only).
value number no Key value (float).
arrive_tangent number no Optional tangent for cubic interp (default 0).
leave_tangent number no Optional tangent for cubic interp (default 0).
interp_mode string no "cubic" (default), "linear", or "constant".

Returns: { sequence_name: string, binding_guid: string, property_name: string, time_seconds: float, value: float, interp_mode: string, arrive_tangent: float, leave_tangent: float, key_index: int, key_count: int, saved: bool, save_error?: string }

add_weighted_value_track

Additive.

Add a Float property track on a numeric property (weight / alpha / scalar blend) to a Level Sequence binding. Thin domain wrapper over add_property_track.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding to attach the weighted value track to.
property_name string no Name of the float property to drive (default "Weight").
track_label string no Optional display label for the new track.

Returns: Forwarded response from add_property_track: { sequence_name, binding_guid, property_type, property_name, track_class, section_class, section_created, section_count, saved }

bind_actor_property_to_sequence

Destructive.

Bind an editor-world actor to a Level Sequence (possessable) and add a typed property track to its binding. Combined bind+animate flow.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
actor_name string yes Label (or name) of the actor in the current editor world to bind.
property_name string yes Name of the property to animate.
property_type string yes One of "Float", "Bool", "Vector", "Color", "Visibility".
track_label string no Optional display label for the new track.

Returns: { sequence_name: string, actor_name: string, property_name: string, property_type: string, binding_guid: string, track_class: string, section_class: string, binding_created: bool, saved: bool, save_error?: string }

bind_actor_to_sequence

Destructive.

Adds a possessable binding to a Level Sequence for an existing editor-world actor.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
actor_name string yes Label (or name) of the actor in the current editor world to possess.

Returns: { sequence_name: string, actor_name: string, binding_guid: string, display_name: string, possessable: bool, saved: bool, save_error?: string }

bind_component_property_to_sequence

Destructive.

Bind an editor-world actor's component to a Level Sequence (possessable, parented to actor's binding) and add a typed property track to its binding.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
actor_name string yes Label (or name) of the actor in the current editor world.
component_name string yes Component object name, component class name, or "root".
property_name string yes Name of the property to animate.
property_type string yes One of "Float", "Bool", "Vector", "Color", "Visibility".
sequence_name string no Alias for sequence_path.
track_label string no Optional display label for the new track.

Returns: { sequence_path: string, actor_name: string, component_name: string, property_name: string, property_type: string, binding_guid: string, parented_to_actor: bool, track_class: string, section_class: string, saved: bool, save_error?: string }

bind_component_to_sequence

Destructive.

Adds a possessable binding for an actor's component to a Level Sequence. Resolves the actor by label in the current editor world, finds the named component (by component name, class name, or "root"), adds a possessable for the component class, binds the component, and parents the component binding to the actor's binding when the actor is already possessed.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
actor_name string yes Label (or name) of the actor in the current editor world.
component_name string yes Component object name, component class name, or "root".
sequence_name string no Alias for sequence_path.

Returns: { sequence_path: string, actor_name: string, component_name: string, component_class: string, parent_binding_guid: string, binding_guid: string, display_name: string, possessable: bool, saved: bool, save_error?: string }

clear_marked_frames

Destructive, idempotent.

Removes ALL user marked frames from a Level Sequence's movie scene, inside an undo transaction, and saves the sequence; success requires the save. A sequence with no marks succeeds with already_empty true and saved false (nothing is written).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.

Returns: { sequence_name: string, removed_count: int, already_empty: bool, marked_frame_count: int, saved: bool, save_error?: string }

create_cine_camera_in_sequence

Additive.

Creates a spawnable CineCameraActor binding, keys its transform, and binds a camera cut to it. High-value one-shot: spawnable CineCameraActor + transform track keyed at frame 0 + a camera cut spanning the playback range.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
location array no Optional [x, y, z] world location for the camera's key at frame 0.
rotation array no Optional [pitch, yaw, roll] world rotation for the camera's key at frame 0.

Returns: { sequence_name: string, binding_guid: string, display_name: string, class_name: string, spawnable: bool, transform_keyed: bool, camera_cut_added: bool, saved: bool, save_error?: string }

create_level_sequence

Destructive.

Creates a Level Sequence asset at package_path/sequence_name and saves it, with playback range [0, duration) and frame_rate, truncated to whole fps, as both tick resolution and display rate; the end frame is duration times that whole rate, to the nearest frame. If that asset already exists it is loaded and those settings are overwritten, its keys, sections and ranges migrated to the new rate so nothing moves in time; sequence_created tells a new asset from an existing one. Not undoable; another asset class at the path, or a duration shorter than one frame, is an error. To retime an existing sequence use set_sequence_frame_rate or set_sequence_duration; list sequences with get_level_sequences.

Parameter Type Required Description
sequence_name string yes Name of the new sequence to create
package_path string no Target content path, defaults to /Game/Sequences
duration number no Playback duration in seconds, above 0 and at most 3600, default 10
frame_rate number no Frame rate in fps, at least 1 and at most 120, truncated to whole fps, default 30

Returns: { sequence_name: string, package_path: string, duration: number, frame_rate: number, sequence_created: bool (false when the asset already existed), saved: bool, asset_path: string, playback_range_set: bool, tick_rate_set: bool, actual_start_frame: int, actual_end_frame: int }

delete_level_sequence

Destructive.

Deletes a Level Sequence asset permanently, choosing the first sequence under /Game whose asset name matches sequence_name (case-insensitive). Succeeds only when actually_deleted: the delete reported success, the asset is no longer registered and its file is gone from disk (a read-only file, or one another process holds open, stays behind and fails the call).

Parameter Type Required Description
sequence_name string yes Asset name of the Level Sequence to delete, not its path (e.g. "LS_Intro")

Returns: { sequence_name: string, asset_path: string, delete_attempted: bool, asset_still_exists: bool, file_still_exists: bool, actually_deleted: bool }

duplicate_keyframe

Additive.

Clone an existing key (Float / Vector / Color / Bool channel) from source_time_seconds to dest_time_seconds, preserving the original value.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding owning the property track.
property_type string yes One of "Float", "Bool", "Vector", "Color", "Visibility".
source_time_seconds number no Time (seconds) of the source key to copy.
dest_time_seconds number no Destination time (seconds) for the cloned key.
channel_index number no Index of the channel to read/write (default 0).

Returns: { sequence_name: string, binding_guid: string, property_type: string, source_time_seconds: float, dest_time_seconds: float, source_frame: int, dest_frame: int, channel_index: int, duplicated_value: string, keys_written: int, applied: bool, saved: bool, save_error?: string }

get_audio_section_properties

Read-only.

Read the playback properties of an audio section (UMovieSceneAudioSection), resolved like set_audio_section_properties (root audio track + section_index). Pure reader (no transaction/save). looping reads IsRepeating() (the engine's loop query); volume/pitch are sampled at frame 0; volume_key_count/pitch_key_count report the animated-channel key counts.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the Level Sequence that owns the (root) audio track.
sequence_name string no Alias for sequence_path.
section_index number no Index of the section on the resolved root audio track (default 0).

Returns: { sequence_path: string, section_class: string, section_index: int, sound_path: string, start_offset: int, volume: number, pitch: number, volume_key_count: int, pitch_key_count: int, looping: bool, play_until_finished: bool, suppress_subtitles: bool, override_attenuation: bool, attenuation_path: string }

get_binding_tracks

Read-only.

List all tracks for a given binding GUID with class, display name, section count.

Parameter Type Required Description
sequence_name string yes Name of the level sequence asset.
binding_guid string yes GUID string of the binding.

Returns: { sequence_name: string, binding_guid: string, tracks: [{class, display_name, section_count, is_empty}], track_count: int }

get_channel_keyframes

Read-only.

Read every keyframe on one channel of a binding's section (resolved like set_section_easing). Pure reader (no transaction/save). channel_type selects which channel proxy view to index: "double" (transform loc/rot/scale, default), "float" (property/color), "bool" (visibility). Bool keys omit interp/tangent fields.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to read.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing) selecting the track on the binding.
track_index number no Index into the binding's tracks (default 0; used when track_type omitted).
section_index number no Index of the section on the resolved track (default 0).
channel_type string no Channel value kind: "double" (default) | "float" | "bool".
channel_index number no Index of the channel within its proxy view (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, channel_index: int, channel_type: string, key_count: int, keyframes: [{ index: int, frame: int, time_seconds: number, value: number|bool, interp_mode: string, tangent_mode: string, arrive_tangent: number, leave_tangent: number }] }

get_level_sequence_status_runtime

Read-only.

Retrieve the current playback status of an active Level Sequence player

Parameter Type Required Description
player_key string yes Player key returned from play_level_sequence_runtime

Returns: { player_key: string, status: string, is_playing: bool, is_paused: bool, is_reversed: bool, current_time: number, duration: number, frame_rate: number, playback_progress: number }

get_level_sequences

Read-only.

List all Level Sequences in the project, optionally filtered by package path

Parameter Type Required Description
package_path string no Filter to a long package path, defaults to /Game
max_results number no Maximum number of sequences to return, 1 to 10000, default 1000

Returns: { sequences: [object], total_count: int, max_results: int, truncated: bool }

get_marked_frames

Read-only.

Lists every user marked frame in a Level Sequence's movie scene.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.

Returns: { sequence_name: string, marked_frames: [{index, frame, label, is_determinism_fence, is_inclusive}], marked_frame_count: int, marked_frames_locked: bool }

get_section_info

Read-only.

Get detailed info about a sequencer section: range, easing, completion mode, blend type, lock/infinite state.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to inspect.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing).
track_index number no Index into the binding's tracks (0 = first track, default 0).
section_index number no Index of the section on the resolved track (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, start_frame: int, end_frame: int, ease_in_frames: int, ease_out_frames: int, manual_ease_in: bool, manual_ease_out: bool, completion_mode: string, blend_type: string, blend_type_valid: bool, is_locked: bool, is_active: bool, is_attach_section: bool, attach_rules: object? }

get_sequence_bindings

Read-only.

Lists every object binding of a Level Sequence, the first asset under /Game whose name matches sequence_name (case-insensitive), with each binding's tracks (class and section count); read-only, needs no open Sequencer. spawnable is true when the binding has a spawn track and possessable otherwise; possessable_count and spawnable_count are the movie scene's own counts and can disagree with those flags. Root tracks are not listed: use get_sequence_tracks. For one binding's tracks with display names use get_binding_tracks.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.

Returns: { sequence_name: string, bindings: [{guid, name, spawnable, possessable, track_count, tracks: [{class, section_count}]}], binding_count: int, possessable_count: int, spawnable_count: int }

get_sequence_duration

Read-only.

Reads the playback range of a Level Sequence, the first under /Game whose asset name matches (case-insensitive), without changing it. Returns duration in seconds, and start_frame and end_frame in tick-resolution frames, not display frames; get_timeline_info also gives both rates.

Parameter Type Required Description
sequence_name string yes Asset name of the Level Sequence, not its path (e.g. "LS_Intro"); the first match under /Game is used

Returns: { sequence_name: string, duration: number, start_frame: int, end_frame: int }

get_sequence_folders

Read-only.

Read the Sequencer folder tree of a Level Sequence (root folders, recursively, with child tracks + bindings). Read-only.

Parameter Type Required Description
sequence_path string yes Asset path OR bare asset name of the target Level Sequence.
sequence_name string no Alias for sequence_path.

Returns: { sequence_path: string, root_folder_count: int, folders: [{ name: string, child_folders: [...recursive...], child_tracks: [{class, name}], child_bindings: [guid_string] }] }

get_sequence_frame_rate

Read-only.

Reads the tick resolution of a Level Sequence (found by asset name under /Game), NOT its display rate, without changing it. Returns frame_rate as a decimal plus numerator and denominator. Read the display rate with get_timeline_info; change both with set_sequence_frame_rate.

Parameter Type Required Description
sequence_name string yes Asset name of the Level Sequence, not its path (e.g. "LS_Intro"); the first match under /Game is used

Returns: { sequence_name: string, frame_rate: number, numerator: int, denominator: int }

get_sequence_master_tracks

Read-only.

List the master tracks and binding tracks of a Level Sequence. A master track belongs to no object binding (applies to the sequence globally, e.g. a FadeTrack, AudioTrack, EventTrack, and the camera cut track, which is listed too); a binding track belongs to an object binding, whose guid it carries. This command returns both lists with class, name, section_count, binding_guid fields (binding_guid empty on a master track); total_track_count is their sum.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
sequence_name string no Alias for sequence_path.

Returns: { sequence_path: string, total_track_count: int, master_track_count: int, binding_track_count: int, master_tracks: [{class, name, section_count, binding_guid}], binding_tracks: [{class, name, section_count, binding_guid}] }

get_sequence_possessables

Read-only.

List the possessable bindings of a Level Sequence found by asset name under /Game (first match): GUID, name, possessed class and parent GUID of each, plus possessable_count. Read-only; spawnables are listed by get_sequence_spawnables, and every binding with its tracks by get_sequence_bindings.

Parameter Type Required Description
sequence_name string yes Asset name (not a path) of the Level Sequence, e.g. "LS_Intro"; the first match under /Game is used, ignoring case.

Returns: { sequence_name: string, possessables: [{guid, name, class, parent_guid}], possessable_count: int }

get_sequence_spawnables

Read-only.

List all spawnables in a level sequence with GUID, name, template class.

Parameter Type Required Description
sequence_name string yes Name of the level sequence asset.

Returns: { sequence_name: string, spawnables: [{guid, name, template_class, spawnable, spawn_ownership}], spawnable_count: int }

get_sequence_track_count

Read-only.

Flat readback of the total/master/binding track counts and per-class breakdown. master_track_count counts the root tracks, the camera cut track included; binding_track_count counts the tracks of every object binding; total_track_count is their sum, and class_breakdown and total_section_count cover both.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
sequence_name string no Alias for sequence_path.

Returns: { sequence_path: string, total_track_count: int, master_track_count: int, binding_track_count: int, total_section_count: int, distinct_class_count: int, class_breakdown: [{class, count}] }

get_sequence_tracks

Read-only.

Lists the tracks of a Level Sequence, the first asset under /Game whose name matches sequence_name (case-insensitive): root (master) tracks, the camera cut track included, with display name, track name, class and section count, then each object binding (guid, display name) with its own tracks nested. Read-only; needs no open Sequencer. total_track_count is the number of tracks listed: root tracks plus every binding's tracks. For flat lists carrying binding_guid use get_sequence_master_tracks; for spawnable/possessable flags use get_sequence_bindings; for one binding use get_binding_tracks.

Parameter Type Required Description
sequence_name string yes Name of the target level sequence

Returns: { sequence_name: string, master_tracks: [object], bindings: [object], master_track_count: int, binding_count: int, total_track_count: int }

get_timeline_info

Read-only.

Reads the timeline summary of a Level Sequence asset (first asset-name match under /Game); needs no open Sequencer and changes nothing. Returns asset_path, start_frame and end_frame in ticks, duration in seconds, tick_resolution, display_rate with numerator and denominator, and track, binding, possessable and spawnable counts. master_track_count counts the root tracks, the camera cut track included, as get_sequence_tracks lists them.

Parameter Type Required Description
sequence_name string yes Asset name of the Level Sequence, not its path (e.g. "LS_Intro"); the first match under /Game is used

Returns: { sequence_name: string, asset_path: string, start_frame: int, end_frame: int, duration: number, tick_resolution: number, display_rate: number, display_rate_numerator: int, display_rate_denominator: int, master_track_count: int, binding_count: int, possessable_count: int, spawnable_count: int }

move_keyframe

Destructive, idempotent.

Move one keyframe (located by 'index' or 'frame') to new_frame on a binding's section channel, preserving its value/interp/tangents. Idempotent: MoveKey(bRemoveDuplicateKeys=true) collapses a duplicate when re-moved onto an existing frame. channel_type selects the proxy view ("double" default | "float" | "bool").

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
new_frame number yes Destination frame number for the key.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing) selecting the track on the binding.
track_index number no Index into the binding's tracks (default 0; used when track_type omitted).
section_index number no Index of the section on the resolved track (default 0).
channel_type string no Channel value kind: "double" (default) | "float" | "bool".
channel_index number no Index of the channel within its proxy view (default 0).
index integer no Index of the key to move (mutually exclusive with frame).
frame integer no Frame of the key to move (resolved via FindKey; provide index OR frame).
tolerance integer no Optional FindKey frame tolerance when locating by frame (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, channel_index: int, channel_type: string, old_frame: int, new_frame: int, key_index: int, moved: bool, saved: bool, save_error?: string }

move_track_to_folder

Destructive, idempotent.

Move a master track (by class) or an object-binding (by GUID) into a named Sequencer folder, inside an undo transaction, and save the sequence; success requires the save. Idempotent: a track or binding already in the folder succeeds with already_present true and saved false (nothing is written).

Parameter Type Required Description
sequence_path string yes Asset path OR bare asset name of the target Level Sequence.
folder_name string yes Name of the destination folder (searched recursively).
sequence_name string no Alias for sequence_path.
track_class string no Class name of the master track to move (e.g. "MovieSceneCameraCutTrack"). Mutually exclusive with binding_guid.
track_name string no Optional track name to disambiguate when several tracks share the class.
binding_guid string no GUID of an object-binding to move into the folder. Mutually exclusive with track_class.

Returns: { sequence_path: string, folder_name: string, track_class: string, track_name: string, binding_guid: string, moved: bool, already_present: bool, saved: bool, save_error?: string }

pause_level_sequence_runtime

Destructive.

Pauses, at its current position, the runtime ULevelSequencePlayer whose player_key play_level_sequence_runtime returned. Players live in the PIE or game world and stop resolving once it ends. Returns player_key, paused, playing and current_time in seconds; read it later with get_level_sequence_status_runtime.

Parameter Type Required Description
player_key string yes Player key returned from play_level_sequence_runtime

Returns: { player_key: string, paused: bool, playing: bool, current_time: number }

pause_timeline

Destructive.

Pause playback in the open Sequencer editor on a target sequence

Parameter Type Required Description
sequence_name string yes Name of the target level sequence

Returns: { sequence_name: string, playing: bool, paused: bool }

play_level_sequence_runtime

Destructive.

Create a runtime player and start playback of a Level Sequence

Parameter Type Required Description
sequence_name string yes Name of the sequence to play
world string no Optional world selector: absent/'pie' (default: PlayWorld, else the first PIE context) | 'server' | 'client' | 'pie:N' | 'game' (alias of 'pie'). Runtime playback needs a PIE/Game world (an editor world has no movie-scene tick manager and would assert), so an editor world is refused here.

Returns: { sequence_name: string, player_key: string, playing: bool, current_time: number, world: string, world_name: string|null, world_package: string|null, world_type: string|null, net_mode: string|null, pie_instance: number }

play_timeline

Additive, idempotent.

Starts playback in the editor's Sequencer on a Level Sequence found by asset name under /Game, first opening it there when it is not the sequence shown. Editor preview only, no PIE or game player (use play_level_sequence_runtime for that). Returns at once and changes no asset; calling it while playing keeps playing. playing is read right after the call. Errors when the sequence is missing or no Sequencer can show it. Pause with pause_timeline; move the playhead with set_timeline_time.

Parameter Type Required Description
sequence_name string yes Name of the target level sequence

Returns: { sequence_name: string, playing: bool }

remove_keyframe

Destructive.

Remove one keyframe (located by 'index' or 'frame') from a binding's section channel (resolved like move_keyframe). The out-of-range guard is applied BEFORE RemoveKey because TMovieSceneChannelData::RemoveKey has a fatal check(IsValidIndex) -- an invalid locator returns a clean error, never a crash. channel_type selects the proxy view ("double" default | "float" | "bool").

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing) selecting the track on the binding.
track_index number no Index into the binding's tracks (default 0; used when track_type omitted).
section_index number no Index of the section on the resolved track (default 0).
channel_type string no Channel value kind: "double" (default) | "float" | "bool".
channel_index number no Index of the channel within its proxy view (default 0).
index integer no Index of the key to remove (mutually exclusive with frame).
frame integer no Frame of the key to remove (resolved via FindKey; provide index OR frame).
tolerance integer no Optional FindKey frame tolerance when locating by frame (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, channel_type: string, channel_index: int, removed_frame: int, key_index: int, removed: bool, key_count_after: int, saved: bool, save_error?: string }

remove_marked_frame

Destructive.

Removes one user marked frame from a Level Sequence, by index, frame, or label, inside an undo transaction, and saves the sequence; success requires the save. A selector that matches no mark succeeds with already_removed true and saved false (nothing is written).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
index number no Optional mark index to delete. Takes precedence over frame/label.
frame number no Optional tick frame number to resolve the mark to delete (FindMarkedFrameByFrameNumber).
label string no Optional label to resolve the mark to delete (FindMarkedFrameByLabel).

Returns: { sequence_name: string, removed_index: int, already_removed: bool, marked_frame_count: int, saved: bool, save_error?: string }

remove_section

Destructive.

Remove a section from a sequencer track by index. Resolves the section like set_section_active (binding_guid + track_type/index + section_index), then removes it from its owning track via UMovieSceneTrack::RemoveSectionAt. One delete for what every per-track add_*_section adds.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to remove.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing).
track_index number no Index into the binding's tracks (0 = first track, default 0).
section_index number no Index of the section on the resolved track to remove (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, track_type: string, track_index: int, removed: bool, remaining_sections: int, saved: bool, save_error?: string }

remove_sequence_binding

Destructive.

Remove a spawnable or possessable binding, found by GUID, from a Level Sequence named by asset name under /Game, then save the sequence; a failed save returns success false. Fails when the GUID is not a spawnable or possessable of the sequence. Returns removed_as; get GUIDs from get_sequence_bindings.

Parameter Type Required Description
sequence_name string yes Asset name (not a path) of the Level Sequence, e.g. "LS_Intro"; the first match under /Game is used, ignoring case.
binding_guid string yes GUID of the binding to remove, as get_sequence_bindings returns it.

Returns: { sequence_name: string, binding_guid: string, removed: bool, removed_as: string, saved: bool, save_error?: string }

remove_sequence_folder

Destructive, idempotent.

Remove a Sequencer outliner folder (root, or a named child of parent_folder) from a Level Sequence's movie scene, inside an undo transaction, and save the sequence; success requires the save. Inverse of add_sequence_folder; idempotent by name: an absent folder succeeds with already_absent true and saved false (nothing is written).

Parameter Type Required Description
sequence_path string yes Asset path OR bare asset name of the target Level Sequence.
folder_name string yes Name of the folder to remove.
sequence_name string no Alias for sequence_path.
parent_folder string no Optional name of the parent folder (searched recursively); if given, the child folder named folder_name is removed from it instead of a root folder.

Returns: { sequence_path: string, folder_name: string, parent_folder: string, removed: bool, already_absent: bool, root_folder_count: int, saved: bool, save_error?: string }

remove_sequence_track

Destructive.

Delete any track from a sequence by display name OR exact class name (optionally filtered by track_class).

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
track_name string yes Display name OR class short name of the track to remove.
sequence_name string no Alias for sequence_path.
track_class string no Optional exact class filter (e.g. "MovieSceneFadeTrack") to disambiguate.

Returns: { sequence_path: string, track_name: string, track_class: string, sections_removed: int, removed: bool, saved: bool, save_error?: string }

set_attach_section_rules

Destructive, idempotent.

Set the attach/detach transform rules on a Sequencer 3D-attach section (created by add_attach_track). The 6 rules (location/rotation/scale x attach/detach) control how the attachee's transform is preserved when the attach begins/ends. Only the supplied rules change (applied_count) and all 6 are read back. The section is resolved like get_section_info (binding_guid + track_index + section_index).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence (or sequence_path).
binding_guid string yes GUID of the attachee binding that owns the attach track.
sequence_path string no Asset path of the target Level Sequence (alias for sequence_name).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.
track_index number no Optional index into the binding's tracks (default 0).
track_type string no Optional class filter to pick the track ("transform"|"float"|"bool"|"vector"|"color"|"visibility"|"audio"|"event"|"fade"|"skeletalanimation"|"subsequence"|"cameracut"|"property"); used when track_index is omitted.
section_index number no Optional index of the section on the track (default 0).
attachment_location_rule string no Optional EAttachmentRule: KeepRelative | KeepWorld | SnapToTarget.
attachment_rotation_rule string no Optional EAttachmentRule: KeepRelative | KeepWorld | SnapToTarget.
attachment_scale_rule string no Optional EAttachmentRule: KeepRelative | KeepWorld | SnapToTarget.
detachment_location_rule string no Optional EDetachmentRule: KeepRelative | KeepWorld.
detachment_rotation_rule string no Optional EDetachmentRule: KeepRelative | KeepWorld.
detachment_scale_rule string no Optional EDetachmentRule: KeepRelative | KeepWorld.

Returns: { sequence_path: string, attach_rules: object, applied_count: int, applied: bool, save_error?: string }

set_audio_section_properties

Destructive, idempotent.

Set playback properties on an audio section (UMovieSceneAudioSection). Optionally swaps the sound and toggles loop/play-until-finished/subtitle/attenuation flags. SetAttenuationSettings is a no-op at eval unless override_attenuation is true, so the override flag is applied first.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the Level Sequence that owns the (root) audio track.
sequence_name string no Alias for sequence_path.
section_index number no Index of the section on the resolved root audio track (default 0).
sound_path string no Optional content path of a USoundBase to set as the section's sound.
looping boolean no Section repeating/looping (maps to SetRepeating, the engine's loop knob; omit to leave unchanged).
play_until_finished boolean no SetPlayUntilFinished (omit to leave unchanged).
suppress_subtitles boolean no SetSuppressSubtitles (omit to leave unchanged).
override_attenuation boolean no SetOverrideAttenuation; must be true for attenuation_path to take effect (omit to leave unchanged).
attenuation_path string no Optional content path of a USoundAttenuation to set (only effective when override_attenuation is true).

Returns: { sequence_path: string, section_class: string, section_index: int, sound: string, sound_set: bool, looping: bool, play_until_finished: bool, suppress_subtitles: bool, override_attenuation: bool, attenuation: string, attenuation_set: bool, set: bool, saved: bool, save_error?: string }

set_audio_section_start_offset

Destructive, idempotent.

Set the StartFrameOffset on an existing UMovieSceneAudioSection (skip-into-clip).

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
sequence_name string no Alias for sequence_path.
section_index number no Index of the audio section on the audio track (default 0).
start_offset_seconds number no Optional offset in seconds (converted via display rate).
start_offset_frames number no Optional raw frame offset (use for non-display-rate precision).

Returns: { sequence_path: string, section_index: int, old_start_offset_frames: int, new_start_offset_frames: int, applied: bool, saved: bool, save_error?: string }

set_audio_track_pitch

Destructive, idempotent.

Set the PitchMultiplier channel on an audio section (default value or at a specific time).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
audio_track_index number no Index of the root audio track (default 0).
section_index number no Index of the section within the audio track (default 0).
pitch number no New pitch multiplier (1.0 = normal speed).
time_seconds number no Optional time (seconds) for the key. Omit to set the constant value.

Returns: { sequence_name: string, audio_track_index: int, section_index: int, pitch: float, channel_name: string, key_count: int, keys_written: int, saved: bool, save_error?: string }

set_audio_track_volume

Destructive, idempotent.

Set the SoundVolume channel on an audio section (default value or at a specific time).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
audio_track_index number no Index of the root audio track (default 0).
section_index number no Index of the section within the audio track (default 0).
volume number no New volume value (0..N; 1 = unity gain).
time_seconds number no Optional time (seconds) for the key. Omit to set the constant value.

Returns: { sequence_name: string, audio_track_index: int, section_index: int, volume: float, channel_name: string, key_count: int, keys_written: int, saved: bool, save_error?: string }

set_binding_channel_keyframe_interp

Destructive, idempotent.

Set the interpolation mode, tangent mode, tangents and/or value of one keyframe on a binding's section channel (resolved like set_section_easing). Like set_keyframe_interpolation but for per-binding channels: transform "double" (default) or property "float". Bool channels have no interp/tangent and are rejected. Idempotent (writing the same fields = same state).

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing) selecting the track on the binding.
track_index number no Index into the binding's tracks (default 0; used when track_type omitted).
section_index number no Index of the section on the resolved track (default 0).
channel_type string no Channel value kind: "double" (default) | "float". ("bool" is rejected -- no interp/tangent.)
channel_index number no Index of the channel within its proxy view (default 0).
index integer no Index of the key to edit (mutually exclusive with frame).
frame integer no Frame of the key to edit (resolved via FindKey; provide index OR frame).
tolerance integer no Optional FindKey frame tolerance when locating by frame (default 0).
value number no Optional new key value (leaves unchanged if omitted).
interp_mode string no Optional interpolation: "Cubic" | "Linear" | "Constant" (default leaves unchanged).
tangent_mode string no Optional tangent mode (Cubic only): "Auto" | "User" | "Break" (default leaves unchanged).
arrive_tangent number no Optional arrive tangent value (Cubic).
leave_tangent number no Optional leave tangent value (Cubic).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, channel_index: int, channel_type: string, frame: int, key_index: int, value: number, interp_mode: string, tangent_mode: string, arrive_tangent: number, leave_tangent: number, set: bool, saved: bool, save_error?: string }

set_keyframe_interpolation

Destructive, idempotent.

Set the interpolation mode, tangent mode and tangents of an existing keyframe on a master float track's channel (asset-level, headless).

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence
track_class string yes Class-name fragment of the master track whose float channel to edit (e.g. "Slomo", "Fade")
frame number yes Frame number of the existing key to modify
interp_mode string no Optional interpolation: "Cubic" | "Linear" | "Constant" (default leaves unchanged)
tangent_mode string no Optional tangent mode (Cubic only): "Auto" | "User" | "Break" (default leaves unchanged)
channel_index number no Optional float-channel index on the section (default 0)
arrive_tangent number no Optional arrive tangent value (Cubic)
leave_tangent number no Optional leave tangent value (Cubic)

Returns: { sequence_name: string, track_class: string, frame: int, key_found: bool, channel_index: int, interp_mode: string, tangent_mode: string, arrive_tangent: number, leave_tangent: number, saved: bool, save_error?: string }

set_level_sequence_time_runtime

Destructive, idempotent.

Set the playback time of an active Level Sequence player

Parameter Type Required Description
player_key string yes Player key returned from play_level_sequence_runtime
time number yes Playback time in seconds, must be >= 0

Returns: { player_key: string, requested_time: number, actual_time: number, frame_rate: number }

set_marked_frames_locked

Destructive, idempotent.

Sets whether a Level Sequence's user marked frames are locked.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
locked boolean yes Bool: whether marked frames should be locked.

Returns: { sequence_name: string, marked_frames_locked: bool, saved: bool, save_error?: string }

set_playback_range_locked

Destructive, idempotent.

Sets whether a Level Sequence's playback range is locked (UMovieScene::SetPlaybackRangeLocked). Overwrite-setter (naturally idempotent); the locked flag is read back via IsPlaybackRangeLocked().

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
locked boolean yes Bool: whether the playback range should be locked.

Returns: { sequence_name: string, locked: bool, saved: bool, save_error?: string }

set_property_track_keyframe_count

Destructive, idempotent.

Resize a property track's first section to exactly N keys evenly spaced from the section start, all carrying the same default value.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding.
property_type string yes One of "Float", "Bool", "Vector", "Color", "Visibility".
key_count number yes Target number of keys (>= 0). 0 clears all keys; 1 seeds at section start; >=2 evenly distributes.
default_value number no Value to use for every resampled key (default 0).

Returns: { sequence_name: string, binding_guid: string, property_type: string, key_count: int, default_value: float, keys_written: int, applied: bool, saved: bool, save_error?: string }

set_section_active

Destructive, idempotent.

Toggle whether a sequencer section is active (evaluated) or muted. Maps to UMovieSceneSection::SetIsActive; reports the actual is_active read back (SetIsActive is a no-op on a LOCKED section).

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
active boolean yes Desired active state (true = evaluated, false = muted).
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing).
track_index number no Index into the binding's tracks (0 = first track, default 0).
section_index number no Index of the section on the resolved track (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, is_active: bool, set: bool, saved: bool, save_error?: string }

set_section_blend_type

Destructive, idempotent.

Set the blend type on a sequencer section (absolute|additive|relative|additive_from_base|override).

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
blend_type string yes One of "absolute", "additive", "relative", "additive_from_base", "override".
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing).
track_index number no Index into the binding's tracks (0 = first track, default 0).
section_index number no Index of the section on the resolved track (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, blend_type: string, blend_type_valid: bool, set: bool, saved: bool, save_error?: string }

set_section_color

Destructive, idempotent.

Set the editor color tint of a sequencer section (UMovieSceneSection::SetColorTint). The tint is WITH_EDITORONLY_DATA (a no-op in cooked/no-editor-data builds); in the editor it persists on the asset.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing).
track_index number no Index into the binding's tracks (default 0).
section_index number no Index of the section on the resolved track (default 0).
r number no Red component 0-255 (int; default 0).
g number no Green component 0-255 (int; default 0).
b number no Blue component 0-255 (int; default 0).
a number no Alpha component 0-255 (int; default 255).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, color: { r: int, g: int, b: int, a: int }, set: bool, saved: bool, save_error?: string }

set_section_completion_mode

Destructive, idempotent.

Set how a sequencer section handles state when no longer evaluated (keep_state|restore_state|project_default).

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
completion_mode string yes One of "keep_state", "restore_state", "project_default".
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing).
track_index number no Index into the binding's tracks (0 = first track, default 0).
section_index number no Index of the section on the resolved track (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, completion_mode: string, set: bool, saved: bool, save_error?: string }

set_section_easing

Destructive, idempotent.

Set ease-in/ease-out durations (in frames) on a sequencer section.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter ("transform"|"float"|"bool"|"vector"|"color"|"visibility"|"audio"|"event"|"fade"|"skeletalanimation"|"subsequence"|"cameracut"|"property").
track_index number no Index into the binding's tracks (0 = first track, default 0; used when track_type is omitted).
section_index number no Index of the section on the resolved track (default 0).
use_manual boolean no bool, use Manual* ease durations instead of Auto* (default true).
ease_in_frames number no Ease-in duration in frames (omit to leave unchanged).
ease_out_frames number no Ease-out duration in frames (omit to leave unchanged).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, ease_in_frames: int, ease_out_frames: int, manual_ease_in: bool, manual_ease_out: bool, set: bool, saved: bool, save_error?: string }

set_section_locked

Destructive, idempotent.

Lock or unlock a sequencer section. Maps to UMovieSceneSection::SetIsLocked; a locked section cannot be modified by other edit ops, so lock LAST in an edit chain.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
locked boolean yes Desired locked state.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing).
track_index number no Index into the binding's tracks (0 = first track, default 0).
section_index number no Index of the section on the resolved track (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, is_locked: bool, set: bool, saved: bool, save_error?: string }

set_section_pre_post_rollout

Destructive, idempotent.

Set pre-roll and/or post-roll frames on a sequencer section. Pre-roll = frames the section evaluates BEFORE its visible range. Post-roll = frames the section evaluates AFTER its visible range. Both are stored as FFrameNumber on UMovieSceneSection. Pass at least one of pre_roll_frames or post_roll_frames (a non-None value). A 0 value means "no roll" (clears the roll window). The values are written via the inline SetPreRollFrames / SetPostRollFrames setters and read back through the section's public FFrameNumber fields.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
binding_guid string yes GUID string of the binding the section lives under.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter ("transform"|"audio"|"event"|"fade"|etc.). Default "transform".
track_index number no Index into the binding's tracks (0 = first track, default 0; used when track_type is omitted).
section_index number no Index of the section on the resolved track (default 0).
pre_roll_frames number no Optional pre-roll frames (omit to leave unchanged).
post_roll_frames number no Optional post-roll frames (omit to leave unchanged).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, pre_roll_frames: int, post_roll_frames: int, set: bool, saved: bool, save_error?: string }

set_section_range

Destructive, idempotent.

Sets the frame range of the FIRST section of one track on a Level Sequence binding (sequence found by asset name under /Game), in an undo transaction, and saves the sequence. track_index picks the track in the binding's track order; no other section can be targeted, and an unknown binding reads as zero tracks. Frames are tick-resolution frames, rounded; keys are not moved or rescaled. range_set is false when the stored range differs from the request. Read a section's range with get_section_info; for the whole sequence use set_sequence_playback_range.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence.
binding_guid string yes GUID of the binding.
start_frame number yes Inclusive start frame (tick resolution).
end_frame number yes Exclusive end frame (must be > start_frame).
track_index number no Index into the binding's tracks (0 = first track, default 0).

Returns: { sequence_name: string, binding_guid: string, track_index: int, track_class: string, requested_start_frame: int, requested_end_frame: int, applied_start_frame: int, applied_end_frame: int, range_set: bool, saved: bool, save_error?: string }

set_section_row_index

Destructive, idempotent.

Set the row index of a sequencer section (UMovieSceneSection::SetRowIndex). Only meaningful when the owning track supports multiple rows (reported as supports_multiple_rows); the owning track is also Modify()'d.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose section to edit.
row_index number yes Desired row index (int, >= 0).
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (see set_section_easing).
track_index number no Index into the binding's tracks (default 0).
section_index number no Index of the section on the resolved track (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, row_index: int, supports_multiple_rows: bool, set: bool, saved: bool, save_error?: string }

set_sequence_display_rate

Destructive, idempotent.

Set the display frame rate of a Level Sequence. The display rate is the asset-level "play rate" (frames per second of the timeline). Changing it rescales how existing frame numbers map to time. Backed by UMovieScene::SetDisplayRate(FFrameRate). Note: The numerator/denominator are integers (FFrameRate), so the fps argument is rounded to the nearest whole-number fps. For non-integer rates (e.g. 23.976) the caller should still pass the closest whole number; the engine does not support fractional FFrameRate numerators without a custom non-integer tick resolution.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
fps number yes New display rate in frames per second. Must be > 0.
sequence_name string no Alias for sequence_path.

Returns: { sequence_path: string, fps: float, numerator: int, denominator: int, verified: bool, saved: bool, save_error?: string }

set_sequence_duration

Destructive, idempotent.

Sets the playback range of a Level Sequence (found by asset name under /Game) to [0, duration) and marks the package dirty without saving; not undoable. Returns previous_duration, actual_duration, duration_set (within 0.01 s), and start_frame and end_frame in tick-resolution frames.

Parameter Type Required Description
sequence_name string yes Asset name of the Level Sequence, not its path (e.g. "LS_Intro"); the first match under /Game is used
duration number yes New length in seconds, greater than 0 and at most 3600 (0 is refused)

Returns: { sequence_name: string, requested_duration: number, previous_duration: number, actual_duration: number, duration_set: bool, start_frame: int, end_frame: int }

set_sequence_frame_rate

Destructive, idempotent.

Change the frame rate of a Level Sequence: its tick resolution AND its display rate, as create_level_sequence sets them (one tick per frame). Every key, section and range is migrated to the new rate, so nothing moves in time. To change only the display rate, use set_sequence_display_rate.

Parameter Type Required Description
sequence_name string yes Name of the sequence to modify
frame_rate number yes New frame rate in fps, must be greater than 0; NTSC rates (23.976, 29.97, 59.94) become N*1000/1001

Returns: { sequence_name: string, frame_rate: number, numerator: int, denominator: int, previous_frame_rate: number, frame_rate_set: bool } -- read back from the movie scene

set_sequence_playback_range

Destructive, idempotent.

Sets the playback range of a Level Sequence found by asset name under /Game, in tick-resolution frames (start inclusive, end exclusive, rounded), in an undo transaction, and saves the sequence. Tracks, sections and keys are not moved or clipped, and the Sequencer's playback-range lock does not block it. range_set compares the stored range with the request. To set a length in seconds from 0 use set_sequence_duration; the editor-only timeline windows are set_sequence_view_range and set_sequence_working_range.

Parameter Type Required Description
sequence_name string yes Name of the target Level Sequence (found by AssetName under /Game).
start_frame number yes Inclusive lower bound of the playback range, in tick frames.
end_frame number yes Exclusive upper bound of the playback range (must be > start_frame).

Returns: { sequence_name: string, requested_start_frame: int, requested_end_frame: int, start_frame: int, end_frame: int, range_set: bool, saved: bool, save_error?: string }

set_sequence_view_range

Destructive, idempotent.

Sets the editor view range of a Level Sequence (path or bare asset name), in seconds: the visible window of the Sequencer timeline. Editor UI state only, it changes neither playback nor the playback range. The engine keeps it in a transient field, so it lasts for this editor session and is not saved (persisted is always false); a Sequencer showing the sequence follows it on its next tick. Undoable, and the package is not marked dirty. verified compares the stored range with the request. For the scrollable bounds use set_sequence_working_range; for what plays use set_sequence_playback_range.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
start_seconds number yes Start of the view range, in seconds.
end_seconds number yes End of the view range, in seconds. Must be > start_seconds.
sequence_name string no Alias for sequence_path.

Returns: { sequence_path: string, start_seconds: float, end_seconds: float, verified: bool, persisted: bool (always false: the field is transient) }

set_sequence_working_range

Destructive, idempotent.

Sets the working range of a Level Sequence (path or bare asset name): the scrollable bounds of the Sequencer timeline, in seconds. Editor UI state only, it changes neither playback nor evaluation. The engine keeps it in a transient field, so it lasts for this editor session and is not saved (persisted is always false): after a reload the working range is recomputed from the playback range. Undoable, and the package is not marked dirty. verified compares the stored range with the request. For the visible window use set_sequence_view_range; for what plays use set_sequence_playback_range.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
start_seconds number yes Start of the working range, in seconds.
end_seconds number yes End of the working range, in seconds. Must be > start_seconds.
sequence_name string no Alias for sequence_path.

Returns: { sequence_path: string, start_seconds: float, end_seconds: float, verified: bool, persisted: bool (always false: the field is transient) }

set_skeletal_animation_section_params

Destructive, idempotent.

Set the playback params on a skeletal-animation section (UMovieSceneSkeletalAnimationSection::Params). Writes the public FMovieSceneSkeletalAnimationParams fields directly.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose skeletal-animation section to edit.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (default resolves the skeletal-animation track; see set_section_easing).
track_index number no Index into the binding's tracks (default 0).
section_index number no Index of the section on the resolved track (default 0).
reverse boolean no bReverse (omit to leave unchanged).
slot_name string no SlotName (FName; omit to leave unchanged).
start_frame_offset number no StartFrameOffset in tick frames (omit to leave unchanged).
end_frame_offset number no EndFrameOffset in tick frames (omit to leave unchanged).
skip_anim_notifiers boolean no bSkipAnimNotifiers (omit to leave unchanged).
force_custom_mode boolean no bForceCustomMode (omit to leave unchanged).
play_rate number no Constant playback rate (double; must be non-zero -- ~0 is a FixedTime warp, not a play rate; omit to leave unchanged).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, reverse: bool, slot_name: string, start_frame_offset: int, end_frame_offset: int, skip_anim_notifiers: bool, force_custom_mode: bool, play_rate: double|null, set: bool, saved: bool, save_error?: string }

set_spawn_ownership

Destructive, idempotent.

Set the ESpawnOwnership lifetime policy of a spawnable custom binding.

Parameter Type Required Description
sequence_name string yes Name of the level sequence asset (or sequence_path).
sequence_path string yes Asset path of the level sequence (alias for sequence_name).
binding_guid string yes GUID of the spawnable binding (from add_spawnable_from_class / get_sequence_spawnables).
ownership string yes One of: InnerSequence | RootSequence | External.

Returns: { sequence_name: string, binding_guid: string, ownership: string, saved: bool, save_error?: string }

set_sub_section_parameters

Destructive, idempotent.

Set the playback parameters on a subsequence OR cinematic-shot section (both are UMovieSceneSubSection). Writes the public FMovieSceneSectionParameters fields directly; bCanLoop gates the loop offsets so it is applied first.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the OUTER Level Sequence that owns the sub/shot track.
sequence_name string no Alias for sequence_path.
track_type string no Optional master-track filter: "subsequence" (default) or "shot" (cinematic shot track).
section_index number no Index of the section on the resolved master track (default 0).
start_frame_offset number no StartFrameOffset in tick frames (omit to leave unchanged).
end_frame_offset number no EndFrameOffset in tick frames (omit to leave unchanged).
first_loop_start_frame_offset number no FirstLoopStartFrameOffset in tick frames; only meaningful when can_loop is true (omit to leave unchanged).
hierarchical_bias number no HierarchicalBias (int; default engine value 100; omit to leave unchanged).
can_loop boolean no bCanLoop; gates the loop offsets (omit to leave unchanged).
time_scale number no Constant playback time scale (double; must be non-zero -- ~0 is a FixedTime warp, not a play rate; omit to leave unchanged).

Returns: { sequence_path: string, section_class: string, section_index: int, start_frame_offset: int, end_frame_offset: int, first_loop_start_frame_offset: int, hierarchical_bias: int, can_loop: bool, time_scale: double|null, set: bool, saved: bool, save_error?: string }

set_timeline_time

Destructive, idempotent.

Set the playhead time of the open Sequencer editor on a target sequence

Parameter Type Required Description
sequence_name string yes Name of the target level sequence
time number yes Playback time in seconds, must be >= 0

Returns: { sequence_name: string, requested_time: number, actual_frame: int, time_set: bool }

set_transform_section_mask

Destructive, idempotent.

Set the evaluation channel mask on a 3D transform section (UMovieScene3DTransformSection::SetMask). The mask is a visibility/eval filter built from EMovieSceneTransformChannel; it nulls the channel proxy (intended rebuild) and does NOT delete existing keys.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose transform section to edit.
sequence_name string no Alias for sequence_path.
track_type string no Optional class filter (default resolves the transform track; see set_section_easing).
track_index number no Index into the binding's tracks (default 0).
section_index number no Index of the section on the resolved track (default 0).
channels any no Channels to ENABLE: a JSON array (e.g. ["TranslationX","Rotation"]) OR a comma-separated string. Tokens: TranslationX/Y/Z, Translation, RotationX/Y/Z (Roll/Pitch/Yaw), Rotation, ScaleX/Y/Z, Scale, Weight, AllTransform, All, None.
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, channels: string[], channel_mask: int, set: bool, saved: bool, note: string, save_error?: string }

set_transform_section_quaternion_interp

Destructive, idempotent.

Turns quaternion (slerp) rotation interpolation on or off for one 3D transform section of a Level Sequence binding, in an undo transaction, and saves the sequence; keys are kept. The section is section_index on the binding's first track of track_type, or on its track_index-th track when track_type is omitted or unrecognised; a section that is not a 3D transform section is an error. For the section's blend type use set_transform_track_interp_mode; to enable or disable channels use set_transform_section_mask.

Parameter Type Required Description
sequence_path string yes Full /Game path OR bare asset name of the target Level Sequence.
binding_guid string yes GUID of the binding whose transform section to edit.
use_quaternion boolean yes Desired quaternion-interpolation state.
sequence_name string no Alias for sequence_path.
track_type string no Optional track kind, e.g. "transform": picks the binding's first track of that kind. Omitted or unrecognised, track_index picks the track instead.
track_index number no Index into the binding's tracks (default 0).
section_index number no Index of the section on the resolved track (default 0).
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, section_index: int, use_quaternion_interpolation: bool, set: bool, saved: bool, save_error?: string }

set_transform_track_interp_mode

Destructive, idempotent.

Sets the blend type of one section on a Level Sequence binding (how it layers with other sections, e.g. additive adds a delta, override replaces), in an undo transaction, and saves the sequence. Despite the name it changes no key interpolation and accepts any track kind. The section is section_index on the binding's first track of track_type, else its track_index-th track; a blend type the track does not support is refused. set_section_blend_type does the same without that check; for slerp rotation use set_transform_section_quaternion_interp.

Parameter Type Required Description
sequence_path string yes Asset path of the Level Sequence.
binding_guid string yes GUID of the binding the section lives under.
interp_mode string yes Blend type string; one of absolute|additive|relative|additive_from_base|override. Also accepted under "blend_type".
sequence_name string no Alias for sequence_path.
track_type string no Optional track kind such as "transform", "float" or "audio": picks the binding's first track of that kind. Omitted or unrecognised, track_index picks the track instead.
track_index number no Index into the binding's tracks (0 = first track, default 0).
section_index number no Index of the section on the resolved track (default 0).
blend_type string no Alias for interp_mode (absolute|additive|relative|additive_from_base|override)
binding_name_or_guid string no Alias for binding_guid, read only when binding_guid is absent; it must also be a GUID string, a bound object's name is not resolved.

Returns: { sequence_path: string, interp_mode: string, blend_type: string, blend_type_valid: bool, applied: bool, saved: bool, save_error?: string }

stop_level_sequence_runtime

Destructive.

Stops the runtime ULevelSequencePlayer whose player_key play_level_sequence_runtime returned, forgets the key and destroys the ALevelSequenceActor hosting it, so the key is invalid afterwards. Returns player_key, stopped (true when a playing or paused player was stopped, read back after Stop) and playing as read just after Stop. A player that had already stopped (it reached its end, say) is still released: success with stopped false and a note. A player still playing or paused after Stop is an error, and the key and its actor are kept. Use pause_level_sequence_runtime to keep the player.

Parameter Type Required Description
player_key string yes Player key returned from play_level_sequence_runtime

Returns: { player_key: string, stopped: bool, playing: bool, note?: string }