ComfyUI Node

RandomNSP _O

Instant wildcard flavour from the Noodle Soup pantry

By omar92·Created 3 years ago·Updated 5 months ago· 181
RandomNSP _O
    • STRING
    terminology
    seed0

    If you've ever used wildcards - the {a|b|c} trick where the graph randomly picks one option - you know the pattern: it's great for variety, but you have to build your own word lists. RandomNSP _O hands you a huge pre-built list for free. Pick a category from a dropdown of ~82 options and it returns a random term from it: an artist, a style, a subject, a location, a horror adjective, a fantasy creature, whatever category you chose. One node, one random term, wire it into your prompt.

    NSP stands for Noodle Soup Prompts, a community-maintained vocabulary list by WASasquatch (of WAS Node Suite fame) that's been used for years as a dynamic-prompt term source. The original is a JSON file of categorised terms, and this node pulls that same pantry in, keeps a local copy, and samples from it. It's the "instant wildcard deck" node of the Quality of Life Suit pack.

    How it works

    On first use the node downloads nsp_pantry.json from the noodle-soup-prompts repo (via raw.githubusercontent.com) and caches it inside the pack folder. From then on it reads the local copy - no network needed. When you queue, it seeds Python's random with your seed value and does a random.choice on the selected category, returning one term.

    The two inputs:

    • terminology - the dropdown of categories (82 of them, names like artist, style, subject, fantasy-creature, adj-horror, nationality, …). This is the only thing you'll actually change.
    • seed (INT) - controls which term you get. Same seed + same category = same term, which matters when you want reproducibility (the fixed-seed debugging rule applies here like everywhere else).

    One output: STRING, the randomly chosen term.

    Where it fits

    The classic move is putting it inline with a prompt builder: RandomNSP _OConcat Text _O → your positive prompt, so every queue gives you a slightly different subject or style term. The pack even ships ConcatRandomNSP_O for appending a random term to an existing string mid-route. It's also handy for batch variety work where Impact Pack-style __wildcard__ syntax already lives in your workflow - this is a lighter, one-node alternative for a single random term.

    Keep expectations realistic: the pantry's terms are mostly SD-1.5-era vocabulary, so on modern checkpoints some categories will feel stale. The seed control is your friend - when a term breaks your composition, you can hunt seeds for a better one instead of re-queueing blind.

    Installing it

    Part of the Quality of Life Suit pack (omar92/ComfyUI-QualityOfLifeSuit_Omar92). Install via ComfyUI Manager (search "Quality of Life Suit") or clone:

    cd <ComfyUI>/custom_nodes
    git clone https://github.com/omar92/ComfyUI-QualityOfLifeSuit_Omar92.git
    

    Restart ComfyUI properly. No model files. The pantry downloads itself on first use - first run needs internet, after that it's local.

    Common issues

    • "The dropdown is empty / node won't appear." The category list is built by fetching the pantry at startup. If that fetch failed (no internet, or GitHub blocked), the dropdown can come up empty. Check the console for a downloading NSP message and make sure the box has network access once.
    • "I got the same term every time." That's your seed being constant, not a bug. Change the seed for variety.
    • "The terms feel dated." The pantry hasn't kept pace with newer checkpoints. Filter categories to the ones that age well (styles, subjects, colours) and skip the pop-culture ones.
    • "I want more control." Impact Pack's wildcard files or a dedicated dynamic-prompt node give you your own lists; this node is the low-effort version.

    It's the one node in this pack that reliably sparks variety in otherwise samey outputs - and it costs you nothing but a dropdown pick.

    CategoryO/text/NSP

    Inputs (2)

    NameTypeDefaultDescription
    terminologyCOMBO82 options: fantasy-creature, gen-modifier, adj-beauty, noun-beauty, noun-fantasy, adj-horror, +76
    seedINT00–18446744073709550000

    Outputs (1)

    NameTypeDescription
    STRINGSTRING