Get rid of error in clone master top

I have a clone master that contains an Out TOP. There is nothing connected to this top as I want to connect an input in the clones. Now the clone master has an ‘not enough sources specified’ error.
Is there a way to get rid of this annoying error while still making it possible to connect individual inputs to the TOP in the clones.

You can make the clone master also the first used clone, as in use it like the other clones and connect something to it’s input.

If you would use a Replicator COMP an often used trick is to disable cooking of the master COMP. (use the x icon). Then for each replicant, enable cooking like this in the replicator callbacks DAT:

def onReplicate(comp, allOps, newOps, template, master):
	for c in newOps:
		c.allowCooking=True
	return

With clones and replicators, I now avoid wiring stuff to its inputs and outputs directly because you have to manage too may cases (master) and too many wires when things are created and destroyed.

Instead I use Select OPs inside to fetch into the clone / replicant, and Select OPs on the outside to get from the clone / replicant.

I use parent().digits in a Select OP to form the name of the operator I want to fetch from:

op("../ramp" + str(parent().digits)) 

to get ramp1, ramp2… in the parent

Then if I name the master like thingmaster1 and my clones thing1, thing2…, they both get from the same place without erroring.

OR to make it more robust, to protect from inputs not being there,

op("../ramp" + str(parent().digits))  or  op('../standin")

where if the OP doesn’t exist, the first half returns None, and when that happens it will evaluate and return the second, a stand-in OP.

If you want to composite a bunch of clones or replicants, to avoid wires you can put in a Composite TOP the expression effect*/out1 which gets them all.

If it’s CHOP channels you want to get, you can put a similar expression in a CHOP and it will merge all the channels from the clone / replicant’s outputs.

I’ll make these as snippets.

1 Like

That or trick is pretty clever

Just my 2 cents: I try to not do relative refferences into the level above.
Instead making use of custom pars in the replicants. This highly increases readability without having to go deeper into the network.

Also, fStrings.