Nodes/RES4LYF/Legacy2_ClownSamplerAdvanced
ComfyUI Node Runs on cloud

Legacy2_ClownSamplerAdvanced

The RES4LYF sampler with every knob exposed

By ClownsharkBatwing·Created 2 years ago·Updated 18 days ago· 1,222
Legacy2_ClownSamplerAdvanced
  • guides
  • options
  • automation
  • sampler
noise_type_sdegaussian
noise_type_sde_substepgaussian
noise_mode_sdehard
noise_mode_sde_substephard
eta0.50
eta_substep0.50
s_noise1.00
d_noise1.00
noise_seed_sde-1
sampler_nameres_2m
implicit_sampler_nameexplicit_diagonal
implicit_steps0
extra_options

This is the engine room of RES4LYF. Everything else in the pack - the guides, the options nodes, the automation - exists to plug into this one. It doesn't run the diffusion itself; it builds a SAMPLER object that you wire into ComfyUI's SamplerCustomAdvanced (or SamplerCustom). Think of it as "KSampler's sampler dropdown, but with 50-odd solvers that don't exist anywhere else, plus SDE noise, plus implicit refinement."

Worth being honest up front: this is the legacy variant, so its display name shows up as Legacy2_ClownSamplerAdvanced. It still works fine - the author kept the old nodes around under a Legacy prefix - but if you're building fresh, the newer ClownsharKSampler all-in-one is friendlier. You'd reach for this advanced node when you want the raw sampler as a separate block, usually because you're chaining samplers or feeding it guides.

Why you'd bother

RES4LYF is what replaced DPM++ 2M Karras for flow-matching models - Flux, Wan, Chroma, SD3.5, Z-Image and friends. On those architectures the stock scheduler list mostly fails rather than underperforms, and this pack shipped solvers built for the near-straight trajectories they train on. The payoff people actually report: comparable or better quality in fewer steps. As one longtime user put it, "res_2m is what I use most of the time, works on everything, and with most models you can use fewer steps than you might with other samplers."

The inputs that matter

Ignore most of the widgets on your first pass. The ones that move the needle:

  • sampler_name (default res_2m) - your solver. res_2m is the do-everything workhorse at Euler speed. The _2s/_3s family (res_2s, res_3s) runs substeps - two or three model calls per step, so two or three times slower - but noticeably sharper, especially with SDE noise on. Start with res_2m.
  • eta (default 0.5) - how much noise gets re-injected each step (this is what makes it an SDE sampler). 0.5 is a sane default; the author's own Wan recipe is "20-30 steps res_2m or res_2s, eta 0.5." Set it to 0 for pure ODE (deterministic) sampling.
  • noise_mode_sde (default hard) - how that eta noise is scaled. Leave it unless you're chasing artifacts.
  • implicit_steps (default 0) - extra implicit refinement passes. Each one multiplies runtime. Great on SD3.5 Medium for coherence; painful on Flux. Zero is fine to start.

Then the plumbing on the optional side: guides takes a GUIDES bundle (from ClownInpaint or a guide node) for composition/img2img-style steering; options takes the chained OPTIONS output from any ClownOptions_* nodes; automation takes per-step parameter curves; and extra_options is a freeform text box for advanced flags. The single output is sampler (SAMPLER) - that's the only thing you wire onward.

Installing RES4LYF

ComfyUI Manager is easiest: search RES4LYF, install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/ClownsharkBatwing/RES4LYF
pip install -r RES4LYF/requirements.txt

Portable users swap pip for the embedded one (python_embedded/Scripts/pip.exe). Restart Comfy, then hard-refresh the browser with F5, not just r. No model downloads - the pack is solvers and code, not weights. If you want the tidy nested sampler menus the author demos, install rgthree-comfy too and enable "Auto Nest Subdirectories" in its settings.

Where people get stuck

eta pushed past 1.0 does nothing dramatic. For most noise modes, anything at or above 1.0 triggers internal scaling to avoid NaN blowups. If you genuinely want more noise than that, the exp noise mode is the one that lets you go higher.

Shift seems to have no effect. If your scheduler is bong_tangent, that's why - it applies its own sigma shift and ignores the workflow's. Switch schedulers to confirm shift is working before blaming the sampler.

The res_3s/res_5s solvers crawl. That's expected - substep samplers cost multiple model calls per step. If you queued a slow explicit sampler with implicit steps stacked on top, you signed up for a very long render. Drop back to res_2m.

Porting an old workflow. If a screenshot you're copying used truncate_conditioning=true, add that line to the extra_options box to match the old behavior.

CategoryRES4LYF/legacy/samplers

Inputs (16)

NameTypeDefaultDescription
noise_type_sdeCOMBOgaussian22 options: none, brownian, gaussian, gaussian_backwards, laplacian, perlin, +16
noise_type_sde_substepCOMBOgaussian22 options: none, brownian, gaussian, gaussian_backwards, laplacian, perlin, +16
noise_mode_sdeCOMBOhardHow noise scales with the sigma schedule. Hard is the most aggressive, the others start strong and drop rapidly.
noise_mode_sde_substepCOMBOhardHow noise scales with the sigma schedule. Hard is the most aggressive, the others start strong and drop rapidly.
etaFLOAT0.50-100–100Calculated noise amount to be added, then removed, after each step.
eta_substepFLOAT0.50-100–100Calculated noise amount to be added, then removed, after each step.
s_noiseFLOAT1.00-10000–10000Adds extra SDE noise. Values around 1.03-1.07 can lead to a moderate boost in detail and paint textures.
d_noiseFLOAT1.00-10000–10000Downscales the sigma schedule. Values around 0.98-0.95 can lead to a large boost in detail and paint textures.
noise_seed_sdeINT-1-1–18446744073709550000
sampler_nameCOMBOres_2m53 options: none, res_2m, res_3m, res_2s, res_3s, res_3s_alt, +47
implicit_sampler_nameCOMBOexplicit_diagonal28 options: none, explicit_diagonal, explicit_full, irk_exp_diag_2s, gauss-legendre_2s, gauss-legendre_3s, +22
implicit_stepsINT00–10000
guidesoptGUIDES
optionsoptOPTIONS
automationoptAUTOMATION
extra_optionsoptSTRING

Outputs (1)

NameTypeDescription
samplerSAMPLER