Animation
Every Animation command in CodeFizz Editor Agent, with parameters and examples.
Every Animation command in CodeFizz Editor Agent, with parameters and examples.
45 commands. Each shows its parameters and an example, and has a copyable deep link, so you (or an AI agent) can jump straight to one.
create_anim_blueprintCreate an Animation Blueprint
Creates an Animation Blueprint bound to a Skeleton, through the engine's own AnimBlueprintFactory so the skeleton lands on the blueprint and on both generated classes. Without that the asset looks correct and fails to compile. Pass --template for a skeleton-agnostic template Animation Blueprint, in which case --skeleton is not needed. The new asset already has an AnimGraph, so add_anim_state_machine works immediately.
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | Asset name |
| path | string | No | Content folder |
| skeleton | string | No | Skeleton asset path (required unless --template) |
| parent_class | string | No | Parent class, must derive from AnimInstance |
| template | bool | No | Create a skeleton-agnostic template Animation Blueprint |
| preview_mesh | string | No | Skeletal Mesh to preview with |
cfa create_anim_blueprint --name ABP_Hero --path /Game/Characters/Hero --skeleton /Game/Characters/Hero/SK_Hero_Skeleton
cfa create_anim_blueprint --name ABP_Shared --path /Game/Animations --templateget_anim_blueprint_infoRead an Animation Blueprint's identity and graph tree
Returns the target skeleton, parent class, template flag, preview mesh, implemented interfaces and the full graph tree with a slash path and kind for every graph. Use depth=summary to skip the tree.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| depth | string | No | summary | full |
cfa get_anim_blueprint_info --blueprint-path /Game/Characters/Hero/ABP_Herolist_anim_graphsList every graph in an Animation Blueprint
Lists every graph with its slash path, kind (anim, state_machine, state, transition, conduit, blendspace, custom_transition) and node count. The path is what every other command takes to address that graph, including the blueprint graph commands: pass it as --function-name to add_blueprint_node, or as --graph to export_graph. Kind comes from the graph's class, never its name, so a state called "Transition" is still reported as a state.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| filter | string | No | Case-insensitive substring filter on the path |
| kind | string | No | anim | state_machine | state | transition | conduit | blendspace | custom_transition | other |
| max_results | int | No | Maximum graphs to return |
cfa list_anim_graphs --blueprint-path /Game/Characters/Hero/ABP_Hero
cfa list_anim_graphs --blueprint-path /Game/Characters/Hero/ABP_Hero --kind state --filter locomotionadd_anim_state_machineAdd a state machine to an anim graph
Places a state machine node and builds its nested graph and entry node, exactly as dropping one from the anim graph context menu does. Returns the graph path of the new state machine, which is what add_anim_state takes.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | No | Anim graph to place it in |
| name | string | No | Name for the state machine |
| pos_x | int | No | Node X position |
| pos_y | int | No | Node Y position |
cfa add_anim_state_machine --blueprint-path /Game/Characters/Hero/ABP_Hero --name Locomotion --pos-x -400add_anim_stateAdd a state, conduit or alias to a state machine
Adds a state and creates its bound anim graph, so its Output Animation Pose node exists straight away. Fill the state by pointing the blueprint graph commands at the returned graph_path. Conduits are pass-through junctions with a rule but no pose; aliases stand in for one or more other states so a single transition can serve all of them, and become a global alias when aliased_states is omitted.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | Yes | State machine graph path, e.g. AnimGraph/Locomotion |
| name | string | Yes | Name for the new state |
| kind | string | No | state | conduit | alias |
| aliased_states | string | No | Alias only: comma-separated state names. Omit for a global alias |
| entry | bool | No | Make this the entry state |
| pos_x | int | No | Node X position |
| pos_y | int | No | Node Y position |
cfa add_anim_state --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotion --name Idle --entry
cfa add_anim_state --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotion --name AnyLocomotion --kind alias --aliased-states "Idle,Run"add_anim_transitionConnect two states with a transition
Creates the transition node and wires it through the engine's own CreateConnections, which clears any stale link first. Pass --rule-variable to bind the rule to a bool variable on the Animation Blueprint in one step, the same wiring you get by dragging that variable into the rule graph; add --rule-inverted to route it through a NOT. For anything more involved, author the returned graph_path with the blueprint graph commands.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | Yes | State machine graph path |
| from | string | Yes | Source state name |
| to | string | Yes | Target state name |
| crossfade_duration | float | No | Blend time in seconds; engine default when omitted |
| bidirectional | bool | No | Also allow the reverse direction |
| rule_variable | string | No | Bool variable on the Animation Blueprint to drive the rule |
| rule_inverted | bool | No | Invert the bound rule variable through a NOT |
cfa add_anim_transition --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotion --from Idle --to Run --rule-variable bIsMoving --crossfade-duration 0.15
cfa add_anim_transition --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotion --from Run --to Idle --rule-variable bIsMoving --rule-invertedset_anim_entry_statePoint a state machine's entry at a state
Rewires the state machine's entry node to the named state, replacing whatever it pointed at. A state machine with no entry connection compiles but never plays anything.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | Yes | State machine graph path |
| state | string | Yes | State to enter first |
cfa set_anim_entry_state --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotion --state Idleget_anim_state_machineRead a state machine's states and transitions
Returns the entry state, every state, conduit and alias, and every transition with its blend settings and rule graph path. This is the verification counterpart to the add_anim_* commands: read it back and check the wiring is what you asked for, rather than trusting the success reply.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | Yes | State machine graph path |
| depth | string | No | summary | full |
cfa get_anim_state_machine --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotionremove_anim_stateRemove a state, conduit or alias
Removes the state along with every transition attached to it, and tears down its bound graph. Reports how many transitions went with it.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | Yes | State machine graph path |
| name | string | Yes | State, conduit or alias to remove |
cfa remove_anim_state --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotion --name Crouchremove_anim_transitionRemove the transition between two states
Removes the transition running from one state to another, leaving both states in place.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | Yes | State machine graph path |
| from | string | Yes | Source state name |
| to | string | Yes | Target state name |
cfa remove_anim_transition --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotion --from Idle --to Runset_anim_transition_propertySet a property on a transition
Sets any reflected property on the transition node: CrossfadeDuration, PriorityOrder, BlendMode, CustomBlendCurve, bDisabled, Bidirectional, bAutomaticRuleBasedOnSequencePlayerInState, AutomaticRuleTriggerTime, SyncGroupNameToRequireValidMarkersRule and so on. Some settings only exist from a given engine version (MinTimeBeforeReentry and bAllowInertializationForSelfTransitions from 5.7, bOnlyEvaluateWhenActive from 5.8); asking for one on an older engine names the version it arrived in rather than reporting a generic miss.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | Yes | State machine graph path |
| from | string | Yes | Source state name |
| to | string | Yes | Target state name |
| property | string | Yes | Property name on the transition node |
| value | string | Yes | New value in Unreal's import text form |
cfa set_anim_transition_property --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotion --from Idle --to Run --property PriorityOrder --value 2
cfa set_anim_transition_property --blueprint-path /Game/Characters/Hero/ABP_Hero --graph AnimGraph/Locomotion --from Idle --to Run --property BlendMode --value Cubicset_anim_node_pin_exposureExpose or hide an anim node property as a pin
Drives the PinOptions section of an anim node's details panel. ShowPinForProperties is a fixed-size array, so a generic property write cannot add entries to it; this is the supported route. Omit --property to list every property the node can toggle along with its current state. The node is reconstructed afterwards, because the pin only appears or disappears on reconstruction.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | Yes | Graph path holding the node |
| node_id | string | Yes | NodeGuid of the anim graph node |
| property | string | No | Property to toggle. Omit to list what can be toggled |
| show | bool | No | True exposes the pin, false hides it |
cfa set_anim_node_pin_exposure --blueprint-path /Game/Characters/Hero/ABP_Hero --graph "AnimGraph/Locomotion/Idle" --node-id CF7FF6BE --property PlayRatebind_anim_node_functionBind a function to an anim node event slot
Sets one of the node's function bindings: On State Entry, On State Exit, On Update, On Become Relevant, On Initial Update and so on. Omit --binding to list the slots the node offers with what is currently bound. Omit --function and a function is created from the slot's own prototype signature, marked thread safe when the prototype is, which is what the Create Binding button does. Slots are discovered by reflection, so a node class that gains one in a later engine shows up without a code change.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | Yes | Graph path holding the node |
| node_id | string | Yes | NodeGuid of the anim graph node |
| binding | string | No | Slot to set. Omit to list the slots |
| function | string | No | Existing function to bind. Omit to create one from the prototype |
| clear | bool | No | Clear the binding instead of setting it |
cfa bind_anim_node_function --blueprint-path /Game/Characters/Hero/ABP_Hero --graph "AnimGraph/Locomotion/Idle" --node-id 862C7992 --binding StateEntryFunctionadd_anim_layerAdd an animation layer to an Animation Blueprint
Creates an animation layer graph, the same as Add Animation Layer in the editor's My Blueprint panel. Fill it with the blueprint graph commands using the returned graph path.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| name | string | Yes | Name for the layer |
cfa add_anim_layer --blueprint-path /Game/Characters/Hero/ABP_Hero --name UpperBodyvalidate_anim_blueprintCheck an Animation Blueprint and return a verdict
Returns pass, pass_with_warnings or fail with the reasons. Checks the skeleton is set unless the asset is a template, that every state machine has states and an entry connection, that transitions have both endpoints, and that states feed their output pose. Compiles first by default and folds the compiler's own errors and warnings into the verdict.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| compile | bool | No | Compile before checking |
cfa validate_anim_blueprint --blueprint-path /Game/Characters/Hero/ABP_Herocreate_blend_spaceCreate a blend space or aim offset
Creates a 1D or 2D blend space, or an aim offset of either dimension, through the engine's own factory. An aim offset is not a blend space with a flag set: its class is what drives mesh-space rotation blending, so the kind is the whole decision and cannot be changed afterwards.
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | Asset name |
| path | string | No | Content folder |
| skeleton | string | Yes | Skeleton asset path |
| kind | string | No | blendspace_1d | blendspace_2d | aim_offset_1d | aim_offset_2d |
| preview_mesh | string | No | Skeletal Mesh to preview with |
cfa create_blend_space --name BS_Locomotion --path /Game/Characters/Hero --skeleton /Game/Characters/Hero/SK_Hero_Skeleton --kind blendspace_2d
cfa create_blend_space --name AO_Aim --path /Game/Characters/Hero --skeleton /Game/Characters/Hero/SK_Hero_Skeleton --kind aim_offset_2dset_blend_space_axisConfigure a blend space axis
Sets an axis label, range, grid divisions, snapping and input wrapping. Use wrap_input for angular axes such as Direction so -180 and 180 meet. The blend space is resampled afterwards, because changing the range moves every sample's grid position and without the rebuild the asset keeps blending against the old layout while the details panel looks right.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blend_space_path | string | Yes | Blend space path |
| axis | string | No | x | y |
| display_name | string | No | Axis label shown in the editor |
| min | float | No | Minimum axis value |
| max | float | No | Maximum axis value |
| grid_divisions | int | No | Grid divisions, at least 1 |
| snap_to_grid | bool | No | Snap samples to the grid |
| wrap_input | bool | No | Wrap the input, for angular axes |
cfa set_blend_space_axis --blend-space-path /Game/Characters/Hero/BS_Locomotion --axis x --display-name Direction --min -180 --max 180 --grid-divisions 8 --wrap-input
cfa set_blend_space_axis --blend-space-path /Game/Characters/Hero/BS_Locomotion --axis y --display-name Speed --min 0 --max 600add_blend_space_samplePlace an animation in a blend space
Adds an Anim Sequence at a position. The position is checked against the engine's own rules first, so a point outside the axis range or too close to an existing sample comes back as an error naming the ranges rather than a silent no-op. Set the axes with set_blend_space_axis before adding samples, since the ranges decide what is accepted.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blend_space_path | string | Yes | Blend space path |
| animation | string | Yes | Anim Sequence path |
| x | float | No | Position on the X axis |
| y | float | No | Position on the Y axis, ignored by 1D |
| rate_scale | float | No | Play rate scale for this sample |
| mirror | bool | No | Play this sample mirrored |
cfa add_blend_space_sample --blend-space-path /Game/Characters/Hero/BS_Locomotion --animation /Game/Characters/Hero/Anims/Idle --x 0 --y 0remove_blend_space_sampleRemove a blend space sample
Removes the sample at an index, as reported by get_blend_space, and resamples the blend space.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blend_space_path | string | Yes | Blend space path |
| index | int | Yes | Sample index from get_blend_space |
cfa remove_blend_space_sample --blend-space-path /Game/Characters/Hero/BS_Locomotion --index 2get_blend_spaceRead a blend space
Returns the kind, skeleton, both axes and every sample with its position, rate scale and mirror flag. This is the verification counterpart to the add and set commands: read it back rather than trusting the success reply.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blend_space_path | string | Yes | Blend space path |
cfa get_blend_space --blend-space-path /Game/Characters/Hero/BS_Locomotioncreate_anim_montageCreate an Animation Montage
Creates a montage through the engine's own factory. Pass --animation and the montage starts with that sequence in its first slot, its length set and a starting section made, which is what the content browser's Create Montage does. Pass only --skeleton for an empty montage to fill with add_montage_slot and add_montage_segment.
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | Asset name |
| path | string | No | Content folder |
| animation | string | No | Source Anim Sequence; its skeleton is used when skeleton is omitted |
| skeleton | string | No | Skeleton path, required when no source animation is given |
| preview_mesh | string | No | Skeletal Mesh to preview with |
cfa create_anim_montage --name AM_Attack --path /Game/Characters/Hero --animation /Game/Characters/Hero/Anims/Attack01add_montage_slotAdd a slot track to a montage
Adds an animation slot track. The slot must already exist on the skeleton: the engine accepts an unknown slot name and the montage then never plays through it, so an unregistered name is refused here instead.
| Parameter | Type | Required | Description |
|---|---|---|---|
| montage_path | string | Yes | Montage path |
| slot | string | Yes | Slot name registered on the skeleton |
cfa add_montage_slot --montage-path /Game/Characters/Hero/AM_Attack --slot UpperBodyadd_montage_segmentAppend an animation to a montage slot
Appends an Anim Sequence to the end of a slot track and extends the montage to fit. The segment's timing is initialised from the sequence itself rather than filled in by hand, so its length and start position are what the montage editor would produce.
| Parameter | Type | Required | Description |
|---|---|---|---|
| montage_path | string | Yes | Montage path |
| animation | string | Yes | Anim Sequence path |
| slot | string | No | Slot to append into, defaults to the first |
| play_rate | float | No | Play rate for this segment |
cfa add_montage_segment --montage-path /Game/Characters/Hero/AM_Attack --animation /Game/Characters/Hero/Anims/Attack02 --slot DefaultSlotadd_montage_sectionAdd a named section to a montage
Adds a section at a time in seconds, optionally chaining to another section so they play in sequence. Sections are what Montage Jump To Section and Play Montage target by name. The start time is applied through the engine's linking API, because the section's own StartTime field is deprecated and writing it reports success while leaving the section at zero.
| Parameter | Type | Required | Description |
|---|---|---|---|
| montage_path | string | Yes | Montage path |
| name | string | Yes | Section name |
| start_time | float | No | Start time in seconds |
| next_section | string | No | Section to play after this one |
cfa add_montage_section --montage-path /Game/Characters/Hero/AM_Attack --name Combo2 --start-time 0.8 --next-section Combo3get_anim_montageRead a montage
Returns the skeleton, length, blend in and out times, every slot with its segments, and every section with its start time and chained next section.
| Parameter | Type | Required | Description |
|---|---|---|---|
| montage_path | string | Yes | Montage path |
cfa get_anim_montage --montage-path /Game/Characters/Hero/AM_Attackvalidate_anim_assetCheck a blend space or montage and return a verdict
Returns pass, pass_with_warnings or fail with the reasons. For blend spaces it checks there are samples, that each has an animation on the right skeleton, and that the axis ranges make sense. For montages it checks there are slots and sections, that the length is non-zero, that every slot is registered on the skeleton, and that no section chains to one that does not exist.
| Parameter | Type | Required | Description |
|---|---|---|---|
| asset_path | string | Yes | Blend space or montage path |
cfa validate_anim_asset --asset-path /Game/Characters/Hero/BS_Locomotioncreate_anim_layer_interfaceCreate an Animation Layer Interface
Creates an Animation Layer Interface and declares its layers, one graph per name. Implement it on an Animation Blueprint with implement_blueprint_interface, then drive the layers at runtime with Linked Anim Layer nodes. An interface is skeleton-agnostic by design, so it carries no target skeleton.
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | Asset name |
| path | string | No | Content folder |
| layers | string | No | Comma-separated layer names to declare |
cfa create_anim_layer_interface --name ALI_Locomotion --path /Game/Characters --layers "FullBody,UpperBody"build_anim_state_machineBuild a whole state machine in one call
Creates the state machine, every state with its animation already wired to the state's output pose, every transition with its rule, the entry connection, and the link into the anim graph's output. It is one undo step. The whole request is validated before anything is created, so a bad state or a rule variable that is not a bool fails the call without leaving a half-built machine behind. Pass --dry-run to see the plan first.
| Parameter | Type | Required | Description |
|---|---|---|---|
| blueprint_path | string | Yes | Animation Blueprint path |
| graph | string | No | Anim graph to place the state machine in |
| name | string | Yes | Name for the state machine |
| states | string | Yes | JSON array: name, kind (state|conduit|alias), animation, aliased_states, pos_x, pos_y |
| transitions | string | No | JSON array: from, to, rule_variable, rule_inverted, crossfade_duration, bidirectional |
| entry | string | No | State to enter first, defaults to the first listed |
| connect_to_output | bool | No | Wire the machine's pose into the anim graph output |
| dry_run | bool | No | Report the plan without changing anything |
cfa build_anim_state_machine --blueprint-path /Game/Characters/Hero/ABP_Hero --name Locomotion \
--states '[{"name":"Idle","animation":"/Game/Anims/Idle"},{"name":"Run","animation":"/Game/Anims/Run"},{"name":"Land","kind":"conduit"}]' \
--transitions '[{"from":"Idle","to":"Run","rule_variable":"bIsMoving","crossfade_duration":0.15},{"from":"Run","to":"Idle","rule_variable":"bIsMoving","rule_inverted":true}]'list_anim_notify_classesList placeable notify and notify-state classes
Lists every concrete AnimNotify and AnimNotifyState class, the engine's own alongside notify Blueprints in your project, discovered from the class hierarchy so nothing is hardcoded. Each entry reports whether it is a point notify or a notify state, which decides whether add_anim_notify needs a duration.
| Parameter | Type | Required | Description |
|---|---|---|---|
| kind | string | No | notify | notify_state | all |
| filter | string | No | Case-insensitive substring filter on the class name |
| max_results | int | No | Maximum classes to return |
cfa list_anim_notify_classes --kind notify --filter soundcreate_anim_notify_classCreate a notify or notify-state Blueprint
Creates a notify Blueprint and places its event nodes so it is ready to fill in: Received_Notify for a point notify, or Received_NotifyBegin, Received_NotifyTick and Received_NotifyEnd for a notify state. Set --notify-name for the label shown on the timeline and --color for its bar colour. Author the event bodies with the blueprint graph commands, then place it with add_anim_notify.
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | Asset name |
| path | string | No | Content folder |
| kind | string | No | notify (a point event) | notify_state (begin, tick, end) |
| parent_class | string | No | Parent class, defaults to AnimNotify or AnimNotifyState |
| notify_name | string | No | Label shown on the notify in the timeline |
| color | string | No | Timeline colour as R,G,B or R,G,B,A in 0-255 |
| add_events | bool | No | Place the event nodes in the graph |
cfa create_anim_notify_class --name ANS_Invulnerable --path /Game/Characters/Notifies --kind notify_state --notify-name "Invulnerable" --color "255,80,0"
cfa create_anim_notify_class --name AN_Footstep --path /Game/Characters/Notifies --notify-name Footstepadd_anim_notify_trackAdd a notify track to an animation
Adds a named notify track to an Anim Sequence or Montage. Tracks are how notifies are grouped in the timeline, and every notify command addresses one by name.
| Parameter | Type | Required | Description |
|---|---|---|---|
| animation_path | string | Yes | Anim Sequence or Montage path |
| track | string | Yes | Track name |
| color | string | No | Track colour as R,G,B or R,G,B,A in 0-255 |
cfa add_anim_notify_track --animation-path /Game/Anims/Attack01 --track Combat --color "0,160,255"remove_anim_notify_trackRemove a notify track
Removes a notify track from an Anim Sequence or Montage.
| Parameter | Type | Required | Description |
|---|---|---|---|
| animation_path | string | Yes | Anim Sequence or Montage path |
| track | string | Yes | Track name |
cfa remove_anim_notify_track --animation-path /Game/Anims/Attack01 --track Combatadd_anim_notifyPlace a notify or notify state on an animation
Places a notify at a time on a track. A notify state also needs --duration, and one with no duration never fires its end event, so it is refused. The time (and, for a state, the time plus duration) has to fit inside the animation. Use --properties to set fields on the created notify object in the same call, such as a sound on AnimNotify_PlaySound.
| Parameter | Type | Required | Description |
|---|---|---|---|
| animation_path | string | Yes | Anim Sequence or Montage path |
| notify_class | string | Yes | Notify or notify-state class |
| time | float | No | Time in seconds |
| track | string | No | Notify track, defaults to the first |
| duration | float | No | Duration in seconds, required for a notify state |
| properties | string | No | JSON object of properties to set on the created notify |
cfa add_anim_notify --animation-path /Game/Anims/Attack01 --notify-class AnimNotify_PlaySound --time 0.25 --track Combat --properties '{"Sound":"/Game/Audio/Swing"}'
cfa add_anim_notify --animation-path /Game/Anims/Attack01 --notify-class /Game/Characters/Notifies/ANS_Invulnerable.ANS_Invulnerable_C --time 0.1 --duration 0.6remove_anim_notifyRemove a notify from an animation
Removes a notify by index from get_anim_notifies, or every notify matching a name. The animation's cached notify data is refreshed afterwards, without which the timeline keeps drawing what was removed.
| Parameter | Type | Required | Description |
|---|---|---|---|
| animation_path | string | Yes | Anim Sequence or Montage path |
| index | int | No | Notify index from get_anim_notifies |
| name | string | No | Remove every notify with this name instead |
cfa remove_anim_notify --animation-path /Game/Anims/Attack01 --index 2get_anim_notifiesRead the notifies on an animation
Returns every notify with its index, name, track, time, class and (for a notify state) duration, plus the animation's length and track list. This is the verification counterpart to add_anim_notify.
| Parameter | Type | Required | Description |
|---|---|---|---|
| animation_path | string | Yes | Anim Sequence or Montage path |
| track | string | No | Only notifies on this track |
| details | bool | No | Also return each notify's own settings that differ from its class default |
cfa get_anim_notifies --animation-path /Game/Anims/Attack01add_anim_sync_markerPlace a sync marker on an Anim Sequence
Adds a sync marker, which is how a blend space or state machine keeps two animations in step, such as matching footfalls between a walk and a run. Sync markers live on Anim Sequences only; a Montage accepts the call and stores nothing, so a Montage is refused.
| Parameter | Type | Required | Description |
|---|---|---|---|
| animation_path | string | Yes | Anim Sequence path |
| name | string | Yes | Marker name |
| time | float | No | Time in seconds |
| track | string | No | Notify track, defaults to the first |
cfa add_anim_sync_marker --animation-path /Game/Anims/Walk_Fwd --name LeftFootDown --time 0.15 --track Syncadd_anim_curveAdd a curve to an animation
Adds a float, vector or transform curve. A float curve drives material and morph target values, or anything reading a curve by name from the anim instance. A metadata curve carries a name with no keys, used purely as a tag.
| Parameter | Type | Required | Description |
|---|---|---|---|
| animation_path | string | Yes | Anim Sequence or Montage path |
| name | string | Yes | Curve name |
| curve_type | string | No | float | vector | transform |
| meta_data | bool | No | Create it as a metadata curve |
cfa add_anim_curve --animation-path /Game/Anims/Attack01 --name AttackWindowset_anim_curve_keySet a key on a float curve
Adds or replaces a key at a time on a float curve. The curve must already exist; add_anim_curve creates it. The time has to fall inside the animation.
| Parameter | Type | Required | Description |
|---|---|---|---|
| animation_path | string | Yes | Anim Sequence or Montage path |
| name | string | Yes | Float curve name |
| time | float | No | Time in seconds |
| value | float | No | Value at that time |
cfa set_anim_curve_key --animation-path /Game/Anims/Attack01 --name AttackWindow --time 0.3 --value 1.0get_anim_curvesRead an animation's curves and sync markers
Returns the float, vector and transform curve names on the animation, and for an Anim Sequence its sync markers with their times.
| Parameter | Type | Required | Description |
|---|---|---|---|
| animation_path | string | Yes | Anim Sequence or Montage path |
cfa get_anim_curves --animation-path /Game/Anims/Attack01get_anim_slotsRead a skeleton's animation slots and groups
Returns every slot group on the skeleton with the slots in it. Montage slot tracks must name a slot that exists here, or the montage never plays through it.
| Parameter | Type | Required | Description |
|---|---|---|---|
| skeleton_path | string | Yes | Skeleton path, or an animation whose skeleton to use |
cfa get_anim_slots --skeleton-path /Game/Characters/Hero/SK_Hero_Skeletonadd_anim_slotRegister an animation slot on a skeleton
Adds a slot and puts it in a group, which is what makes the name usable by montages and Slot nodes in an anim graph. The group must already exist; leave it empty for DefaultGroup.
| Parameter | Type | Required | Description |
|---|---|---|---|
| skeleton_path | string | Yes | Skeleton path, or an animation whose skeleton to use |
| slot | string | Yes | Slot name |
| group | string | No | Slot group, defaults to DefaultGroup |
cfa add_anim_slot --skeleton-path /Game/Characters/Hero/SK_Hero_Skeleton --slot UpperBody --group DefaultGroupremove_anim_slotRemove an animation slot from a skeleton
Removes the slot. Montages and Slot nodes still naming it stop playing through it, so check usage first.
| Parameter | Type | Required | Description |
|---|---|---|---|
| skeleton_path | string | Yes | Skeleton path, or an animation whose skeleton to use |
| slot | string | Yes | Slot name |
cfa remove_anim_slot --skeleton-path /Game/Characters/Hero/SK_Hero_Skeleton --slot UpperBodyrename_anim_slotRename an animation slot
Renames a slot on the skeleton, keeping it in its group.
| Parameter | Type | Required | Description |
|---|---|---|---|
| skeleton_path | string | Yes | Skeleton path, or an animation whose skeleton to use |
| slot | string | Yes | Existing slot name |
| new_name | string | Yes | New slot name |
cfa rename_anim_slot --skeleton-path /Game/Characters/Hero/SK_Hero_Skeleton --slot UpperBody --new-name TorsoOnlyadd_anim_slot_groupAdd a slot group to a skeleton
Adds a slot group. Groups decide how slots blend against each other, which is why additive slots live in their own group.
| Parameter | Type | Required | Description |
|---|---|---|---|
| skeleton_path | string | Yes | Skeleton path, or an animation whose skeleton to use |
| group | string | Yes | Slot group name |
cfa add_anim_slot_group --skeleton-path /Game/Characters/Hero/SK_Hero_Skeleton --group CombatGroupremove_anim_slot_groupRemove a slot group from a skeleton
Removes a slot group. DefaultGroup cannot be removed, since every slot needs a group to fall back to.
| Parameter | Type | Required | Description |
|---|---|---|---|
| skeleton_path | string | Yes | Skeleton path, or an animation whose skeleton to use |
| group | string | Yes | Slot group name |
cfa remove_anim_slot_group --skeleton-path /Game/Characters/Hero/SK_Hero_Skeleton --group CombatGroup