Nodes/comfuinoda-Navyblue/Advanced Lying Sigma Sampler
ComfyUI Node

Advanced Lying Sigma Sampler

This node lies to your model about noise — and your Flux output gets sharper

By tatookan·Created 2 years ago·Updated about a year ago· 179
Advanced Lying Sigma Sampler
  • sampler
  • SAMPLER
dishonesty_factor-0.100
start_percent0.10
end_percent0.90
smooth_factor0.50

Flux and the other flow-matching models have a known habit: the structure is great, but the last few percent of fine detail can come out flat. "Empty" is the word the community landed on, and CFG won't save you because you're usually running at 1 anyway. One family of fixes doesn't touch CFG at all - it quietly lies to the model about how noisy the current latent is. That lineage runs from muerrilla's Detail Daemon in A1111 through blepping's Lying Sigma Sampler in ComfyUI, and this node is a friendlier fork of the ComfyUI side: same trick, with a smoothing knob added on top.

What it actually does

An Advanced Lying Sigma Sampler wraps an existing SAMPLER object and hands you back a modified one. It doesn't reschedule your steps and it doesn't change the sampler algorithm - it wraps the model instead, so it works regardless of which sampler you picked or whether you're on SDXL, Flux, or SD3.5.

Inside, it converts your start_percent and end_percent into sigma values with the model's own percent_to_sigma, rounds them to four decimals, and for every step whose sigma falls inside that window it multiplies sigma by (1 + dishonesty_factor × 0.5 × (1 − cos(smooth_factor × π))). That's it. A smaller sigma tells the model "this latent is less noisy than it really is," so it removes less noise and leaves more detail behind. The default dishonesty_factor of −0.1 works out to roughly a 5% reduction - the same order as the famous "multiply sigmas by 0.95" Flux detail trick, but applied only in the middle of the pass instead of everywhere. Flip the sign positive and you get the opposite: the model removes more noise, which flattens an image instead of texturing it.

One honest note on the "smoothing": despite the name, smooth_factor isn't feathering the window edges - it's a global dampener. 0 means the node does nothing, 1 means full dishonesty_factor, 0.5 (the default) means half. Handy, just not edge-interpolation.

The inputs that matter

  • dishonesty_factor (−1 to 1, default −0.1): how hard the node lies. Negative adds detail, positive flattens. The tooltip calls −0.1 "a larger value" - this thing is sensitive, so nudge by 0.001, don't jump to −0.5 and wonder why everything is grain.
  • start_percent / end_percent (default 0.1 / 0.9): the window of the denoising pass to act on. 0 is the first step, 1 is the last, so the defaults cover the middle 80%. Narrow it if you only want structure changes (earlier) or micro-refinement (later).
  • smooth_factor (0–1, default 0.5): the intensity dampener above.

The single output is a SAMPLER, and that's the gotcha - it does not plug into a plain KSampler, which only accepts sampler names as text. Feed it into an advanced sampling node that takes a SAMPLER object, like SamplerCustomAdvanced, in place of the sampler you'd normally use. The node also detects whether the underlying sampler supports denoise_mask and passes it through, so it plays fine with masked img2img; the README demos both a straight text-to-image run (Flux GGUF, euler, beta, 20 steps) and a masked pass at 0.5 denoise.

Installing it

It's a single-node pack, so there's no choice to make:

cd ComfyUI/custom_nodes
git clone https://github.com/tatookan/comfuinoda-Navyblue

then restart ComfyUI. Or use ComfyUI Manager and search "comfuinoda-Navyblue". No requirements.txt, no model downloads - the whole node is one small pure-Python file on top of ComfyUI's existing sampler machinery.

Common issues

The README's one real precaution is not optional. ComfyUI rounds float widget values by default, which eats fine inputs like a 0.001-step dishonesty_factor and breaks the precision the sigma comparison relies on. The setting exists in the frontend as "Disable rounding floats (requires page reload)" - find it in Settings, flip it on, and restart. The README says the same thing, and it's worth doing before you blame the node.

Nothing happens: check your wiring first (SAMPLER output into an advanced sampler node, not a KSampler), then check whether your window actually covers your steps. At low denoise or very few steps, a 0.1–0.9 window can sit almost entirely outside the sigmas you're sampling.

Too much detail → noise: you're past the safe factor. Dial dishonesty_factor back toward zero; the gap between "crisp" and "grainy" is a few thousandths here.

Worth knowing before you build a workflow around it: this is a small personal pack from the Chinese Flux community (the author's handle is 深深蓝hana), with essentially zero English-language discussion. The math is simple and the source is short enough to read in a minute, so verify the defaults against your own images - but as a drop-in detail boost for flat Flux output, it does exactly what it says on the box.

Categorysampling/custom_sampling/advanced_samplers

Inputs (5)

NameTypeDefaultDescription
samplerSAMPLER
dishonesty_factorFLOAT-0.100-1–1默认值-0.1,一般来说这是一个较大值|Default value -0.1, which is generally a larger value.
start_percentFLOAT0.100–1bilibili@深深蓝hana.
end_percentFLOAT0.900–1bilibili@深深蓝hana.
smooth_factorFLOAT0.500–1bilibili@深深蓝hana.

Outputs (1)

NameTypeDescription
SAMPLERSAMPLER