Manual Combine Conds ππ π
Merging two positive/negative pairs in one step
- positive_A
- negative_A
- positive_B
- negative_B
- positive
- negative
Most people build AnimateDiff conditioning the way base ComfyUI trains you to: a positive CLIP Text Encode, a negative one, both wired straight into the KSampler. This pack also has a family of nodes that work on a single conditioning at a time - mask it, schedule it, attach a LoRA hook - which means you end up juggling positive and negative branches separately through that whole process. This node is for the simpler case: you've built two full positive+negative pairs somewhere in your graph, and you just want them combined into one pair, in one node, without splitting the merge into two separate steps.
What it does
Four required inputs - positive_A, negative_A, positive_B, negative_B - and two outputs, positive and negative. Under the hood this is the same idea as ComfyUI's native conditioning combine: concatenate the two conditioning lists rather than blend or average them, so both branches apply in full, side by side. What this node adds is doing it for a positive and negative branch together in one call, instead of running two separate combine nodes and keeping track of which output goes where.
If you're already working with the pack's single-conditioning family - Set Props on Cond, Set Unmasked Cond, and the like - those build one CONDITIONING at a time and have their own combine step (Manual Combine Cond, no "s"). This node is the paired sibling to that family: same idea, but built for people thinking in positive/negative pairs the whole way through rather than splitting each prompt into separate single-conditioning branches.
The inputs and outputs that matter
Required: positive_A, negative_A, positive_B, negative_B (all CONDITIONING) - the two pairs to merge.
Outputs: positive and negative - the combined pair, ready for your KSampler's conditioning inputs.
How to install it
ComfyUI Manager: search AnimateDiff Evolved, confirm the author is Kosinkadink, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved
then restart. This node is pure graph logic - no model download tied to it - though the AnimateDiff workflow it lives inside still needs a motion module downloaded (mm_sd_v15_v2 and friends, per the README's Model Setup section) before anything upstream of it produces real animation.
Common issues & troubleshooting
Combined two full-frame, unrestricted pairs and the result looks muddy or contradictory. That's expected - combining conditioning stacks it, it doesn't blend or average it. Two strong, competing full-frame prompts combined this way tend to fight each other in the output. This node is built to merge conditioning that's already been scoped somehow - by area, mask, or timestep, from elsewhere in the pack's conditioning tools - not to average two general prompts into one in-between result. If averaging is what you actually want, ComfyUI's stock Conditioning (Average) node is the right tool instead.
Wired in only one pair and left the other blank. All four inputs are required - if you only have one pair to work with, you don't need this node at all; just wire that pair directly into your sampler.
Mixing this up with the "single cond ops" combine node. If your graph is built around single CONDITIONING branches rather than full positive/negative pairs, you likely want Manual Combine Cond instead - same merging idea, but matched to that family's node shapes rather than this one's paired inputs.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| positive_A | CONDITIONING | β | |
| negative_A | CONDITIONING | β | |
| positive_B | CONDITIONING | β | |
| negative_B | CONDITIONING | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | β |
| negative | CONDITIONING | β |