Unattended IK Creation with Multiple Genesis 9 Figures

Daz Studio 6 scripting: unattended IK creation with multiple Genesis 9 figures

I'm developing a scripted limb-contact tool for Genesis 9 in Daz Studio 6. The positioning implementation works, but I'm seeking guidance on unattended IK chain creation when multiple figures share the internal name Genesis9.

Within the running script, I can distinguish each figure and its base skeletal bones through actual object references. Existing IK chains are identified by their root and endpoint references, rather than names or labels.

The challenge occurs when creating a new chain:

  • A generated DUF merged through the native loader successfully creates an initialized DzIKNode and DzIKChain when the figure's internal name is unique. Its references use paths such as name://Genesis9/spine3: and name://Genesis9/l_hand:.

  • With duplicate internal names, those references do not reliably identify the intended figure.

  • Ordinary-null reference probes using id://<runtime elementID>: and id://<saved DSON instance ID>: both returned unresolved references. This establishes that those particular URI forms failed in testing.

  • Direct construction of DzIKNode and DzIKChain has not produced a reliably usable control. Some initialization attempts crashed Studio, including selection of an incompletely configured control.

A working alternative is to select the exact hand bone object and trigger DzNewIKChainAction. This creates the chain on the correct figure despite duplicate internal names. A timer verifies the resulting “Create New IK Chain” dialog and calls accept() automatically. The resulting parent, root, and endpoint references are then checked.

This works, but briefly displays the naming dialog which is not desirable in my use case.

Is there a supported or undocumented script interface that can:

  1. Create and initialize an IK control using actual figure, root, and endpoint references?

  2. Resolve a DUF reference to a specific existing figure instance without requiring a unique internal name?

  3. Invoke DzNewIKChainAction with defaults while suppressing its naming dialog?

I would prefer to preserve figure names and labels, avoid external UI automation, and continue using Studio's native IK implementation. A working script example or clarification of the required initialization sequence would be appreciated.

Sign In or Register to comment.