Nodes/😸 YFG Comical Nodes/🐯 YFG Random.org True Random Number
ComfyUI Node

🐯 YFG Random.org True Random Number

True randomness from atmospheric noise β€” the version that keeps your key in the graph

By gonzaluΒ·Created 2 years agoΒ·Updated 8 days agoΒ· 29
🐯 YFG Random.org True Random Number
    • NUMBER
    • FLOAT
    • INT
    β—„api_key00000000-0000-0000-0000-000000000000β–Ί
    β—„minimum0.00β–Ί
    β—„maximum10.00β–Ί
    β—„modeβ–Ύβ–Ί

    ComfyUI's own random seed is a pseudorandom number generator - perfectly fine for a seed, but if you want true randomness, drawn from atmospheric noise, Random.org is the classic service for it. This node wraps Random.org's JSON-RPC API and hands you a real random integer between any min and max you choose. It's the original YFG implementation, and the honest headline is: use the V2 version instead unless you have a specific reason not to. This one's key lives in a widget, which has a downside I'll get to.

    This is the "Random.org True Random Number" node from gonzalu/ComfyUI_YFG_Comical, a fixed-up rework of the WAS node suite's original (the README notes the original wasn't functioning). One input in, three outputs out: NUMBER, FLOAT, and INT, all carrying the same value - the triple-format output exists so you can wire it into whatever node wants a seed, without converter nodes.

    Inputs

    • api_key - your Random.org API key (string). This is the weakness: it's a widget, so it gets saved into the workflow JSON and any image metadata. Treat it like a credential that'll end up in shared files. Random.org keys are free and rate-limited, which limits the blast radius, but still.
    • minimum / maximum - the inclusive bounds (floats, converted to ints).
    • mode - random calls the API; fixed returns the minimum deterministically so you can cache and reproduce. The node's IS_CHANGED hook keeps fixed from re-triggering.

    How it works and where it falls over

    It POSTs a generateIntegers request to https://api.random.org/json-rpc/2/invoke with your key, and returns the first generated integer. Critical gotcha: with a missing or default key (all zeros), it doesn't fall back to local randomness - it prints "A valid RANDOM.ORG API key is required." and returns 0. So the "random" number is 0 until you set up a real key. That's the classic way people hit a "why is my seed always 0?" wall. Also, Random.org enforces daily quotas on free keys - burn through them and the API starts returning errors (surfaced only in the console).

    Installing

    Pack install: ComfyUI Manager β†’ search "YFG Comical", or

    cd ComfyUI/custom_nodes
    git clone https://github.com/gonzalu/ComfyUI_YFG_Comical
    

    Restart ComfyUI. Then get a key at https://api.random.org/dashboard and paste it into the widget.

    Verdict

    The concept is solid - true-random seeds genuinely change the character of a workflow if you're doing lottery-style selection. But V2 of this same node does everything better: the key comes from an environment variable or a JSON file instead of a widget, and it adds dedup and shuffle-bag options. The only reason to pick V1 is if you're running a workflow someone built on it and don't want to rewire. Everything V1 does, V2 does without leaking your key into every saved file.

    Category🐯 YFG/πŸ”’ Numbers

    Inputs (4)

    NameTypeDefaultDescription
    api_keySTRING00000000-0000-0000-0000-000000000000β€”
    minimumFLOAT0.00-9223372036854776000–9223372036854776000β€”
    maximumFLOAT10.00-9223372036854776000–9223372036854776000β€”
    modeCOMBO2 options: random, fixed

    Outputs (3)

    NameTypeDescription
    NUMBERNUMBERβ€”
    FLOATFLOATβ€”
    INTINTβ€”