Nodes/Hellrunner's Magical Nodes/Mask-Map Prompt Mix (HMN)
ComfyUI Node

Mask-Map Prompt Mix (HMN)

The tiny settings box behind Hellrunner's Mask-Maps

By Hellrunner2k·Created 2 years ago·Updated about a year ago· 2
Mask-Map Prompt Mix (HMN)
    • MMPMix
    Base1.00
    Red1.00
    Green1.00
    Blue1.00
    OrderBase,Red,Green,Blue

    Mask-Map Prompt Mix is the least glamorous node in this pack and you'll probably still use it constantly once you're into Mask-Maps. It doesn't touch a single pixel. It's a settings container: you set four strengths and a prompt sequence, and it packages them into a little MMPMix value that you plug into the Mask-Map Prompt node, which does the actual text merging. Think of it as the control panel being built separately from the machine.

    The inputs that matter

    • Base, Red, Green, Blue - a strength (0 to 10, default 1.0) for each of the four Mask-Map regions. These become the weights applied to each region's prompt when Mask-Map Prompt merges them. Above 1.0 you're emphasizing that region's prompt, below 1.0 you're letting it fade into the background.
    • Order - a comma-separated sequence, default Base,Red,Green,Blue. This controls the order in which regions are added to the merged prompt. Because the Mask-Map regions layer on top of each other, order genuinely matters: later entries in the sequence build on earlier ones.

    How it works

    The encode function does almost nothing: it returns a dict of {Base, Red, Green, Blue, Order} as the single MMPMix output. All the real work happens downstream. Mask-Map Prompt has matching _MMPMix inputs for each of its prompt and negative fields, and it reads your strengths and order out of the package to decide how to weight and sequence the merged text. Two things ship in that package: the four weights and the ordering rule.

    That's also the gotcha. A container node with no wires does nothing. If you connect it to the wrong _MMPMix input - say, you feed the mix into Base_Prompt_MMPMix but you really wanted to weight the red region - you'll get perfectly logical but unexpected prompt merging. The naming is your map: Red_Prompt_MMPMix takes the mix for the red prompt, and so on.

    Wiring it up

    The typical Mask-Map setup in this pack looks like:

    MaskMapPromptMix ──MMPMix──► MaskMapPrompt (per-region _MMPMix inputs)
                                      │
    LoadMaskMap ──masks──► MojoMaker ─┤
                                      ▼
                                  KSampler
    

    Set the strengths you want on the mix node, and let Mask-Map Prompt turn them into weighted prompt text for your encoder. If you're new, leave everything at 1.0 and the default order, then start nudging.

    Installing it

    Same pack, same story: Hellrunner's Magical Nodes. Install once via ComfyUI Manager (search "Hellrunner's Magical Nodes") or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Hellrunner2k/ComfyUI-HellrunnersMagicalNodes.git
    

    Restart ComfyUI. No extra dependencies and no model files - this node is pure data packaging.

    Troubleshooting

    • Nothing changed in your output? Check that the MMPMix is actually wired into Mask-Map Prompt, and that Mask-Map Prompt's output is the text reaching your encoder, not a hardcoded prompt.
    • Weights doing nothing? Remember this node only sets strengths - if Mask-Map Prompt isn't seeing your mix (input left unconnected, defaults used), all regions silently stay at 1.0.
    CategoryHellrunner's/Mask-Maps

    Inputs (5)

    NameTypeDefaultDescription
    BaseoptFLOAT1.000–10Base Prompt strength
    RedoptFLOAT1.000–10Red Prompt strength
    GreenoptFLOAT1.000–10Green Prompt strength
    BlueoptFLOAT1.000–10Blue Prompt strength
    OrderoptSTRINGBase,Red,Green,BluePrompt Sequence. Comma separated sequence of outputs (Base,Red,Green,Blue)

    Outputs (1)

    NameTypeDescription
    MMPMixMMPMIXMask-Map Mix