ClownRegionalConditioning2
Mask-based regional prompts, unlimited zones
- conditioning_masked
- conditioning_unmasked
- mask
- weights
- region_bleeds
- conditioning
Want a different prompt in different parts of the image - this character on the left, that background on the right - without the two bleeding into each other? That's regional conditioning, and ClownRegionalConditioning2 is RES4LYF's node for it. The pack's headline claim here is genuinely wild: unlimited zones, with more than ten used in a single image before. Most regional systems get fiddly past three or four; this one is built to scale.
The way it fits a workflow: you draw a mask (freely, or a rigid grid - both work), encode a prompt for the masked area and, if you want, a separate prompt for everything else, and this node combines them into one CONDITIONING that a sampler treats as region-aware. Chain several of these and each adds a zone. It supports the flow-matching families RES4LYF is built around - Flux, Chroma, SD3.5, HiDream, AuraFlow, plus SD1.5/SDXL and Wan - which is broader coverage than most regional tools, and it's the same machinery behind the pack's temporal (frame-by-frame) conditioning for video.
How it works
A mask defines "here"; your conditioning_masked is the prompt for inside it and conditioning_unmasked is the prompt for outside. The node writes the region info into the conditioning it outputs, and the sampler honors it during denoising. Stack multiple nodes for multiple regions.
The inputs and outputs that matter
conditioning(CONDITIONING) out - wire this into your sampler's positive input (or the next regional node in the chain).conditioning_masked(CONDITIONING) - the prompt for the masked area.conditioning_unmasked- the prompt for everywhere else. Both optional, so you can steer just the region and leave the rest alone.mask(MASK) - where the masked prompt applies.mask_type(defaultboolean) -booleangives hard-edged regions;gradientfeathers the boundary so zones blend. There are masked/unmasked variants of each for finer control.weight(default 1) - how strongly the region asserts itself.region_bleed(default 0) - deliberately let a region leak into its neighbors. A little bleed softens seams between zones; keep it at 0 for crisp separation.edge_width- widens the transition band at region borders.
How to install it
ComfyUI Manager: search RES4LYF, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/ClownsharkBatwing/RES4LYF
cd RES4LYF
pip install -r requirements.txt
then restart and hard-refresh (F5). No downloads.
Common issues & troubleshooting
Zones bleed into each other. Either raise weight on the region that's losing, or set region_bleed to 0 and use boolean (not gradient) masks for hard edges. Prompts that describe overlapping concepts fight harder, so keep each region's prompt distinct.
Hard, ugly seams between regions. The opposite problem - switch mask_type to a gradient variant, or add a touch of region_bleed and a few pixels of edge_width to feather the boundary.
Your model isn't in the supported list. Regional conditioning here is model-aware; if you're on a family it doesn't handle, the regions won't take. Stick to the supported set (Flux, Chroma, SD3.5, HiDream, AuraFlow, SD1.5, SDXL, Wan).
Prompts wired backwards. Easy mistake: conditioning_masked is inside the mask. If your left-side character shows up on the right, you've swapped masked and unmasked - or your mask is inverted, which invert_mask flips back.
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| weight | FLOAT | 1.00-10000–10000 | — |
| region_bleed | FLOAT | 0.00-10000–10000 | — |
| region_bleed_start_step | INT | 00–10000 | — |
| weight_scheduler | COMBO | constant | 12 options: constant, simple, sgm_uniform, karras, exponential, ddim_uniform, +6 |
| start_step | INT | 00–10000 | — |
| end_step | INT | -1-1–10000 | — |
| mask_type | COMBO | boolean | 6 options: gradient, gradient_masked, gradient_unmasked, boolean, boolean_masked, boolean_unmasked |
| edge_width | INT | 0-10000–10000 | — |
| invert_mask | BOOLEAN | false | — |
| conditioning_maskedopt | CONDITIONING | — | |
| conditioning_unmaskedopt | CONDITIONING | — | |
| maskopt | MASK | — | |
| weightsopt | SIGMAS | — | |
| region_bleedsopt | SIGMAS | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| conditioning | CONDITIONING | — |