β° Scheduled Values
Scheduled Values
- scheduled_values
Scheduled Values is Mana Nodes' little keyframe editor. It gives you a chart you click on to place keyframes, then it interpolates the in-between values and outputs the whole curve - which you wire into a Font Properties number like font_size or rotation to animate it over your frames. If you've ever used a graph editor in After Effects, it's that idea, shrunk into a node.
Why you'd reach for it
Static text is fine. Text that scales up on each word, or drifts across the frame, or rotates in - that's what makes the Mana Nodes demos look good, and this node is where that motion is authored. It only produces numbers, so it drives numeric properties: size, horizontal/vertical offset, rotation. Color animation is a separate node (Preset Color Animations).
How it works
You get an interactive chart. You click to drop keyframes at specific frames and values, double-click a keyframe to type exact numbers, and hit Generate Values to fill in a smooth curve between them using whichever easing you picked. There's also a Delete Generated button to clear the interpolation and start over. It's a hands-on, visual node - you sketch the motion rather than typing a formula.
The inputs that matter
scheduled_values- the keyframe data itself, stored as a string (starts as[]). You don't usually edit this by hand; you build it by clicking the chart.frame_count- the x-axis range, i.e. how long the animation is. Always starts at 1.value_range- the y-axis range. Set it to 25 and the chart spans β25 to 25. You can zoom with the mousewheel, but it resets to this on change.easing_type- the interpolation curve:linear, plus the full family ofeaseInQuad/easeOutCubic/easeInOutQuintand so on, up toexponential. This is what "Generate Values" uses to connect your keyframes.animation_reset- when the animation restarts:word(reset each new word),line(each new line),never(run once, hold the last value),looped(repeat forever), orpingpong(forward then back). For caption work,wordis the usual pick.
The output is scheduled_values (an INT stream), which you connect to a Font Properties property that you've converted to an input - currently font_size, x_offset, y_offset, or rotation.
Installing it
Comes with the pack. ComfyUI Manager β search Mana Nodes β install β restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/ForeignGods/ComfyUI-Mana-Nodes.git
Install requirements and restart. No models needed - this is a UI widget plus some interpolation math.
Common issues
The single most common "it's not animating" cause: the target property on Font Properties is still a plain widget. You have to right-click Font Properties and convert font_size (or offset/rotation) to an input first - only then does the dot exist to wire this node into. No converted input, no animation.
Second, keyframes don't ride along with shared workflows. The author notes that Scheduled Values keyframes can't be imported from an example workflow yet - if you load someone's .json, the chart comes in empty and you have to place the keyframes yourself. Not a bug, just a limitation to plan around.
Third, mind which properties are actually animatable. The output only hooks to font_size, x_offset, y_offset, and rotation today; the author lists "make more Font Properties animatable" as a to-do, so don't expect to schedule, say, kerning or border width yet.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| frame_count | INT | 30 | β |
| value_range | INT | 15 | β |
| easing_type | COMBO | linear | 14 options: linear, easeInQuad, easeOutQuad, easeInOutQuad, easeInCubic, easeOutCubic, +8 |
| step_mode | COMBO | single | 2 options: single, auto |
| animation_reset | COMBO | word | 5 options: word, line, never, looped, pingpong |
| id | INT | 0 | β |
| scheduled_values | STRING | [] | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| scheduled_values | INT | β |