Nodes/ComfyUI_agilly1989_motorway/ConditioningTimestepsRange_motorway_edition
ComfyUI Node

ConditioningTimestepsRange_motorway_edition

Carve sampling into before/during/after phases, inside the Motorway

By agilly1989·Created 2 years ago·Updated about a year ago· 7
ConditioningTimestepsRange_motorway_edition
  • MOTORWAY 🚌💨
  • MOTORWAY 🚌💨
start_percent0.000
end_percent1.000
OUTPUT_TIMESTEPS_RANGE_keyTIMESTEPS_RANGE
OUTPUT_BEFORE_RANGE_keyBEFORE_RANGE
OUTPUT_AFTER_RANGE_keyAFTER_RANGE

Don't let the name fool you - despite living under "conditioning" and being built from the core ConditioningTimestepsRange node, this thing doesn't transform a conditioning at all. It's a range generator for ComfyUI's hooks system. Give it a window of the sampling timeline and it hands you three range objects: the window itself, the bit before it, and the bit after. Those are what hook-based scheduling uses to apply different strengths during different phases of a sample.

Why you'd reach for it

Hook scheduling (the advanced/hooks family - CreateHookLora, CreateHookKeyframes*, and friends) is ComfyUI's native answer to "I want the LoRA at full strength for the composition phase, then nearly off for the detail phase". To express "this window", you need a TIMESTEPS_RANGE. That's exactly what this node produces, and unlike most of the core hook nodes it has no conditioning or model inputs at all - just the two sliders and three outputs. In a Motorway workflow you store the three ranges under keys, then feed those keys into hook consumers that read their window from the bus.

Inputs and outputs

  • MOTORWAY 🚌💨 - optional here, which means this node can act as a Motorway start if nothing is connected upstream. Good, because it's often near the head of a scheduling chain.
  • start_percent / end_percent - the window, 0.0–1.0, defaults 0 and 1. Step 0.001.
  • OUTPUT_TIMESTEPS_RANGE_key - stores the (start, end) range, default TIMESTEPS_RANGE.
  • OUTPUT_BEFORE_RANGE_key - stores (0, start), default BEFORE_RANGE.
  • OUTPUT_AFTER_RANGE_key - stores (end, 1), default AFTER_RANGE.

All three are TIMESTEPS_RANGE objects that live in the bus under your chosen keys. The only wire output is the Motorway. You pull the ranges back out with a Motorway AxB ramp node.

Install and reality check

Same story as every node in the pack:

cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway

Restart ComfyUI, or install via ComfyUI Manager ("ComfyUI_agilly1989_motorway"). No pip deps, no models.

The catch: hook nodes are marked EXPERIMENTAL in core ComfyUI, this pack is beta software whose README literally opens with a "BIG BROKEN WITH ASYNC WILL FIX" banner, and the _motorway_edition clone nodes were commented out of __init__.py in the version I checked - re-enable ClonedNodeMapping if the menu is missing them. Also remember keys are exact and case-sensitive: 'MotorwayClass' object has no attribute 'hash_' means a key you typed doesn't exist in the bus. If you're not already committed to the Motorway, the plain ConditioningTimestepsRange gives you the identical three ranges with none of the beta overhead.

Categoryagilly1989 Nodes/Motorway-ed/advanced/hooks

Inputs (6)

NameTypeDefaultDescription
start_percentFLOAT0.0000–1
end_percentFLOAT1.0000–1
OUTPUT_TIMESTEPS_RANGE_keySTRINGTIMESTEPS_RANGE
OUTPUT_BEFORE_RANGE_keySTRINGBEFORE_RANGE
OUTPUT_AFTER_RANGE_keySTRINGAFTER_RANGE
MOTORWAY 🚌💨optMOTORWAY 🚌💨

Outputs (1)

NameTypeDescription
MOTORWAY 🚌💨MOTORWAY 🚌💨