KSampler Breakout
The no-surprise upgrade path for legacy Wan 2.2 graphs
- plan
- model_high
- model_low
- model_high
- model_low
- steps
- high_end_step
- low_start_step
- steps_high
- steps_low
- shift
- plan
If your Wan 2.2 workflow is the classic two-KSampler-Advanced affair - high sampler handling steps 0 to split, low sampler handling split onward, return_with_leftover_noise wired just so - then KSampler Breakout is the least-disruptive way to get your sampling under the plan's control. It reads your plan, patches both expert models with the plan's shift, and hands you back exactly the numbers a native KSampler Advanced pair needs: steps, end_at_step for the high sampler, start_at_step for the low one.
What it exposes
Inputs: plan, model_high, model_low, and sampler (used to check that core KSampler can actually reproduce the plan's curve).
Outputs, wired into a standard two-sampler branch:
- model_high → High KSampler
model - model_low → Low KSampler
model - steps → both samplers'
steps - high_end_step → High KSampler
end_at_step - low_start_step → Low KSampler
start_at_step - steps_high / steps_low → the raw counts, if you want to display or reuse them
- shift → the plan's shift
- plan → pass-through
Use the pack's Scheduler Selector to drive all three scheduler inputs (plan + both KSamplers) from one place, and the Sampler Selector to drive the sampler inputs. Mismatched schedulers are the classic way this quietly stops matching.
The refusal is a feature
KSampler Breakout is strict, on purpose. Two things make it error out instead of silently approximating:
- Piecewise plans. If the plan's curve is a piecewise resample - which happens when your scheduler can't cross the Wan boundary at the anchor shift - KSampler Advanced can't reproduce it exactly, and the node says so and points you to Sigma Breakout. It never guesses.
- Samplers that change the sigma count. ComfyUI has a list of samplers that discard the penultimate sigma; if you select one, the node rejects it rather than let the planned curve drift.
That strictness is the whole value proposition. It guarantees that if the node runs, your two KSamplers are sampling the exact curve the plan validated. For parity testing against older Wan 2.2 workflows, the pack explicitly recommends this path whenever the plan reports curve_mode: exact - it lets ComfyUI's native KSampler Advanced own start_at_step, end_at_step, and return_with_leftover_noise, which is the closest match to the legacy two-branch setup.
Install and caveats
Pack-standard install - ComfyUI Manager (search Sampling Planner) or:
cd ComfyUI/custom_nodes
git clone https://github.com/boobkake22/ComfyUI-SamplingPlanner
then restart; the node lives under sampling / Sampling Planner / Wan 2.2. No dependencies or model files.
The trade-off to keep in mind: this path is only available when the plan is exactly representable. Run into the "use Sigma Breakout" error and it's not a bug - your scheduler genuinely can't express the planned handoff, and the custom-sampler path (Sigma Breakout → two SamplerCustomAdvanced stages) is the intended fallback. Which is to say: start here if you want the smallest change to a working graph, and keep Sigma Breakout in mind for when the curve gets fancy.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| plan | WAN22_SAMPLING_PLAN | — | |
| model_high | MODEL | Wan 2.2 high-noise expert model. | |
| model_low | MODEL | Wan 2.2 low-noise expert model. | |
| sampler | COMBO | euler | Used to confirm that core KSampler can reproduce the plan's exact sigma curve. |
Outputs (9)
| Name | Type | Description |
|---|---|---|
| model_high | MODEL | — |
| model_low | MODEL | — |
| steps | INT | — |
| high_end_step | INT | — |
| low_start_step | INT | — |
| steps_high | INT | — |
| steps_low | INT | — |
| shift | FLOAT | — |
| plan | WAN22_SAMPLING_PLAN | — |