Table of Contents

Conditional Availability

Conditional availability is used to dynamically enable or disable an option based on a script. It applies to material and accessory slots and to linear structures. If the available script evaluates to false, the option is hidden from add and replace menus in Planner.

An option can also become unavailable after it has already been added to the composition. In that situation, the runtime resolves the invalid content in this order:

  1. If ErrorMessageOnly is enabled, the option stays in place and Planner shows the validation message.
  2. Otherwise, if Replacement is configured, the runtime follows the replacement chain and uses the first allowed replacement.
  3. For linear structures only, if no allowed replacement is found and the invalid component is at either end, that end component can be removed.
  4. If the content still cannot be auto-healed, the invalid option stays in place and Planner shows the validation message.

ErrorMessageOnly takes precedence over Replacement. When the boolean flag is enabled, the replacement dropdown selection is ignored and no automatic replacement is attempted.

For MustBeConnected slots, configure the options so that at least one allowed option exists for every relevant state. If no allowed replacement exists, Planner now surfaces a validation error instead of silently choosing an arbitrary fallback.

PROPERTY_SET: ConditionalAvailability

Property Name Type Localized Description
Available Script true/false N A scripted condition which determines whether this option is currently available.
Replacement Option N Replacement option to try first if this option becomes unavailable after it has already been selected. Replacement chains are allowed; the first allowed replacement is used.
ValidationMessage Text field Y Localized planner validation message shown when unavailable content must remain in the composition.
ErrorMessageOnly Toggle N Prevents automatic replacement and shows ValidationMessage instead. This flag takes precedence over the Replacement selection.
Note

ValidationMessage above is shown only for content that is already placed in the composition and cannot be auto-healed. It is unrelated to LibraryCategoryStructure's per-item "Visible when not allowed" setting, which instead controls whether an option that is not yet placed — and currently unavailable for any reason, including but not limited to Available evaluating to false here — is still shown greyed-out in the Planner menu with its own separate, static message.