Docs Developer
SeqMod
Watches a sequence of parameters on any COMP: name the target and the sequence, and the block parameters are published as one list, with a callback for every block added or removed.
⌨ Developer ◆ Patreon:Base
This tool unlocks with Patreon. It installs through the same picker as everything else and unlocks with the Patreon Base tier or higher, connected from inside TouchDesigner. Everything else in the toolkit stays free and MIT, and the membership is what keeps that work moving.
What it is
Sequence parameters (the Items0name, Items1name, ... blocks TouchDesigner grows and shrinks) are awkward to drive from outside: the names change with the count, and nothing tells you when a block appears. SeqMod sits beside the COMP that owns the sequence, keeps the list of block parameters current, publishes them as Par Names and as a table on out1, and fires a callback for every block added or removed. Wire it to a replicator, a UI builder or your own script and the sequence becomes something you can react to.
Point COMP at the target, set Seq Name to the sequence's name, and the tool follows the count from there. References resolve from SeqMod itself: a bare name is a sibling of SeqMod, .. (the default) is the network SeqMod sits in, and something inside SeqMod needs ./name. The same rule applies to the Callbacks DAT.
It is a member of the FNS operator family: pick it from the FNS tab of the OP Create dialog and it lands as one node.
Callbacks
Create Callbacks makes a DAT with two hooks, called once per block:
OnAddBlock(seqBlock): a block was added;seqBlockis the new block.OnRemoveBlock(seqBlock_idx): a block was removed; the index it had.
Retargeting the tool to another COMP or sequence does not fire them. Errors raised inside a callback are reported on SeqMod itself.
Parameters
Custom
| Control | Type / default | What it does |
|---|---|---|
COMPComp |
operator.. | The COMP that owns the sequence, resolved like any OP parameter on SeqMod: a bare name ('geo1') is a sibling in the network SeqMod sits in, '..' is that network itself, and a child of SeqMod needs './name'. |
Seq NameSeqname |
textempty | Name of the parameter sequence on the target COMP: the part before the block index (Items for Items0name, Items1name, ...). Empty publishes nothing. |
ParNamesParnamesread-only |
textempty | Read-only. Every block parameter of the sequence as space-separated patterns (Itemsname Itemslevel), republished whenever blocks are added or removed. |
Callbacks
| Control | Type / default | What it does |
|---|---|---|
CallbacksCallbacks |
operatorempty | DAT holding OnAddBlock(seqBlock) and OnRemoveBlock(seqBlock_idx). A bare name is a sibling of SeqMod; a DAT inside it needs './name'. Defaults to the built-in no-op template; Create Callbacks makes an editable one. |
Create CallbacksCreatecallbacks |
button | Create an editable callbacks DAT from the template and point Callbacks at it. |