πΎ Mega Slider X3
Three dials, one master range β a slider bank without the busywork
- master
- value_1
- value_2
- value_3
Here's the moment this node is for: you've got a texture pass, a strength, and a denoise - three numbers that all want to live in the 0-to-1 range, and you're sick of dragging three separate widgets and praying they stay consistent. πΎ Mega Slider X3 is three universal sliders in one node, each with its own output, sharing one optional master range. It's the smallest of the "bank" variants (X6 and X12 are the same idea with more sliders) and it's the one that fits most real workflows without making you scroll.
What's on the node
Three required float sliders - slider_1, slider_2, slider_3 - each spanning β10000 to 10000 with a 0.01 step by default. One output_int boolean at the top: flip it and all three values come out as integers. One optional master input that applies a single min/max/step across all three.
Outputs: value_1, value_2, value_3, all FLOAT. Wire them anywhere a float goes - LoRA strengths, CFG, denoise, blend amounts, scale factors.
How the mechanism works
Same engine as every Mega Slider. With a master connected, each slider clamps into the master's range and snaps to its step (round(value / step) * step). Without a master, you get the raw value at the default range. The frontend watches the master's widgets and rescales all three sliders live, so moving max_value on the master redraws the bank in real time. Per-slider overrides live in right-click β Properties as slider_1_min / slider_1_max / slider_1_step, through slider_3_*, for when one dial genuinely needs its own range.
When three is the right number
Honestly, three is the sweet spot for most tuning tasks. A classic combo: LoRA strength, CFG, and denoise on a single row, all 0β1, all snapping at 0.01 - you can sweep them by hand in a couple of runs and keep them correlated. The X6/X12 siblings exist for people running parameter experiments or big batch sweeps; for day-to-day generation, three sliders sharing one master is usually all you'll actually adjust at once, and it keeps the graph readable.
Installing it
Ships in the MachinePainting Nodes pack. ComfyUI Manager β search "MachinePaintingNodes", or:
cd ComfyUI/custom_nodes
git clone https://github.com/machinepainting/ComfyUI-MachinePaintingNodes.git
Restart ComfyUI. Pack deps are opencv-python-headless, numpy<3, rembg - irrelevant to this node, which only shuffles floats.
Gotchas
- Master snapping applies to all three. If slider 3 wants a finer step than sliders 1β2, use its property override, not a second master.
- No master = β10000..10000. For a 0β1 dial, connect a master (Mega Slider Master Value with min 0, max 1) or set the property overrides, or you'll be fine-tuning over eleven thousand units of dead range.
output_intis bank-wide. It's all-or-nothing - if you need one integer and two floats, use separate X1 nodes.
Three outputs, three wires, one range to reason about. That's the deal, and it holds up.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| output_int | BOOLEAN | false | β |
| slider_1 | FLOAT | 0.00-10000β10000 | β |
| slider_2 | FLOAT | 0.00-10000β10000 | β |
| slider_3 | FLOAT | 0.00-10000β10000 | β |
| masteropt | MEGA_SLIDER_MASTER | β |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| value_1 | FLOAT | β |
| value_2 | FLOAT | β |
| value_3 | FLOAT | β |