π οΈ CR XY Product
Turn two text lists into every X-times-Y combination
- x_values
- y_values
- show_help
Most of Comfyroll's XY nodes expect you to drive them yourself - an incrementing loop counter feeding an index input, one run per grid cell. CR XY Product skips that entirely. Hand it two lists of raw text and it does the actual multiplication: every value in list X paired with every value in list Y, expanded out into two list outputs that ComfyUI's native list execution can run through in a single queue. That's the "Product" in the name - it's the cartesian product, not a zip. Five samplers times four CFG values gets you 20 paired entries, not 5.
Worth noting: in the pack's own node menu this one actually lives under List Utils, not the XY Grid category the rest of this family sits in - but functionally it's built for the exact same job, feeding an XY sweep.
How it works
text_x and text_y are plain multiline text boxes, one value per line, no typing beyond that. The node tiles and repeats those two lists internally so that when they come out the other side as x_values and y_values, every possible pairing of one X entry and one Y entry appears exactly once across the combined output. ComfyUI treats a list-type output as "run the downstream subgraph once per item" - so wiring these two outputs into your workflow queues up the whole sweep automatically, no manual loop node required.
The outputs are typed * - a wildcard - on purpose. This node doesn't know or care whether your "values" are sampler names, CFG numbers written as text, or LoRA filenames; it just hands the raw strings through and lets whatever you wire them into (a combo box, a float primitive, a text concat) decide what they mean.
The inputs and outputs that matter
text_x- your X-axis values, one per line.text_y- your Y-axis values, one per line.
Outputs: x_values and y_values - the expanded lists, cross-producted so every X pairs with every Y. show_help - the wiki-link string, ignore it.
How to install it
ComfyUI Manager - search "Comfyroll Studio," install, restart. Manual clone:
cd ComfyUI/custom_nodes
git clone https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes.git
then restart. No models, no unusual dependencies.
Common issues
The queue explodes. Because this hands ComfyUI real list outputs instead of stepping through one value at a time, a 20Γ20 pair of lists means 400 full executions get queued the moment you run it - there's no index/trigger gate here to throttle it like the rest of the family has. Start small before scaling a text list up.
You actually wanted paired values, not every combination. If you need list1[i] matched with list2[i] rather than the full cross join - say, a sampler and its matching recommended CFG moving together - this is the wrong node. That's what CR XY List is for; this one specifically multiplies, it doesn't zip.
Downstream node rejects the value. Since the outputs are wildcard-typed, ComfyUI won't catch a type mismatch for you at the graph level the way it would with a typed FLOAT or INT output - if you wire raw CFG text into something expecting a real float, you'll find out at execution time instead of load time.
Comfyroll doesn't load at all. The real-world failure people report is Comfyroll Studio: Failed to load ... nodes followed by a NameError on a missing class - a partial install, usually from an interrupted clone or an incomplete CivitAI zip, not a dependency conflict. Reinstall cleanly through Manager.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| text_x | STRING | β | |
| text_y | STRING | β |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| x_values | * | β |
| y_values | * | β |
| show_help | STRING | β |