Nodes/Comfyroll Studio/πŸ“œ CR Float Range List
ComfyUI Node Runs on cloud

πŸ“œ CR Float Range List

Sweep denoise/CFG values or build an animation curve

By Suzie1Β·Created 3 years agoΒ·Updated 2 years agoΒ· 1,287
πŸ“œ CR Float Range List
    • FLOAT
    • show_help
    β—„start0.00β–Ί
    β—„end1.00β–Ί
    β—„step1.00β–Ί
    β—„operationβ–Ύβ–Ί
    β—„decimal_places2β–Ί
    β—„ignore_first_valuetrueβ–Ί
    β—„max_values_per_loop128β–Ί
    β—„loops1β–Ί
    β—„ping_pongfalseβ–Ί

    The float cousin of CR Integer Range List, with a twist worth caring about. CR Float Range List generates a list of decimals - start, end, step - but it can also run each value through a trig function on the way out. That makes it two tools in one: a plain parameter sweeper for things like CFG, denoise, and LoRA weight, and a curve generator for animation schedules where you want smooth oscillation instead of a linear ramp.

    For the everyday case, it's simple: sweep denoise from 0.3 to 0.7 to find where your img2img holds detail, or walk CFG across a range to see where a checkpoint stops looking baked. Because the output is a list, ComfyUI runs the graph once per value automatically - you queue once and get the whole spread.

    How it works

    It builds the sequence from start to end by step, rounds each value to decimal_places, and optionally applies operation - sin, cos, or tan - to every value. That trig option is the interesting bit: a sine curve gives you a value that eases up and back down, which is what you want for a smooth animated parameter (think a weight that breathes in and out over frames) rather than a straight line. ping_pong walks the range up then back down; loops repeats the whole thing; max_values_per_loop caps how many values a single loop emits so a tiny step doesn't explode into thousands. ignore_first_value (on by default) drops the leading value, which is handy when your start point is a throwaway.

    The inputs and outputs that matter

    • start / end / step - the range and increment. Small steps = long lists.
    • operation (none / sin / cos / tan) - leave at none for a plain sweep; use sin/cos for animation curves.
    • decimal_places - rounding. 2 is plenty for most weights.
    • ping_pong (boolean) - bounce back down for oscillating sweeps.
    • loops and max_values_per_loop - repeat count and a safety cap on list length.
    • ignore_first_value (boolean) - skip the first value.

    Outputs:

    • FLOAT - the list of floats; wire into any float input (denoise, CFG, weight) and it fans out.
    • show_help - wiki link, ignore.

    How to install it

    Comfyroll Studio (Suzie1 and RockOfFire), a mature utility pack - no models, no heavy dependencies.

    • ComfyUI Manager - search Comfyroll Studio, install, restart.
    • Manual - cd ComfyUI/custom_nodes && git clone https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes.git, then restart.

    Also on CivitAI.

    Common issues

    Watch the list length. A step of 0.01 over a range of 0 to 10 is a thousand values, and every one triggers a full run - max_values_per_loop exists precisely to stop that, so lean on it. The other subtlety is the trig option: when operation is sin/cos/tan, the output values are the result of that function, not your raw range, so don't be surprised when a 0–1 range comes out as numbers between -1 and 1. That's the feature, not a glitch - just know it's happening.

    If the node's missing entirely, that's the pack-wide load failure: Comfyroll Studio: Failed to load ... and NameError: name 'CR_HalftoneGrid' is not defined. The NameError is a symptom of a real import error (usually an incompatible Pillow version from another node) that can down the whole pack. Reinstall Pillow (pip install --upgrade --force-reinstall pillow) and restart.

    Category🧩 Comfyroll Studio/✨ Essential/πŸ“œ List

    Inputs (9)

    NameTypeDefaultDescription
    startFLOAT0.00-99999.99–99999.99β€”
    endFLOAT1.00-99999.99–99999.99β€”
    stepFLOAT1.00-99999.99–99999.99β€”
    operationCOMBO4 options: none, sin, cos, tan
    decimal_placesINT20–10β€”
    ignore_first_valueBOOLEANtrueβ€”
    max_values_per_loopINT1281–99999β€”
    loopsINT11–999β€”
    ping_pongBOOLEANfalseβ€”

    Outputs (2)

    NameTypeDescription
    FLOATFLOATβ€”
    show_helpSTRINGβ€”