Nodes/ComfyUI-MoonNodes/🎲 Quickstart (Advanced)
ComfyUI Node

🎲 Quickstart (Advanced)

The one-button seed farm that also does your resolution math

By m0rtus59Β·Created 3 months agoΒ·Updated about 23 hours agoΒ· 8
🎲 Quickstart (Advanced)
    • seed
    • width
    • height
    β—„value0β–Ί
    β—„aspect_ratio1:1β–Ί
    β—„megapixels1.00β–Ί
    β—„multiple8β–Ί

    If you test prompts the way most of us do, your workflow spends half its life on two chores: rolling a fresh seed and nudging the canvas size to the right ratio. MoonQuickstartAdvanced collapses both into a single button. It's the fancy sibling of the pack's plain MoonQuickstart - same idea, but where the basic node just rolls a seed and queues, this one picks your aspect ratio, computes a clean width and height for it, and queues the whole run with one click. No dependencies, no API keys, no models to download. Just a big green button that says go.

    What it actually does

    Under the hood it's three integers leaving one node: seed, width, and height. The seed is whatever random value it rolled (or the one you typed), and the width/height come from a small bit of math in the Python source:

    total_pixels = megapixels * 1024 * 1024
    scale = math.sqrt(total_pixels / (w_ratio * h_ratio))
    width = max(multiple, round(w_ratio * scale / multiple) * multiple)
    height = max(multiple, round(h_ratio * scale / multiple) * multiple)
    

    Two things worth knowing about that formula. First, "1 MP" here means 1024Γ—1024 pixels, not a round million - so 1 MP at 16:9 lands at 1368Γ—768, not 1920Γ—1080. Second, the multiple rounding is the whole point: it snaps both dimensions to a step of 8 by default, which is exactly what the latent space of SD 1.5 and SDXL wants, and what keeps Flux happy if you bump the dropdown to 16 or 64. No more getting burned by a 1026Γ—1026 latent that the VAE can't decode cleanly.

    The frontend part is where it earns the "Advanced" in the name. In the browser the native widgets get hidden and replaced by a custom panel: aspect-ratio buttons that literally re-shape a little preview rectangle, a megapixel slider, a multiple dropdown, and a seed box with a 🎲/πŸ”’ toggle for random vs. fixed. Hit Quickstart and it writes your seed through to the node, then queues the graph. The seed it shows you is the seed it uses - it rolls before it runs, so you dodge the classic control_after_generate trap where the number on screen is last run's, not next run's.

    The inputs that matter

    There are only four, and honestly you'll touch two of them:

    • aspect_ratio - the big pick. 1:1, 3:2, 4:3, 16:9, 21:9, plus their vertical rotations. Don't wander far from your model's trained ratios (SDXL's 1024Γ—1024 / 1152Γ—896 family, for instance) or you'll get the stretched-body lottery.
    • megapixels - how big a canvas, from 0.1 up to 16. The slider is capped at 4 for sanity; the number box goes higher.
    • multiple - the rounding step, default 8. Crank it when a model demands stricter alignment.
    • value - the seed. It's named "value" on purpose, so ComfyUI doesn't slap its own randomize widget on it.

    Wiring it up

    The outputs are seed, width, and height, all plain INTs - they're numbers, not a latent. Wire seed into your KSampler's seed input and the other two into an Empty Latent Image. If you've never converted a widget to an input before, right-click the widget on the KSampler (or Empty Latent) and pick Convert widget to input, then drop the wires on the sockets it creates. That's the standard trick from the node-plumbing playbook, and it's the only setup this node needs.

    Installing

    It ships as part of ComfyUI-MoonNodes, so you install the pack, not the node. Easiest route: ComfyUI Manager, search "ComfyUI-MoonNodes", install, restart. Manual way:

    cd ComfyUI/custom_nodes
    git clone https://github.com/m0rtus59/ComfyUI-MoonNodes.git
    cd ComfyUI-MoonNodes
    pip install -r requirements.txt
    

    Restart ComfyUI after. Note the requirements.txt only pins google-genai - that's for the pack's Gemini nodes, and this Quickstart node doesn't touch it. The whole pack is an AI-collaborative project, so treat it as functional but young; if a workflow misbehaves, a PR is genuinely welcome.

    Where people get tripped up

    The entire UI is a JavaScript extension (js/quickstart.js), so if the node renders as a bare four-widget box instead of the fancy panel, the frontend script didn't load - hard-refresh the browser, or reinstall the pack to be sure the js/ folder landed. And when you save a workflow, the hidden widget values are what persist, so the node survives a reload even though you never typed in those fields. For everything else, remember the golden rule of this hobby: change one variable at a time, lock the seed, compare. That's exactly the loop this node was built to make fast.

    CategoryMoonNodes

    Inputs (4)

    NameTypeDefaultDescription
    valueINT00–18446744073709550000β€”
    aspect_ratioCOMBO1:18 options: 1:1, 3:2, 4:3, 16:9, 21:9, 2:3, +2
    megapixelsFLOAT1.000.1–16β€”
    multipleINT88–128β€”

    Outputs (3)

    NameTypeDescription
    seedINTβ€”
    widthINTβ€”
    heightINTβ€”