π«[DEPR] Motion Model Settings (Advanced) ππ π β
Deprecated, and what it did
- mask_motion_scale
- AD_SETTINGS
The display name starts with π«[DEPR] for a reason: this is a deprecated node, superseded by a more granular successor (Motion Model Settings - Adv. Attn Strengths) that splits one of its inputs into finer pieces. It still works if you've inherited a workflow with it wired in, but there's no reason to start something new around it.
What it did
AnimateDiff's motion module isn't one monolithic blob - it's built from a positional-encoding component, attention layers, and everything else. This node exposes three multiplier knobs over those groups: pe_strength (positional encoding), attn_strength (attention layers as a whole), and other_strength (the rest). Dial one down and you're dampening that specific piece of the motion module's influence rather than the whole thing - useful if, say, the model's temporal attention is fighting your ControlNet too hard but you still want its positional sense of "this is frame 8 of 16" intact.
The five _pe_ integer inputs (motion_pe_stretch, cap_initial_pe_length, interpolate_pe_to_length, initial_pe_idx_offset, final_pe_idx_offset) are for a related but separate trick: motion modules are trained on a fixed frame count (16, for the original SD1.5 modules), and these let you stretch, cap, interpolate, or offset the positional-encoding index table so the module tolerates a different context length than it was trained on. This is the settings-node cousin of the "unlimited area hack" from the pack's early days - a more surgical version of the same idea.
mask_motion_scale (optional, a MASK) plus min_motion_scale/max_motion_scale let you spatially vary how much motion applies across the frame - full motion strength inside the mask, ranging down to min_motion_scale outside it (or vice versa depending on the mask), instead of one global multiplier.
Output is AD_SETTINGS, which plugs into the (also legacy) model-application chain - not into the current Gen2 "Apply AnimateDiff Model" node.
Why it's deprecated
Its replacement, Motion Model Settings (Adv. Attn Strengths), takes everything here and splits attn_strength into attn_q_strength, attn_k_strength, attn_v_strength, attn_out_weight_strength, and attn_out_bias_strength - finer control over the same idea. If you're reaching for this level of tuning at all, you almost certainly want that version instead; there's no reason to pick the coarser one for a new workflow.
How to install it
Comes with the pack, no separate install.
- ComfyUI Manager - search AnimateDiff Evolved by Kosinkadink, install, restart.
- Manual -
cd ComfyUI/custom_nodes && git clone https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved, restart. - You'll need at least one motion module in
ComfyUI/models/animatediff_modelsfor any of this to have something to act on.
Common issues & troubleshooting
Nothing visibly changes when you tweak the strengths. These are subtle dials by design - expect small shifts in motion character, not a night-and-day difference. If you want a bigger lever, the scale/effect multivals on the main model-application nodes are the blunter, more commonly-used tools; reach for this node specifically when you're chasing a fine-grained fix.
You're not sure whether to use this or the Adv. Attn Strengths version. Use the newer one. This node only exists in the article set because old workflows still reference it - pick the successor for anything new.
Frame-count stretching produces artifacts. The _pe_ offset/stretch fields are pushing the motion module outside its trained regime; some degradation at the edges of a stretched range is expected, not a bug to chase.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| pe_strength | FLOAT | 1.00000β10 | β |
| attn_strength | FLOAT | 1.00000β10 | β |
| other_strength | FLOAT | 1.00000β10 | β |
| motion_pe_stretch | INT | 0 | β |
| cap_initial_pe_length | INT | 0 | β |
| interpolate_pe_to_length | INT | 0 | β |
| initial_pe_idx_offset | INT | 0 | β |
| final_pe_idx_offset | INT | 0 | β |
| mask_motion_scaleopt | MASK | β | |
| min_motion_scaleopt | FLOAT | 1.000 | β |
| max_motion_scaleopt | FLOAT | 1.000 | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| AD_SETTINGS | AD_SETTINGS | β |