NiagaraToolsets.NiagaraToolset_System¶
Niagara Toolset for Niagara System operations.
Provides comprehensive access to Niagara System editing, including: - System, emitter, and module creation and modification - Schema discovery for understanding structure - Topology and Summary inspection for viewing current configuration - Data access for reading and writing properties - Dependency rollups via GetSystemDependencies - Dynamic-input chain traversal via GetDynamicInputChain
This is the primary toolset for working with Niagara Systems in the editor.
46 tool(s).
NiagaraToolsets.NiagaraToolset_System.AddEmitter¶
Adds an emitter to a Niagara System. The new emitter will be based on the template emitter, inheriting its configuration and modules. Returns the full emitter topology (no input values — call GetEmitterInputValues for values).
Input schema
{
"properties": {
"emitterName": {
"description": "Name for the new emitter instance",
"type": "string"
},
"system": {
"description": "The Niagara System to add the emitter to",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
},
"templateEmitter": {
"description": "The emitter asset to use as a template for the new emitter",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraEmitter",
"type": "object"
}
},
"required": [
"system",
"templateEmitter",
"emitterName"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Topology of the newly added emitter with all scripts and modules walked",
"properties": {
"bEnabled": {
"description": "Disabled emitters still exist but produce no particles.",
"type": "boolean"
},
"emitterName": {
"description": "Use as EmitterName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"emitterSpawnScript": {
"description": "Emitter Spawn stack: modules run once when the emitter is created.",
"properties": {
"modules": {
"description": "Modules in the stack, in execution order. Always populated.",
"items": {
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
},
"type": "array"
},
"scriptName": {
"description": "Which of the six script stacks this represents: SystemSpawnScript, SystemUpdateScript, EmitterSpawnScript, EmitterUpdateScript, ParticleSpawnScript, ParticleUpdateScript.",
"type": "string"
}
},
"required": [
"scriptName",
"modules"
],
"title": "NiagaraExt_ScriptStackTopology",
"type": "object"
},
"emitterUpdateScript": {
"description": "Emitter Update stack: modules run once per frame at emitter scope (spawn rates, bursts, lifecycle).",
"properties": {
"modules": {
"description": "Modules in the stack, in execution order. Always populated.",
"items": {
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
},
"type": "array"
},
"scriptName": {
"description": "Which of the six script stacks this represents: SystemSpawnScript, SystemUpdateScript, EmitterSpawnScript, EmitterUpdateScript, ParticleSpawnScript, ParticleUpdateScript.",
"type": "string"
}
},
"required": [
"scriptName",
"modules"
],
"title": "NiagaraExt_ScriptStackTopology",
"type": "object"
},
"particleSpawnScript": {
"description": "Particle Spawn stack: modules run once per newly-spawned particle.",
"properties": {
"modules": {
"description": "Modules in the stack, in execution order. Always populated.",
"items": {
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
},
"type": "array"
},
"scriptName": {
"description": "Which of the six script stacks this represents: SystemSpawnScript, SystemUpdateScript, EmitterSpawnScript, EmitterUpdateScript, ParticleSpawnScript, ParticleUpdateScript.",
"type": "string"
}
},
"required": [
"scriptName",
"modules"
],
"title": "NiagaraExt_ScriptStackTopology",
"type": "object"
},
"particleUpdateScript": {
"description": "Particle Update stack: modules run once per particle per frame (forces, velocity, colour-over-life).",
"properties": {
"modules": {
"description": "Modules in the stack, in execution order. Always populated.",
"items": {
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
},
"type": "array"
},
"scriptName": {
"description": "Which of the six script stacks this represents: SystemSpawnScript, SystemUpdateScript, EmitterSpawnScript, EmitterUpdateScript, ParticleSpawnScript, ParticleUpdateScript.",
"type": "string"
}
},
"required": [
"scriptName",
"modules"
],
"title": "NiagaraExt_ScriptStackTopology",
"type": "object"
},
"rendererClasses": {
"description": "Distinct renderer classes on this emitter (de-duplicated set).",
"items": {
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
},
"type": "array"
},
"renderers": {
"description": "Renderer references (class + index). For property values call GetRendererData.",
"items": {
"properties": {
"rendererClass": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
},
"rendererIndex": {
"description": "Index of this renderer within its owning emitter's renderer list. Pair with FNiagaraExt_StackItemReference::RendererIndex.",
"type": "integer"
}
},
"required": [
"rendererIndex",
"rendererClass"
],
"title": "NiagaraExt_RendererRef",
"type": "object"
},
"type": "array"
},
"simTarget": {
"description": "CPUSim or GPUComputeSim. Affects which Data Interfaces and features are available.",
"enum": [
"CPUSim",
"GPUComputeSim"
],
"title": "ENiagaraSimTarget",
"type": "string"
}
},
"required": [
"emitterName",
"bEnabled",
"simTarget",
"rendererClasses",
"emitterSpawnScript",
"emitterUpdateScript",
"particleSpawnScript",
"particleUpdateScript",
"renderers"
],
"title": "NiagaraExt_EmitterTopology",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.AddModule¶
Adds a module to a script stack. The module will be inserted into the specified script's execution stack. Returns the module topology with all inputs walked (no input values — call GetModuleInputValues for values).
Input schema
{
"properties": {
"moduleAsset": {
"description": "The module script asset to add to the stack",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
},
"moduleLocationRef": {
"description": "Reference specifying where to add the module",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"moduleLocationRef",
"moduleAsset"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Topology of the newly added module with all inputs populated",
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.AddRenderer¶
Adds a renderer to an emitter. Creates a new renderer of the specified type and adds it to the emitter's renderer list. Returns an FNiagaraExt_RendererRef with the new renderer's Index and RendererClass, usable directly with SetRendererData / GetRendererData without a follow-up topology call.
Input schema
{
"properties": {
"newRendererLocation": {
"description": "Reference specifying which emitter to add the renderer to",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
},
"rendererClass": {
"description": "The class of renderer to create (e.g., UNiagaraSpriteRendererProperties)",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
}
},
"required": [
"newRendererLocation",
"rendererClass"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Renderer reference (Index + RendererClass) for the newly added renderer.",
"properties": {
"rendererClass": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
},
"rendererIndex": {
"description": "Index of this renderer within its owning emitter's renderer list. Pair with FNiagaraExt_StackItemReference::RendererIndex.",
"type": "integer"
}
},
"required": [
"rendererIndex",
"rendererClass"
],
"title": "NiagaraExt_RendererRef",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.AddSetParameterEntry¶
Adds a single parameter to an existing SetParameters module. The module referenced by ModuleRef must be a SetParameters (UNiagaraNodeAssignment) module. Use bIsSetParametersModule in the module topology to confirm before calling.
Input schema
{
"properties": {
"entry": {
"description": "The parameter to add (variable name, type, and optional default value string)",
"properties": {
"defaultValue": {
"description": "Wrapper struct for FInstancedStruct that simplifies JSON conversion.\n\nRepresents an instanced value that can be one of multiple allowed struct types.\nThe allowed types are determined by BaseStruct metadata (auto-discovered derived types)\nand optional AdditionalTypes metadata (explicitly specified types).\n\nWhen working with this type, check the JSON schema's oneOf array to see all valid types.\nSpecialized types (derived from BaseStruct) are listed first, followed by additional types.",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 14 types defined by Struct. The first 3 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "Wrapper for UEnum references. Use this struct when passing enum values to Niagara variables.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Enum",
"type": "object"
},
{
"description": "Wrapper for DataInterface references. Use this struct when passing DataInterface instances to Niagara variables.",
"properties": {
"dataInterface": {
"description": "Reference to the DataInterface object",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraDataInterface",
"type": "object"
},
"dataInterfaceClass": {
"description": "The class of the DataInterface",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraDataInterface",
"type": "object"
}
},
"required": [
"dataInterfaceClass",
"dataInterface"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_DataInterface",
"type": "object"
},
{
"description": "Wrapper for UObject references. Use this struct when passing UObject instances (textures, materials, etc.) to Niagara variables.",
"properties": {
"object": {
"description": "Reference to the UObject instance",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
},
"objectClass": {
"description": "The class type constraint for the object reference",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"objectClass",
"object"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Object",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2D",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
},
"variable": {
"description": "The variable to assign (name + type).",
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
}
},
"required": [
"variable",
"defaultValue"
],
"title": "NiagaraExt_SetParameterEntry",
"type": "object"
},
"moduleRef": {
"description": "Reference to the existing SetParameters module",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"moduleRef",
"entry"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Updated topology of the module after the parameter is added",
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.AddSetParametersModule¶
Adds a SetParameters module to a script stack. Unlike AddModule which requires a script asset, a SetParameters module dynamically assigns values to named parameters and generates its own internal script. Use this when you need to set one or more particle/emitter/system parameters directly in the stack.
Input schema
{
"properties": {
"moduleLocationRef": {
"description": "Reference specifying where to add the module",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
},
"parameters": {
"description": "Array of parameter entries, each with a variable (name + type) and an optional default value string",
"items": {
"properties": {
"defaultValue": {
"description": "Wrapper struct for FInstancedStruct that simplifies JSON conversion.\n\nRepresents an instanced value that can be one of multiple allowed struct types.\nThe allowed types are determined by BaseStruct metadata (auto-discovered derived types)\nand optional AdditionalTypes metadata (explicitly specified types).\n\nWhen working with this type, check the JSON schema's oneOf array to see all valid types.\nSpecialized types (derived from BaseStruct) are listed first, followed by additional types.",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 14 types defined by Struct. The first 3 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "Wrapper for UEnum references. Use this struct when passing enum values to Niagara variables.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Enum",
"type": "object"
},
{
"description": "Wrapper for DataInterface references. Use this struct when passing DataInterface instances to Niagara variables.",
"properties": {
"dataInterface": {
"description": "Reference to the DataInterface object",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraDataInterface",
"type": "object"
},
"dataInterfaceClass": {
"description": "The class of the DataInterface",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraDataInterface",
"type": "object"
}
},
"required": [
"dataInterfaceClass",
"dataInterface"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_DataInterface",
"type": "object"
},
{
"description": "Wrapper for UObject references. Use this struct when passing UObject instances (textures, materials, etc.) to Niagara variables.",
"properties": {
"object": {
"description": "Reference to the UObject instance",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
},
"objectClass": {
"description": "The class type constraint for the object reference",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"objectClass",
"object"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Object",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2D",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
},
"variable": {
"description": "The variable to assign (name + type).",
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
}
},
"required": [
"variable",
"defaultValue"
],
"title": "NiagaraExt_SetParameterEntry",
"type": "object"
},
"type": "array"
}
},
"required": [
"moduleLocationRef",
"parameters"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Topology of the newly added module, including all its inputs",
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.AddUserVariables¶
Adds or updates user variables on a system. If a variable with the same name already exists, it will be replaced with the new definition.
Input schema
{
"properties": {
"system": {
"description": "The Niagara System to add variables to",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
},
"variablesToAdd": {
"description": "Array of user variables to add or update",
"items": {
"properties": {
"defaultValue": {
"description": "Wrapper struct for FInstancedStruct that simplifies JSON conversion.\n\nRepresents an instanced value that can be one of multiple allowed struct types.\nThe allowed types are determined by BaseStruct metadata (auto-discovered derived types)\nand optional AdditionalTypes metadata (explicitly specified types).\n\nWhen working with this type, check the JSON schema's oneOf array to see all valid types.\nSpecialized types (derived from BaseStruct) are listed first, followed by additional types.",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 14 types defined by Struct. The first 3 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "Wrapper for UEnum references. Use this struct when passing enum values to Niagara variables.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Enum",
"type": "object"
},
{
"description": "Wrapper for DataInterface references. Use this struct when passing DataInterface instances to Niagara variables.",
"properties": {
"dataInterface": {
"description": "Reference to the DataInterface object",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraDataInterface",
"type": "object"
},
"dataInterfaceClass": {
"description": "The class of the DataInterface",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraDataInterface",
"type": "object"
}
},
"required": [
"dataInterfaceClass",
"dataInterface"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_DataInterface",
"type": "object"
},
{
"description": "Wrapper for UObject references. Use this struct when passing UObject instances (textures, materials, etc.) to Niagara variables.",
"properties": {
"object": {
"description": "Reference to the UObject instance",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
},
"objectClass": {
"description": "The class type constraint for the object reference",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"objectClass",
"object"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Object",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2D",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
},
"description": {
"type": "string"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"defaultValue",
"description",
"name",
"type"
],
"title": "NiagaraExt_UserVariable",
"type": "object"
},
"type": "array"
}
},
"required": [
"system",
"variablesToAdd"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.ApplyStackIssueFix¶
Applies a Fix-style stack issue fix identified by IssueId and FixId. Link-style fixes are rejected. The fix is undoable via the editor undo stack. Applying a fix may trigger a recompile; the result waits for that compile to complete so post-fix state is valid.
Input schema
{
"properties": {
"fixId": {
"description": "FixId from a prior FNiagaraExt_StackIssueFix.",
"type": "string"
},
"issueId": {
"description": "IssueId from a prior FNiagaraExt_StackIssue.",
"type": "string"
},
"system": {
"description": "The Niagara System to apply the fix to.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"issueId",
"fixId"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Async result carrying the fix outcome and a post-fix stack-issues snapshot.",
"properties": {
"applyResult": {
"description": "Direct outcome of the fix application (bApplied + AppliedFixDescription).",
"properties": {
"appliedFixDescription": {
"description": "Human-readable description of the fix that ran, copied from FNiagaraExt_StackIssueFix::Description.\nEmpty when bApplied is false.",
"type": "string"
},
"bApplied": {
"description": "True if the fix delegate executed. False on any error path (system null, IssueId or FixId\nnot found, ambiguous match, Link-style fix, or unbound delegate). When false, inspect the\ntoolset context's error list for the specific reason.",
"type": "boolean"
}
},
"required": [
"bApplied",
"appliedFixDescription"
],
"title": "NiagaraExt_ApplyStackIssueFixResult",
"type": "object"
},
"postFixIssues": {
"description": "Stack-issue state observed after the fix's compile completed.",
"properties": {
"issues": {
"description": "All stack issues across the system (both dismissed and undismissed).",
"items": {
"properties": {
"bCanBeDismissed": {
"description": "True if the user is able to dismiss this issue in the UI.",
"type": "boolean"
},
"bIsDismissed": {
"description": "True if this issue has been dismissed by the user and is hidden in the UI.",
"type": "boolean"
},
"fixes": {
"description": "Available auto-fix actions for this issue. May be empty.",
"items": {
"properties": {
"description": {
"description": "Human-readable description of what this fix does.",
"type": "string"
},
"fixId": {
"description": "Unique identifier for this fix, used as the FixId parameter in ApplyStackIssueFix.",
"type": "string"
},
"style": {
"description": "Fix = can be applied programmatically via ApplyStackIssueFix. You should prefer acting on\n Fix-style entries yourself rather than surfacing them to a human.\nLink = navigation hint intended for a human user. Cannot be applied by tool calls —\n ApplyStackIssueFix will reject Link-style fixes.",
"enum": [
"Fix",
"Link"
],
"title": "ENiagaraExt_StackIssueFixStyle",
"type": "string"
}
},
"required": [
"fixId",
"description",
"style"
],
"title": "NiagaraExt_StackIssueFix",
"type": "object"
},
"type": "array"
},
"issueId": {
"description": "Unique identifier for this issue, used as the IssueId parameter in ApplyStackIssueFix.",
"type": "string"
},
"location": {
"description": "Structured reference to the emitter/script/module that owns this issue.\nEmitterName, ScriptName, and ModuleName may be NAME_None if the issue is above that level.",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
},
"longDescription": {
"description": "Detailed description of the issue with context.",
"type": "string"
},
"severity": {
"description": "Severity of this issue.",
"enum": [
"Error",
"Warning",
"Info",
"None"
],
"title": "ENiagaraExt_StackIssueSeverity",
"type": "string"
},
"shortDescription": {
"description": "Short description of the issue (e.g. \"Missing required input\").",
"type": "string"
},
"stackDisplayPath": {
"description": "Human-readable breadcrumb path from the stack root to the entry that owns this issue,\njoined with '/'. Example: \"FireEmitter/ParticleUpdate/AddVelocity\".",
"type": "string"
}
},
"required": [
"issueId",
"severity",
"shortDescription",
"longDescription",
"bCanBeDismissed",
"bIsDismissed",
"location",
"stackDisplayPath",
"fixes"
],
"title": "NiagaraExt_StackIssue",
"type": "object"
},
"type": "array"
},
"numErrors": {
"description": "Count of issues with Severity == Error.",
"type": "integer"
},
"numInfos": {
"description": "Count of issues with Severity == Info.",
"type": "integer"
},
"numWarnings": {
"description": "Count of issues with Severity == Warning.",
"type": "integer"
}
},
"required": [
"numErrors",
"numWarnings",
"numInfos",
"issues"
],
"title": "NiagaraExt_StackIssues",
"type": "object"
}
},
"required": [
"applyResult",
"postFixIssues"
],
"title": "NiagaraToolset_ApplyStackIssueFixResult",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.CreateNiagaraSystem¶
Creates a new Niagara System asset. The new system will be based on the template system, inheriting its configuration and emitters.
Input schema
{
"properties": {
"assetName": {
"description": "Name of the new asset (without path or extension)",
"type": "string"
},
"assetPath": {
"description": "Directory path where the new asset will be created",
"type": "string"
},
"templateSystem": {
"description": "Template system to base the new system on (required)",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"assetName",
"assetPath",
"templateSystem"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "The newly created Niagara System asset if successful, nullptr otherwise",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetAvailableDynamicInputs¶
Returns all available Dynamic Input Module assets compatible with the given type. Dynamic inputs provide procedural value generation for module parameters.
Input schema
{
"properties": {
"type": {
"description": "The Niagara type definition to find compatible dynamic inputs for",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"type"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Array of dynamic input script assets that can be used with the specified type",
"items": {
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
},
"type": "array"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetDataInterfaceSchema¶
Returns property schema for a specific Data Interface class. Describes all available properties and their types for the given data interface type.
Input schema
{
"properties": {
"dataInterfaceClass": {
"description": "The data interface class to get the schema for",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraDataInterface",
"type": "object"
}
},
"required": [
"dataInterfaceClass"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Schema describing all properties for the specified data interface class",
"properties": {
"dataInterfaceClass": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraDataInterface",
"type": "object"
},
"propertySchema": {
"description": "Json Schema describing editable properties of a the data interface class.",
"type": "string"
}
},
"required": [
"dataInterfaceClass",
"propertySchema"
],
"title": "NiagaraExt_DataInterfaceSchema",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetDynamicInputChain¶
Returns the full recursive chain for a dynamic input: topology metadata and resolved values at every level. The starting input must have value mode Dynamic; an error is surfaced otherwise. The schema expands one full level and emits a typed recursion stub at deeper levels; the wire format recurses to arbitrary depth matching the underlying chain.
Input schema
{
"properties": {
"stackInputRef": {
"description": "Reference to the dynamic input to traverse",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"stackInputRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Recursive chain of entries, each carrying topology metadata and a resolved Value payload",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 1 types defined by Struct.",
"oneOf": [
{
"description": "A single entry in a dynamic-input chain, carrying both topology metadata and the resolved value.\nNested child entries are accessible via Inputs (one per direct input of the dynamic input script).\n\nThe FInstancedStruct wrapper pattern (FNiagaraExt_DynamicInputChainRef declared before this struct)\navoids the UHT \"struct recursion via arrays\" restriction that blocks direct self-reference.\nThe schema generator detects the self-reference and emits a typed stub at the recursion boundary;\nthe wire format itself recurses to arbitrary depth.",
"properties": {
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter of the dynamic input script. Same semantics\nas FNiagaraExt_StackInputTopology::bIsStaticSwitch — changing it recompiles the chain level\nand reshapes which sibling inputs are visible/editable.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"inputs": {
"description": "Direct inputs of the dynamic input script at this level, each of which may itself be dynamic.",
"items": {
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 1 types defined by Struct.",
"oneOf": [
{
"description": "Recursive reference to NiagaraExt_DynamicInputChain — same shape repeats to arbitrary depth. Fields: Name, Type, bIsVisible, bIsEditable, bIsStaticSwitch, Value, Inputs.",
"title": "/Script/NiagaraEditor.NiagaraExt_DynamicInputChain",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
},
"type": "array"
},
"name": {
"description": "Input parameter name.",
"type": "string"
},
"type": {
"description": "Niagara type definition for this input.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
},
"value": {
"description": "Resolved value for this input.",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 17 types defined by Struct. The first 6 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "A special case of Local input that stores an Enum value as a string rather than it's raw int.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Enum",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Linked",
"properties": {
"linkedVariable": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
}
},
"required": [
"linkedVariable"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Linked",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Hlsl Expression",
"properties": {
"hlslExpression": {
"description": "A single rvalue hlsl expression defining the value of this input. MUST be a single rvalue with no variable definitions or return statements etc. For example a color could use the expression \"float4(1.0, 0.0, 0.0, 1.0)\"",
"type": "string"
}
},
"required": [
"hlslExpression"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_HlslExpression",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Data Interface",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for this data interface.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DataInterface",
"type": "object"
},
{
"description": "Stack input for a dynamic input.",
"properties": {
"dynamicInputAsset": {
"description": "The dynamic input asset defining this dynamic input.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"dynamicInputAsset"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DynamicInput",
"type": "object"
},
{
"description": "An unsupported input type",
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Unsupported",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector3f",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2f",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4f",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat4f",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
}
},
"required": [
"name",
"type",
"bIsVisible",
"bIsEditable",
"bIsStaticSwitch",
"value",
"inputs"
],
"title": "/Script/NiagaraEditor.NiagaraExt_DynamicInputChain",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetDynamicInputSchema¶
Returns schema for a dynamic input module in the stack. Describes the inputs and configuration for a procedural value generator.
Input schema
{
"properties": {
"dynamicInputReference": {
"description": "Reference to the dynamic input to get the schema for",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"dynamicInputReference"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Schema describing the dynamic input's parameters and their types",
"properties": {
"asset": {
"description": "The script asset this schema describes. Read-only — populated by GetModuleSchema variants.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
},
"inputs": {
"items": {
"properties": {
"bSupportsExpressions": {
"description": "True if this input can be set with a hlsl expression.",
"type": "boolean"
},
"category": {
"type": "string"
},
"metaData": {
"properties": {
"alternateAliases": {
"description": "List of alternate/previous names for this variable. Note that this is not normally needed if you rename through the UX. However, if you delete and then add a different variable, intending for it to match, you will likely want to add the prior name here.\n\nYou may need to restart and reload assets after making this change to have it take effect on already loaded assets.",
"items": {
"type": "string"
},
"type": "array"
},
"bAdvancedDisplay": {
"description": "Declares that this input is advanced and should only be visible if expanded inputs have been expanded.",
"type": "boolean"
},
"bDisplayInOverviewStack": {
"description": "Declares that this parameter's value will be shown in the overview node if it's set to a local value.",
"type": "boolean"
},
"bEnableBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"type": "boolean"
},
"bInlineEditConditionToggle": {
"description": "Declares the associated input is used as an inline edit condition toggle, so it should be hidden and edited as a\n checkbox inline with the input which was designated as its edit condition.",
"type": "boolean"
},
"bOverrideColor": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"type": "boolean"
},
"description": {
"type": "string"
},
"displayUnit": {
"description": "The unit to display next to input fields for this parameter - note that this is only a visual indicator and does not change any of the calculations.",
"enum": [
"Micrometers",
"Millimeters",
"Centimeters",
"Meters",
"Kilometers",
"Inches",
"Feet",
"Yards",
"Miles",
"Lightyears",
"Degrees",
"Radians",
"CentimetersPerSecond",
"MetersPerSecond",
"KilometersPerHour",
"MilesPerHour",
"DegreesPerSecond",
"RadiansPerSecond",
"CentimetersPerSecondSquared",
"MetersPerSecondSquared",
"Celsius",
"Farenheit",
"Kelvin",
"Micrograms",
"Milligrams",
"Grams",
"Kilograms",
"MetricTons",
"Ounces",
"Pounds",
"Stones",
"GramsPerCubicCentimeter",
"GramsPerCubicMeter",
"KilogramsPerCubicCentimeter",
"KilogramsPerCubicMeter",
"Newtons",
"PoundsForce",
"KilogramsForce",
"KilogramCentimetersPerSecondSquared",
"NewtonMeters",
"KilogramCentimetersSquaredPerSecondSquared",
"NewtonSeconds",
"KilogramCentimeters",
"KilogramMeters",
"Hertz",
"Kilohertz",
"Megahertz",
"Gigahertz",
"RevolutionsPerMinute",
"Bytes",
"Kilobytes",
"Megabytes",
"Gigabytes",
"Terabytes",
"Lumens",
"Candela",
"Lux",
"CandelaPerMeter2",
"ExposureValue",
"Nanoseconds",
"Microseconds",
"Milliseconds",
"Seconds",
"Minutes",
"Hours",
"Days",
"Months",
"Years",
"PixelsPerInch",
"Percentage",
"Multiplier",
"Pascals",
"KiloPascals",
"MegaPascals",
"GigaPascals",
"Unspecified"
],
"title": "EUnit",
"type": "string"
},
"editCondition": {
"description": "Declares the associated input should be conditionally editable based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"inlineParameterBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"properties": {
"displayMode": {
"description": "The mode used determines the cases in which a bool parameter is displayed.\nIf set to DisplayAlways, both True and False cases will display.\nIf set to DisplayIfTrue, it will only display if the bool evaluates to True.",
"enum": [
"DisplayAlways",
"DisplayIfTrue",
"DisplayIfFalse"
],
"title": "ENiagaraBoolDisplayMode",
"type": "string"
},
"iconOverrideFalse": {
"description": "If specified, this icon will be used for the given bool if it evaluates to False. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"iconOverrideTrue": {
"description": "If specified, this icon will be used for the given bool if it evaluates to True. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideNameFalse": {
"description": "If specified, this name will be used for the given bool if it evaluates to False.",
"type": "string"
},
"overrideNameTrue": {
"description": "If specified, this name will be used for the given bool if it evaluates to True.",
"type": "string"
}
},
"required": [
"displayMode",
"overrideNameTrue",
"overrideNameFalse",
"iconOverrideTrue",
"iconOverrideFalse"
],
"title": "NiagaraBoolParameterMetaData",
"type": "object"
},
"inlineParameterColorOverride": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"inlineParameterEnumOverrides": {
"description": "The index of the entry maps to the index of an enum value. Useful for overriding how an enum parameter is displayed in the overview.",
"items": {
"properties": {
"bUseColorOverride": {
"type": "boolean"
},
"colorOverride": {
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"iconOverride": {
"description": "If specified, this icon will be used for the given enum entry. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideName": {
"description": "If specified, this name will be used for the given enum entry. Useful for shortening names.",
"type": "string"
}
},
"required": [
"overrideName",
"iconOverride",
"bUseColorOverride",
"colorOverride"
],
"title": "NiagaraEnumParameterMetaData",
"type": "object"
},
"type": "array"
},
"inlineParameterSortPriority": {
"description": "Affects the sort order for parameters shown inline in the overview. Use a smaller number to push it to the top. Defaults to zero.",
"type": "integer"
},
"propertyMetaData": {
"additionalProperties": {
"type": "string"
},
"description": "Property Metadata",
"type": "object"
},
"variableGuid": {
"description": "A unique identifier for the variable that can be used by function call nodes to find renamed variables.",
"pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$",
"type": "string"
},
"visibleCondition": {
"description": "Declares the associated input should be conditionally visible based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"widgetCustomization": {
"description": "Changes how the input is displayed.",
"properties": {
"bBroadcastValueChangesOnCommitOnly": {
"description": "If set to true then values will not be updated while typing, only when committing the input field. This is useful for values that cause big downstream changes and computational overhead, like grid size or spawned particles.",
"type": "boolean"
},
"bHasMaxValue": {
"type": "boolean"
},
"bHasMinValue": {
"type": "boolean"
},
"bHasStepWidth": {
"type": "boolean"
},
"enumStyleDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
}
},
"required": [
"displayName",
"tooltip"
],
"title": "NiagaraWidgetNamedIntegerInputValue",
"type": "object"
},
"type": "array"
},
"inputDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
},
"value": {
"type": "number"
}
},
"required": [
"value",
"displayName",
"tooltip"
],
"title": "WidgetNamedInputValue",
"type": "object"
},
"type": "array"
},
"maxSegmentsPerRow": {
"description": "Limits the number of buttons shown per row, 0 = unlimited",
"type": "integer"
},
"maxValue": {
"description": "max ui value (float and int types only)",
"type": "number"
},
"minValue": {
"description": "min ui value (float and int types only)",
"type": "number"
},
"segmentValueOverrides": {
"items": {
"properties": {
"bOverrideDisplayName": {
"type": "boolean"
},
"displayIcon": {
"description": "If set, then this icon will be displayed on the button",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"displayNameOverride": {
"description": "This will be used as display name instead of the enum value",
"type": "string"
},
"enumIndexToOverride": {
"type": "integer"
}
},
"required": [
"enumIndexToOverride",
"bOverrideDisplayName",
"displayNameOverride",
"displayIcon"
],
"title": "WidgetSegmentValueOverride",
"type": "object"
},
"type": "array"
},
"stepWidth": {
"description": "Step width used by the input when dragging",
"type": "number"
},
"widgetType": {
"description": "Changes the widget implementation used for the input",
"enum": [
"Default",
"Slider",
"Volume",
"NumericDropdown",
"EnumStyle",
"SegmentedButtons"
],
"title": "ENiagaraInputWidgetType",
"type": "string"
}
},
"required": [
"widgetType",
"bHasMinValue",
"minValue",
"bHasMaxValue",
"maxValue",
"bHasStepWidth",
"stepWidth",
"inputDropdownValues",
"enumStyleDropdownValues",
"maxSegmentsPerRow",
"segmentValueOverrides",
"bBroadcastValueChangesOnCommitOnly"
],
"title": "NiagaraInputParameterCustomization",
"type": "object"
}
},
"required": [
"description",
"displayUnit",
"bAdvancedDisplay",
"bDisplayInOverviewStack",
"inlineParameterSortPriority",
"bOverrideColor",
"inlineParameterColorOverride",
"inlineParameterEnumOverrides",
"bEnableBoolOverride",
"inlineParameterBoolOverride",
"bInlineEditConditionToggle",
"editCondition",
"visibleCondition",
"propertyMetaData",
"alternateAliases",
"widgetCustomization",
"variableGuid"
],
"title": "NiagaraVariableMetaData",
"type": "object"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type",
"category",
"bSupportsExpressions",
"metaData"
],
"title": "NiagaraExt_StackInputSchema",
"type": "object"
},
"type": "array"
},
"outputs": {
"items": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
},
"type": "array"
}
},
"required": [
"asset",
"inputs",
"outputs"
],
"title": "NiagaraExt_DynamicInputSchema",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetDynamicInputSchemaFromAsset¶
Returns schema for a dynamic input asset. Standalone function that doesn't require a system context - useful for browsing available dynamic inputs.
Input schema
{
"properties": {
"dynamicInputAsset": {
"description": "The dynamic input script asset to get the schema for",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"dynamicInputAsset"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Schema describing the dynamic input's parameters and their types",
"properties": {
"asset": {
"description": "The script asset this schema describes. Read-only — populated by GetModuleSchema variants.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
},
"inputs": {
"items": {
"properties": {
"bSupportsExpressions": {
"description": "True if this input can be set with a hlsl expression.",
"type": "boolean"
},
"category": {
"type": "string"
},
"metaData": {
"properties": {
"alternateAliases": {
"description": "List of alternate/previous names for this variable. Note that this is not normally needed if you rename through the UX. However, if you delete and then add a different variable, intending for it to match, you will likely want to add the prior name here.\n\nYou may need to restart and reload assets after making this change to have it take effect on already loaded assets.",
"items": {
"type": "string"
},
"type": "array"
},
"bAdvancedDisplay": {
"description": "Declares that this input is advanced and should only be visible if expanded inputs have been expanded.",
"type": "boolean"
},
"bDisplayInOverviewStack": {
"description": "Declares that this parameter's value will be shown in the overview node if it's set to a local value.",
"type": "boolean"
},
"bEnableBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"type": "boolean"
},
"bInlineEditConditionToggle": {
"description": "Declares the associated input is used as an inline edit condition toggle, so it should be hidden and edited as a\n checkbox inline with the input which was designated as its edit condition.",
"type": "boolean"
},
"bOverrideColor": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"type": "boolean"
},
"description": {
"type": "string"
},
"displayUnit": {
"description": "The unit to display next to input fields for this parameter - note that this is only a visual indicator and does not change any of the calculations.",
"enum": [
"Micrometers",
"Millimeters",
"Centimeters",
"Meters",
"Kilometers",
"Inches",
"Feet",
"Yards",
"Miles",
"Lightyears",
"Degrees",
"Radians",
"CentimetersPerSecond",
"MetersPerSecond",
"KilometersPerHour",
"MilesPerHour",
"DegreesPerSecond",
"RadiansPerSecond",
"CentimetersPerSecondSquared",
"MetersPerSecondSquared",
"Celsius",
"Farenheit",
"Kelvin",
"Micrograms",
"Milligrams",
"Grams",
"Kilograms",
"MetricTons",
"Ounces",
"Pounds",
"Stones",
"GramsPerCubicCentimeter",
"GramsPerCubicMeter",
"KilogramsPerCubicCentimeter",
"KilogramsPerCubicMeter",
"Newtons",
"PoundsForce",
"KilogramsForce",
"KilogramCentimetersPerSecondSquared",
"NewtonMeters",
"KilogramCentimetersSquaredPerSecondSquared",
"NewtonSeconds",
"KilogramCentimeters",
"KilogramMeters",
"Hertz",
"Kilohertz",
"Megahertz",
"Gigahertz",
"RevolutionsPerMinute",
"Bytes",
"Kilobytes",
"Megabytes",
"Gigabytes",
"Terabytes",
"Lumens",
"Candela",
"Lux",
"CandelaPerMeter2",
"ExposureValue",
"Nanoseconds",
"Microseconds",
"Milliseconds",
"Seconds",
"Minutes",
"Hours",
"Days",
"Months",
"Years",
"PixelsPerInch",
"Percentage",
"Multiplier",
"Pascals",
"KiloPascals",
"MegaPascals",
"GigaPascals",
"Unspecified"
],
"title": "EUnit",
"type": "string"
},
"editCondition": {
"description": "Declares the associated input should be conditionally editable based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"inlineParameterBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"properties": {
"displayMode": {
"description": "The mode used determines the cases in which a bool parameter is displayed.\nIf set to DisplayAlways, both True and False cases will display.\nIf set to DisplayIfTrue, it will only display if the bool evaluates to True.",
"enum": [
"DisplayAlways",
"DisplayIfTrue",
"DisplayIfFalse"
],
"title": "ENiagaraBoolDisplayMode",
"type": "string"
},
"iconOverrideFalse": {
"description": "If specified, this icon will be used for the given bool if it evaluates to False. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"iconOverrideTrue": {
"description": "If specified, this icon will be used for the given bool if it evaluates to True. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideNameFalse": {
"description": "If specified, this name will be used for the given bool if it evaluates to False.",
"type": "string"
},
"overrideNameTrue": {
"description": "If specified, this name will be used for the given bool if it evaluates to True.",
"type": "string"
}
},
"required": [
"displayMode",
"overrideNameTrue",
"overrideNameFalse",
"iconOverrideTrue",
"iconOverrideFalse"
],
"title": "NiagaraBoolParameterMetaData",
"type": "object"
},
"inlineParameterColorOverride": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"inlineParameterEnumOverrides": {
"description": "The index of the entry maps to the index of an enum value. Useful for overriding how an enum parameter is displayed in the overview.",
"items": {
"properties": {
"bUseColorOverride": {
"type": "boolean"
},
"colorOverride": {
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"iconOverride": {
"description": "If specified, this icon will be used for the given enum entry. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideName": {
"description": "If specified, this name will be used for the given enum entry. Useful for shortening names.",
"type": "string"
}
},
"required": [
"overrideName",
"iconOverride",
"bUseColorOverride",
"colorOverride"
],
"title": "NiagaraEnumParameterMetaData",
"type": "object"
},
"type": "array"
},
"inlineParameterSortPriority": {
"description": "Affects the sort order for parameters shown inline in the overview. Use a smaller number to push it to the top. Defaults to zero.",
"type": "integer"
},
"propertyMetaData": {
"additionalProperties": {
"type": "string"
},
"description": "Property Metadata",
"type": "object"
},
"variableGuid": {
"description": "A unique identifier for the variable that can be used by function call nodes to find renamed variables.",
"pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$",
"type": "string"
},
"visibleCondition": {
"description": "Declares the associated input should be conditionally visible based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"widgetCustomization": {
"description": "Changes how the input is displayed.",
"properties": {
"bBroadcastValueChangesOnCommitOnly": {
"description": "If set to true then values will not be updated while typing, only when committing the input field. This is useful for values that cause big downstream changes and computational overhead, like grid size or spawned particles.",
"type": "boolean"
},
"bHasMaxValue": {
"type": "boolean"
},
"bHasMinValue": {
"type": "boolean"
},
"bHasStepWidth": {
"type": "boolean"
},
"enumStyleDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
}
},
"required": [
"displayName",
"tooltip"
],
"title": "NiagaraWidgetNamedIntegerInputValue",
"type": "object"
},
"type": "array"
},
"inputDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
},
"value": {
"type": "number"
}
},
"required": [
"value",
"displayName",
"tooltip"
],
"title": "WidgetNamedInputValue",
"type": "object"
},
"type": "array"
},
"maxSegmentsPerRow": {
"description": "Limits the number of buttons shown per row, 0 = unlimited",
"type": "integer"
},
"maxValue": {
"description": "max ui value (float and int types only)",
"type": "number"
},
"minValue": {
"description": "min ui value (float and int types only)",
"type": "number"
},
"segmentValueOverrides": {
"items": {
"properties": {
"bOverrideDisplayName": {
"type": "boolean"
},
"displayIcon": {
"description": "If set, then this icon will be displayed on the button",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"displayNameOverride": {
"description": "This will be used as display name instead of the enum value",
"type": "string"
},
"enumIndexToOverride": {
"type": "integer"
}
},
"required": [
"enumIndexToOverride",
"bOverrideDisplayName",
"displayNameOverride",
"displayIcon"
],
"title": "WidgetSegmentValueOverride",
"type": "object"
},
"type": "array"
},
"stepWidth": {
"description": "Step width used by the input when dragging",
"type": "number"
},
"widgetType": {
"description": "Changes the widget implementation used for the input",
"enum": [
"Default",
"Slider",
"Volume",
"NumericDropdown",
"EnumStyle",
"SegmentedButtons"
],
"title": "ENiagaraInputWidgetType",
"type": "string"
}
},
"required": [
"widgetType",
"bHasMinValue",
"minValue",
"bHasMaxValue",
"maxValue",
"bHasStepWidth",
"stepWidth",
"inputDropdownValues",
"enumStyleDropdownValues",
"maxSegmentsPerRow",
"segmentValueOverrides",
"bBroadcastValueChangesOnCommitOnly"
],
"title": "NiagaraInputParameterCustomization",
"type": "object"
}
},
"required": [
"description",
"displayUnit",
"bAdvancedDisplay",
"bDisplayInOverviewStack",
"inlineParameterSortPriority",
"bOverrideColor",
"inlineParameterColorOverride",
"inlineParameterEnumOverrides",
"bEnableBoolOverride",
"inlineParameterBoolOverride",
"bInlineEditConditionToggle",
"editCondition",
"visibleCondition",
"propertyMetaData",
"alternateAliases",
"widgetCustomization",
"variableGuid"
],
"title": "NiagaraVariableMetaData",
"type": "object"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type",
"category",
"bSupportsExpressions",
"metaData"
],
"title": "NiagaraExt_StackInputSchema",
"type": "object"
},
"type": "array"
},
"outputs": {
"items": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
},
"type": "array"
}
},
"required": [
"asset",
"inputs",
"outputs"
],
"title": "NiagaraExt_DynamicInputSchema",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetEmitterData¶
Returns emitter property values as a single JSON-string blob in PropertyValues. The blob contains the full FVersionedNiagaraEmitterData (SimTarget, bLocalSpace, RandomSeed, FixedBounds, etc.) — fields use C++ PascalCase, must be parsed to read individual values.
For typed access to common metadata (SimTarget, EmitterName, bEnabled, RendererClasses) prefer GetEmitterSummary — it returns those as named fields directly and avoids a JSON parse step. Use this endpoint when you need the full property set or a less-common field.
Input schema
{
"properties": {
"emitterRef": {
"description": "Reference to the emitter to retrieve data from",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"emitterRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Data structure with PropertyValues set to a JSON blob of all emitter properties",
"properties": {
"propertyValues": {
"description": "JSON blob matching the emitter property schema. Fields use C++ PascalCase (SimTarget, RandomSeed, …). Parse to read individual fields.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "NiagaraExt_EmitterData",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetEmitterInputValues¶
Returns all resolved input values for every module across all four emitter script stacks. One FNiagaraExt_ModuleInputValues entry per module, each carrying all its resolved input values. Call this in parallel with GetEmitterTopology to get both structure and values in two passes.
Input schema
{
"properties": {
"emitterRef": {
"description": "Reference to the emitter to retrieve input values from",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"emitterRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Array of per-module input value bundles across all four script stacks",
"items": {
"properties": {
"inputs": {
"description": "One entry per input on this module, in walk order. Mirrors FNiagaraExt_ModuleTopology::Inputs.",
"items": {
"properties": {
"name": {
"description": "The input parameter name (matches the Name field in FNiagaraExt_StackInputTopology).",
"type": "string"
},
"value": {
"description": "The resolved value for this input.",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 17 types defined by Struct. The first 6 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "A special case of Local input that stores an Enum value as a string rather than it's raw int.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Enum",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Linked",
"properties": {
"linkedVariable": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
}
},
"required": [
"linkedVariable"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Linked",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Hlsl Expression",
"properties": {
"hlslExpression": {
"description": "A single rvalue hlsl expression defining the value of this input. MUST be a single rvalue with no variable definitions or return statements etc. For example a color could use the expression \"float4(1.0, 0.0, 0.0, 1.0)\"",
"type": "string"
}
},
"required": [
"hlslExpression"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_HlslExpression",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Data Interface",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for this data interface.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DataInterface",
"type": "object"
},
{
"description": "Stack input for a dynamic input.",
"properties": {
"dynamicInputAsset": {
"description": "The dynamic input asset defining this dynamic input.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"dynamicInputAsset"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DynamicInput",
"type": "object"
},
{
"description": "An unsupported input type",
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Unsupported",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector3f",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2f",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4f",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat4f",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
}
},
"required": [
"name",
"value"
],
"title": "NiagaraExt_StackInputValueEntry",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "The module name (matches ModuleName in FNiagaraExt_ModuleTopology).",
"type": "string"
}
},
"required": [
"moduleName",
"inputs"
],
"title": "NiagaraExt_ModuleInputValues",
"type": "object"
},
"type": "array"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetEmitterSchema¶
Returns property schema for Niagara Emitter. Describes all available properties and their types that can be set on a Niagara Emitter.
Input schema
{
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Schema describing all emitter-level properties",
"properties": {
"propertySchema": {
"description": "Json Schema describing editable properties of a Niagara Emitter.",
"type": "string"
}
},
"required": [
"propertySchema"
],
"title": "NiagaraExt_EmitterSchema",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetEmitterSummary¶
Returns lightweight emitter metadata: name, enabled state, sim target, renderer classes. Use this when you only need to check metadata without walking the full emitter structure.
Input schema
{
"properties": {
"emitterRef": {
"description": "Reference to the emitter to summarise.",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"emitterRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Summary containing emitter name, enabled, sim target, de-duplicated renderer classes.",
"properties": {
"bEnabled": {
"description": "Disabled emitters still exist but produce no particles.",
"type": "boolean"
},
"emitterName": {
"description": "Use as EmitterName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"rendererClasses": {
"description": "Distinct renderer classes on this emitter (de-duplicated set).",
"items": {
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
},
"type": "array"
},
"simTarget": {
"description": "CPUSim or GPUComputeSim.",
"enum": [
"CPUSim",
"GPUComputeSim"
],
"title": "ENiagaraSimTarget",
"type": "string"
}
},
"required": [
"emitterName",
"bEnabled",
"simTarget",
"rendererClasses"
],
"title": "NiagaraExt_EmitterSummary",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetEmitterTopology¶
Returns full emitter topology: four script stacks with all modules and inputs, renderer references. All fields always populated. The returned topology carries no input values; call GetEmitterInputValues in parallel. Note: mutation endpoints (AddEmitter, AddModule) also return topology structs — input values require a separate data call.
Input schema
{
"properties": {
"emitterRef": {
"description": "Reference to the emitter to describe.",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"emitterRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Emitter topology with all four script stacks and renderer references fully walked.",
"properties": {
"bEnabled": {
"description": "Disabled emitters still exist but produce no particles.",
"type": "boolean"
},
"emitterName": {
"description": "Use as EmitterName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"emitterSpawnScript": {
"description": "Emitter Spawn stack: modules run once when the emitter is created.",
"properties": {
"modules": {
"description": "Modules in the stack, in execution order. Always populated.",
"items": {
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
},
"type": "array"
},
"scriptName": {
"description": "Which of the six script stacks this represents: SystemSpawnScript, SystemUpdateScript, EmitterSpawnScript, EmitterUpdateScript, ParticleSpawnScript, ParticleUpdateScript.",
"type": "string"
}
},
"required": [
"scriptName",
"modules"
],
"title": "NiagaraExt_ScriptStackTopology",
"type": "object"
},
"emitterUpdateScript": {
"description": "Emitter Update stack: modules run once per frame at emitter scope (spawn rates, bursts, lifecycle).",
"properties": {
"modules": {
"description": "Modules in the stack, in execution order. Always populated.",
"items": {
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
},
"type": "array"
},
"scriptName": {
"description": "Which of the six script stacks this represents: SystemSpawnScript, SystemUpdateScript, EmitterSpawnScript, EmitterUpdateScript, ParticleSpawnScript, ParticleUpdateScript.",
"type": "string"
}
},
"required": [
"scriptName",
"modules"
],
"title": "NiagaraExt_ScriptStackTopology",
"type": "object"
},
"particleSpawnScript": {
"description": "Particle Spawn stack: modules run once per newly-spawned particle.",
"properties": {
"modules": {
"description": "Modules in the stack, in execution order. Always populated.",
"items": {
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
},
"type": "array"
},
"scriptName": {
"description": "Which of the six script stacks this represents: SystemSpawnScript, SystemUpdateScript, EmitterSpawnScript, EmitterUpdateScript, ParticleSpawnScript, ParticleUpdateScript.",
"type": "string"
}
},
"required": [
"scriptName",
"modules"
],
"title": "NiagaraExt_ScriptStackTopology",
"type": "object"
},
"particleUpdateScript": {
"description": "Particle Update stack: modules run once per particle per frame (forces, velocity, colour-over-life).",
"properties": {
"modules": {
"description": "Modules in the stack, in execution order. Always populated.",
"items": {
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
},
"type": "array"
},
"scriptName": {
"description": "Which of the six script stacks this represents: SystemSpawnScript, SystemUpdateScript, EmitterSpawnScript, EmitterUpdateScript, ParticleSpawnScript, ParticleUpdateScript.",
"type": "string"
}
},
"required": [
"scriptName",
"modules"
],
"title": "NiagaraExt_ScriptStackTopology",
"type": "object"
},
"rendererClasses": {
"description": "Distinct renderer classes on this emitter (de-duplicated set).",
"items": {
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
},
"type": "array"
},
"renderers": {
"description": "Renderer references (class + index). For property values call GetRendererData.",
"items": {
"properties": {
"rendererClass": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
},
"rendererIndex": {
"description": "Index of this renderer within its owning emitter's renderer list. Pair with FNiagaraExt_StackItemReference::RendererIndex.",
"type": "integer"
}
},
"required": [
"rendererIndex",
"rendererClass"
],
"title": "NiagaraExt_RendererRef",
"type": "object"
},
"type": "array"
},
"simTarget": {
"description": "CPUSim or GPUComputeSim. Affects which Data Interfaces and features are available.",
"enum": [
"CPUSim",
"GPUComputeSim"
],
"title": "ENiagaraSimTarget",
"type": "string"
}
},
"required": [
"emitterName",
"bEnabled",
"simTarget",
"rendererClasses",
"emitterSpawnScript",
"emitterUpdateScript",
"particleSpawnScript",
"particleUpdateScript",
"renderers"
],
"title": "NiagaraExt_EmitterTopology",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetModuleInputValues¶
Returns resolved input values for a single module. Use when you need values for one specific module without walking the whole emitter.
Input schema
{
"properties": {
"moduleRef": {
"description": "Reference to the module",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"moduleRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Input value bundle for the module",
"properties": {
"inputs": {
"description": "One entry per input on this module, in walk order. Mirrors FNiagaraExt_ModuleTopology::Inputs.",
"items": {
"properties": {
"name": {
"description": "The input parameter name (matches the Name field in FNiagaraExt_StackInputTopology).",
"type": "string"
},
"value": {
"description": "The resolved value for this input.",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 17 types defined by Struct. The first 6 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "A special case of Local input that stores an Enum value as a string rather than it's raw int.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Enum",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Linked",
"properties": {
"linkedVariable": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
}
},
"required": [
"linkedVariable"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Linked",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Hlsl Expression",
"properties": {
"hlslExpression": {
"description": "A single rvalue hlsl expression defining the value of this input. MUST be a single rvalue with no variable definitions or return statements etc. For example a color could use the expression \"float4(1.0, 0.0, 0.0, 1.0)\"",
"type": "string"
}
},
"required": [
"hlslExpression"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_HlslExpression",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Data Interface",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for this data interface.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DataInterface",
"type": "object"
},
{
"description": "Stack input for a dynamic input.",
"properties": {
"dynamicInputAsset": {
"description": "The dynamic input asset defining this dynamic input.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"dynamicInputAsset"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DynamicInput",
"type": "object"
},
{
"description": "An unsupported input type",
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Unsupported",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector3f",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2f",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4f",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat4f",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
}
},
"required": [
"name",
"value"
],
"title": "NiagaraExt_StackInputValueEntry",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "The module name (matches ModuleName in FNiagaraExt_ModuleTopology).",
"type": "string"
}
},
"required": [
"moduleName",
"inputs"
],
"title": "NiagaraExt_ModuleInputValues",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetModuleSchema¶
Returns schema for a module and all its inputs. Call this after seeing a module in topology to understand what inputs it exposes.
Input schema
{
"properties": {
"moduleReference": {
"description": "Reference to the module to get the schema for",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"moduleReference"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Schema describing the module's inputs and their types",
"properties": {
"asset": {
"description": "The script asset this schema describes. Read-only — populated by GetModuleSchema variants.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
},
"inputs": {
"items": {
"properties": {
"bSupportsExpressions": {
"description": "True if this input can be set with a hlsl expression.",
"type": "boolean"
},
"category": {
"type": "string"
},
"metaData": {
"properties": {
"alternateAliases": {
"description": "List of alternate/previous names for this variable. Note that this is not normally needed if you rename through the UX. However, if you delete and then add a different variable, intending for it to match, you will likely want to add the prior name here.\n\nYou may need to restart and reload assets after making this change to have it take effect on already loaded assets.",
"items": {
"type": "string"
},
"type": "array"
},
"bAdvancedDisplay": {
"description": "Declares that this input is advanced and should only be visible if expanded inputs have been expanded.",
"type": "boolean"
},
"bDisplayInOverviewStack": {
"description": "Declares that this parameter's value will be shown in the overview node if it's set to a local value.",
"type": "boolean"
},
"bEnableBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"type": "boolean"
},
"bInlineEditConditionToggle": {
"description": "Declares the associated input is used as an inline edit condition toggle, so it should be hidden and edited as a\n checkbox inline with the input which was designated as its edit condition.",
"type": "boolean"
},
"bOverrideColor": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"type": "boolean"
},
"description": {
"type": "string"
},
"displayUnit": {
"description": "The unit to display next to input fields for this parameter - note that this is only a visual indicator and does not change any of the calculations.",
"enum": [
"Micrometers",
"Millimeters",
"Centimeters",
"Meters",
"Kilometers",
"Inches",
"Feet",
"Yards",
"Miles",
"Lightyears",
"Degrees",
"Radians",
"CentimetersPerSecond",
"MetersPerSecond",
"KilometersPerHour",
"MilesPerHour",
"DegreesPerSecond",
"RadiansPerSecond",
"CentimetersPerSecondSquared",
"MetersPerSecondSquared",
"Celsius",
"Farenheit",
"Kelvin",
"Micrograms",
"Milligrams",
"Grams",
"Kilograms",
"MetricTons",
"Ounces",
"Pounds",
"Stones",
"GramsPerCubicCentimeter",
"GramsPerCubicMeter",
"KilogramsPerCubicCentimeter",
"KilogramsPerCubicMeter",
"Newtons",
"PoundsForce",
"KilogramsForce",
"KilogramCentimetersPerSecondSquared",
"NewtonMeters",
"KilogramCentimetersSquaredPerSecondSquared",
"NewtonSeconds",
"KilogramCentimeters",
"KilogramMeters",
"Hertz",
"Kilohertz",
"Megahertz",
"Gigahertz",
"RevolutionsPerMinute",
"Bytes",
"Kilobytes",
"Megabytes",
"Gigabytes",
"Terabytes",
"Lumens",
"Candela",
"Lux",
"CandelaPerMeter2",
"ExposureValue",
"Nanoseconds",
"Microseconds",
"Milliseconds",
"Seconds",
"Minutes",
"Hours",
"Days",
"Months",
"Years",
"PixelsPerInch",
"Percentage",
"Multiplier",
"Pascals",
"KiloPascals",
"MegaPascals",
"GigaPascals",
"Unspecified"
],
"title": "EUnit",
"type": "string"
},
"editCondition": {
"description": "Declares the associated input should be conditionally editable based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"inlineParameterBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"properties": {
"displayMode": {
"description": "The mode used determines the cases in which a bool parameter is displayed.\nIf set to DisplayAlways, both True and False cases will display.\nIf set to DisplayIfTrue, it will only display if the bool evaluates to True.",
"enum": [
"DisplayAlways",
"DisplayIfTrue",
"DisplayIfFalse"
],
"title": "ENiagaraBoolDisplayMode",
"type": "string"
},
"iconOverrideFalse": {
"description": "If specified, this icon will be used for the given bool if it evaluates to False. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"iconOverrideTrue": {
"description": "If specified, this icon will be used for the given bool if it evaluates to True. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideNameFalse": {
"description": "If specified, this name will be used for the given bool if it evaluates to False.",
"type": "string"
},
"overrideNameTrue": {
"description": "If specified, this name will be used for the given bool if it evaluates to True.",
"type": "string"
}
},
"required": [
"displayMode",
"overrideNameTrue",
"overrideNameFalse",
"iconOverrideTrue",
"iconOverrideFalse"
],
"title": "NiagaraBoolParameterMetaData",
"type": "object"
},
"inlineParameterColorOverride": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"inlineParameterEnumOverrides": {
"description": "The index of the entry maps to the index of an enum value. Useful for overriding how an enum parameter is displayed in the overview.",
"items": {
"properties": {
"bUseColorOverride": {
"type": "boolean"
},
"colorOverride": {
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"iconOverride": {
"description": "If specified, this icon will be used for the given enum entry. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideName": {
"description": "If specified, this name will be used for the given enum entry. Useful for shortening names.",
"type": "string"
}
},
"required": [
"overrideName",
"iconOverride",
"bUseColorOverride",
"colorOverride"
],
"title": "NiagaraEnumParameterMetaData",
"type": "object"
},
"type": "array"
},
"inlineParameterSortPriority": {
"description": "Affects the sort order for parameters shown inline in the overview. Use a smaller number to push it to the top. Defaults to zero.",
"type": "integer"
},
"propertyMetaData": {
"additionalProperties": {
"type": "string"
},
"description": "Property Metadata",
"type": "object"
},
"variableGuid": {
"description": "A unique identifier for the variable that can be used by function call nodes to find renamed variables.",
"pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$",
"type": "string"
},
"visibleCondition": {
"description": "Declares the associated input should be conditionally visible based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"widgetCustomization": {
"description": "Changes how the input is displayed.",
"properties": {
"bBroadcastValueChangesOnCommitOnly": {
"description": "If set to true then values will not be updated while typing, only when committing the input field. This is useful for values that cause big downstream changes and computational overhead, like grid size or spawned particles.",
"type": "boolean"
},
"bHasMaxValue": {
"type": "boolean"
},
"bHasMinValue": {
"type": "boolean"
},
"bHasStepWidth": {
"type": "boolean"
},
"enumStyleDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
}
},
"required": [
"displayName",
"tooltip"
],
"title": "NiagaraWidgetNamedIntegerInputValue",
"type": "object"
},
"type": "array"
},
"inputDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
},
"value": {
"type": "number"
}
},
"required": [
"value",
"displayName",
"tooltip"
],
"title": "WidgetNamedInputValue",
"type": "object"
},
"type": "array"
},
"maxSegmentsPerRow": {
"description": "Limits the number of buttons shown per row, 0 = unlimited",
"type": "integer"
},
"maxValue": {
"description": "max ui value (float and int types only)",
"type": "number"
},
"minValue": {
"description": "min ui value (float and int types only)",
"type": "number"
},
"segmentValueOverrides": {
"items": {
"properties": {
"bOverrideDisplayName": {
"type": "boolean"
},
"displayIcon": {
"description": "If set, then this icon will be displayed on the button",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"displayNameOverride": {
"description": "This will be used as display name instead of the enum value",
"type": "string"
},
"enumIndexToOverride": {
"type": "integer"
}
},
"required": [
"enumIndexToOverride",
"bOverrideDisplayName",
"displayNameOverride",
"displayIcon"
],
"title": "WidgetSegmentValueOverride",
"type": "object"
},
"type": "array"
},
"stepWidth": {
"description": "Step width used by the input when dragging",
"type": "number"
},
"widgetType": {
"description": "Changes the widget implementation used for the input",
"enum": [
"Default",
"Slider",
"Volume",
"NumericDropdown",
"EnumStyle",
"SegmentedButtons"
],
"title": "ENiagaraInputWidgetType",
"type": "string"
}
},
"required": [
"widgetType",
"bHasMinValue",
"minValue",
"bHasMaxValue",
"maxValue",
"bHasStepWidth",
"stepWidth",
"inputDropdownValues",
"enumStyleDropdownValues",
"maxSegmentsPerRow",
"segmentValueOverrides",
"bBroadcastValueChangesOnCommitOnly"
],
"title": "NiagaraInputParameterCustomization",
"type": "object"
}
},
"required": [
"description",
"displayUnit",
"bAdvancedDisplay",
"bDisplayInOverviewStack",
"inlineParameterSortPriority",
"bOverrideColor",
"inlineParameterColorOverride",
"inlineParameterEnumOverrides",
"bEnableBoolOverride",
"inlineParameterBoolOverride",
"bInlineEditConditionToggle",
"editCondition",
"visibleCondition",
"propertyMetaData",
"alternateAliases",
"widgetCustomization",
"variableGuid"
],
"title": "NiagaraVariableMetaData",
"type": "object"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type",
"category",
"bSupportsExpressions",
"metaData"
],
"title": "NiagaraExt_StackInputSchema",
"type": "object"
},
"type": "array"
},
"outputs": {
"items": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
},
"type": "array"
}
},
"required": [
"asset",
"inputs",
"outputs"
],
"title": "NiagaraExt_ModuleSchema",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetModuleSchemaFromAsset¶
Returns schema for a module asset. Standalone function that doesn't require a system context - useful for browsing available modules.
Input schema
{
"properties": {
"moduleAsset": {
"description": "The module script asset to get the schema for",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleAsset"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Schema describing the module's inputs and their types",
"properties": {
"asset": {
"description": "The script asset this schema describes. Read-only — populated by GetModuleSchema variants.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
},
"inputs": {
"items": {
"properties": {
"bSupportsExpressions": {
"description": "True if this input can be set with a hlsl expression.",
"type": "boolean"
},
"category": {
"type": "string"
},
"metaData": {
"properties": {
"alternateAliases": {
"description": "List of alternate/previous names for this variable. Note that this is not normally needed if you rename through the UX. However, if you delete and then add a different variable, intending for it to match, you will likely want to add the prior name here.\n\nYou may need to restart and reload assets after making this change to have it take effect on already loaded assets.",
"items": {
"type": "string"
},
"type": "array"
},
"bAdvancedDisplay": {
"description": "Declares that this input is advanced and should only be visible if expanded inputs have been expanded.",
"type": "boolean"
},
"bDisplayInOverviewStack": {
"description": "Declares that this parameter's value will be shown in the overview node if it's set to a local value.",
"type": "boolean"
},
"bEnableBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"type": "boolean"
},
"bInlineEditConditionToggle": {
"description": "Declares the associated input is used as an inline edit condition toggle, so it should be hidden and edited as a\n checkbox inline with the input which was designated as its edit condition.",
"type": "boolean"
},
"bOverrideColor": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"type": "boolean"
},
"description": {
"type": "string"
},
"displayUnit": {
"description": "The unit to display next to input fields for this parameter - note that this is only a visual indicator and does not change any of the calculations.",
"enum": [
"Micrometers",
"Millimeters",
"Centimeters",
"Meters",
"Kilometers",
"Inches",
"Feet",
"Yards",
"Miles",
"Lightyears",
"Degrees",
"Radians",
"CentimetersPerSecond",
"MetersPerSecond",
"KilometersPerHour",
"MilesPerHour",
"DegreesPerSecond",
"RadiansPerSecond",
"CentimetersPerSecondSquared",
"MetersPerSecondSquared",
"Celsius",
"Farenheit",
"Kelvin",
"Micrograms",
"Milligrams",
"Grams",
"Kilograms",
"MetricTons",
"Ounces",
"Pounds",
"Stones",
"GramsPerCubicCentimeter",
"GramsPerCubicMeter",
"KilogramsPerCubicCentimeter",
"KilogramsPerCubicMeter",
"Newtons",
"PoundsForce",
"KilogramsForce",
"KilogramCentimetersPerSecondSquared",
"NewtonMeters",
"KilogramCentimetersSquaredPerSecondSquared",
"NewtonSeconds",
"KilogramCentimeters",
"KilogramMeters",
"Hertz",
"Kilohertz",
"Megahertz",
"Gigahertz",
"RevolutionsPerMinute",
"Bytes",
"Kilobytes",
"Megabytes",
"Gigabytes",
"Terabytes",
"Lumens",
"Candela",
"Lux",
"CandelaPerMeter2",
"ExposureValue",
"Nanoseconds",
"Microseconds",
"Milliseconds",
"Seconds",
"Minutes",
"Hours",
"Days",
"Months",
"Years",
"PixelsPerInch",
"Percentage",
"Multiplier",
"Pascals",
"KiloPascals",
"MegaPascals",
"GigaPascals",
"Unspecified"
],
"title": "EUnit",
"type": "string"
},
"editCondition": {
"description": "Declares the associated input should be conditionally editable based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"inlineParameterBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"properties": {
"displayMode": {
"description": "The mode used determines the cases in which a bool parameter is displayed.\nIf set to DisplayAlways, both True and False cases will display.\nIf set to DisplayIfTrue, it will only display if the bool evaluates to True.",
"enum": [
"DisplayAlways",
"DisplayIfTrue",
"DisplayIfFalse"
],
"title": "ENiagaraBoolDisplayMode",
"type": "string"
},
"iconOverrideFalse": {
"description": "If specified, this icon will be used for the given bool if it evaluates to False. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"iconOverrideTrue": {
"description": "If specified, this icon will be used for the given bool if it evaluates to True. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideNameFalse": {
"description": "If specified, this name will be used for the given bool if it evaluates to False.",
"type": "string"
},
"overrideNameTrue": {
"description": "If specified, this name will be used for the given bool if it evaluates to True.",
"type": "string"
}
},
"required": [
"displayMode",
"overrideNameTrue",
"overrideNameFalse",
"iconOverrideTrue",
"iconOverrideFalse"
],
"title": "NiagaraBoolParameterMetaData",
"type": "object"
},
"inlineParameterColorOverride": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"inlineParameterEnumOverrides": {
"description": "The index of the entry maps to the index of an enum value. Useful for overriding how an enum parameter is displayed in the overview.",
"items": {
"properties": {
"bUseColorOverride": {
"type": "boolean"
},
"colorOverride": {
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"iconOverride": {
"description": "If specified, this icon will be used for the given enum entry. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideName": {
"description": "If specified, this name will be used for the given enum entry. Useful for shortening names.",
"type": "string"
}
},
"required": [
"overrideName",
"iconOverride",
"bUseColorOverride",
"colorOverride"
],
"title": "NiagaraEnumParameterMetaData",
"type": "object"
},
"type": "array"
},
"inlineParameterSortPriority": {
"description": "Affects the sort order for parameters shown inline in the overview. Use a smaller number to push it to the top. Defaults to zero.",
"type": "integer"
},
"propertyMetaData": {
"additionalProperties": {
"type": "string"
},
"description": "Property Metadata",
"type": "object"
},
"variableGuid": {
"description": "A unique identifier for the variable that can be used by function call nodes to find renamed variables.",
"pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$",
"type": "string"
},
"visibleCondition": {
"description": "Declares the associated input should be conditionally visible based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"widgetCustomization": {
"description": "Changes how the input is displayed.",
"properties": {
"bBroadcastValueChangesOnCommitOnly": {
"description": "If set to true then values will not be updated while typing, only when committing the input field. This is useful for values that cause big downstream changes and computational overhead, like grid size or spawned particles.",
"type": "boolean"
},
"bHasMaxValue": {
"type": "boolean"
},
"bHasMinValue": {
"type": "boolean"
},
"bHasStepWidth": {
"type": "boolean"
},
"enumStyleDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
}
},
"required": [
"displayName",
"tooltip"
],
"title": "NiagaraWidgetNamedIntegerInputValue",
"type": "object"
},
"type": "array"
},
"inputDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
},
"value": {
"type": "number"
}
},
"required": [
"value",
"displayName",
"tooltip"
],
"title": "WidgetNamedInputValue",
"type": "object"
},
"type": "array"
},
"maxSegmentsPerRow": {
"description": "Limits the number of buttons shown per row, 0 = unlimited",
"type": "integer"
},
"maxValue": {
"description": "max ui value (float and int types only)",
"type": "number"
},
"minValue": {
"description": "min ui value (float and int types only)",
"type": "number"
},
"segmentValueOverrides": {
"items": {
"properties": {
"bOverrideDisplayName": {
"type": "boolean"
},
"displayIcon": {
"description": "If set, then this icon will be displayed on the button",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"displayNameOverride": {
"description": "This will be used as display name instead of the enum value",
"type": "string"
},
"enumIndexToOverride": {
"type": "integer"
}
},
"required": [
"enumIndexToOverride",
"bOverrideDisplayName",
"displayNameOverride",
"displayIcon"
],
"title": "WidgetSegmentValueOverride",
"type": "object"
},
"type": "array"
},
"stepWidth": {
"description": "Step width used by the input when dragging",
"type": "number"
},
"widgetType": {
"description": "Changes the widget implementation used for the input",
"enum": [
"Default",
"Slider",
"Volume",
"NumericDropdown",
"EnumStyle",
"SegmentedButtons"
],
"title": "ENiagaraInputWidgetType",
"type": "string"
}
},
"required": [
"widgetType",
"bHasMinValue",
"minValue",
"bHasMaxValue",
"maxValue",
"bHasStepWidth",
"stepWidth",
"inputDropdownValues",
"enumStyleDropdownValues",
"maxSegmentsPerRow",
"segmentValueOverrides",
"bBroadcastValueChangesOnCommitOnly"
],
"title": "NiagaraInputParameterCustomization",
"type": "object"
}
},
"required": [
"description",
"displayUnit",
"bAdvancedDisplay",
"bDisplayInOverviewStack",
"inlineParameterSortPriority",
"bOverrideColor",
"inlineParameterColorOverride",
"inlineParameterEnumOverrides",
"bEnableBoolOverride",
"inlineParameterBoolOverride",
"bInlineEditConditionToggle",
"editCondition",
"visibleCondition",
"propertyMetaData",
"alternateAliases",
"widgetCustomization",
"variableGuid"
],
"title": "NiagaraVariableMetaData",
"type": "object"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type",
"category",
"bSupportsExpressions",
"metaData"
],
"title": "NiagaraExt_StackInputSchema",
"type": "object"
},
"type": "array"
},
"outputs": {
"items": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
},
"type": "array"
}
},
"required": [
"asset",
"inputs",
"outputs"
],
"title": "NiagaraExt_ModuleSchema",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetModuleTopology¶
Returns module topology: metadata and all inputs (name/type/visibility only, no values). All fields always populated.
Input schema
{
"properties": {
"moduleRef": {
"description": "Reference to the module to describe.",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"moduleRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Module topology with all inputs in walk order.",
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetRendererData¶
Returns renderer property values. Retrieves the current values of all configurable renderer properties.
Input schema
{
"properties": {
"rendererRef": {
"description": "Reference to the renderer to retrieve data from",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"rendererRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Data structure containing all renderer property values",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for a Niagara Renderer.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "NiagaraExt_RendererData",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetRendererSchema¶
Returns property schema for a specific Renderer class. Describes all available properties and their types for the given renderer type.
Input schema
{
"properties": {
"rendererClass": {
"description": "The renderer class to get the schema for (e.g., UNiagaraSpriteRendererProperties)",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
}
},
"required": [
"rendererClass"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Schema describing all properties for the specified renderer class",
"properties": {
"propertySchema": {
"description": "Json Schema describing editable properties of a the Niagara Renderer class.",
"type": "string"
},
"rendererClass": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
}
},
"required": [
"rendererClass",
"propertySchema"
],
"title": "NiagaraExt_RendererSchema",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetScriptStackInputValues¶
Returns all resolved input values for every module in the given script stack. One FNiagaraExt_ModuleInputValues entry per module.
Input schema
{
"properties": {
"scriptRef": {
"description": "Reference to the script stack",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"scriptRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Array of per-module input value bundles in execution order",
"items": {
"properties": {
"inputs": {
"description": "One entry per input on this module, in walk order. Mirrors FNiagaraExt_ModuleTopology::Inputs.",
"items": {
"properties": {
"name": {
"description": "The input parameter name (matches the Name field in FNiagaraExt_StackInputTopology).",
"type": "string"
},
"value": {
"description": "The resolved value for this input.",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 17 types defined by Struct. The first 6 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "A special case of Local input that stores an Enum value as a string rather than it's raw int.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Enum",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Linked",
"properties": {
"linkedVariable": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
}
},
"required": [
"linkedVariable"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Linked",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Hlsl Expression",
"properties": {
"hlslExpression": {
"description": "A single rvalue hlsl expression defining the value of this input. MUST be a single rvalue with no variable definitions or return statements etc. For example a color could use the expression \"float4(1.0, 0.0, 0.0, 1.0)\"",
"type": "string"
}
},
"required": [
"hlslExpression"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_HlslExpression",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Data Interface",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for this data interface.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DataInterface",
"type": "object"
},
{
"description": "Stack input for a dynamic input.",
"properties": {
"dynamicInputAsset": {
"description": "The dynamic input asset defining this dynamic input.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"dynamicInputAsset"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DynamicInput",
"type": "object"
},
{
"description": "An unsupported input type",
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Unsupported",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector3f",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2f",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4f",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat4f",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
}
},
"required": [
"name",
"value"
],
"title": "NiagaraExt_StackInputValueEntry",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "The module name (matches ModuleName in FNiagaraExt_ModuleTopology).",
"type": "string"
}
},
"required": [
"moduleName",
"inputs"
],
"title": "NiagaraExt_ModuleInputValues",
"type": "object"
},
"type": "array"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetScriptStackTopology¶
Returns script stack topology: all modules and their inputs in execution order. All fields always populated.
Input schema
{
"properties": {
"scriptRef": {
"description": "Reference to the script stack to describe.",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"scriptRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Script stack topology with all modules and inputs fully walked.",
"properties": {
"modules": {
"description": "Modules in the stack, in execution order. Always populated.",
"items": {
"properties": {
"bIsSetParametersModule": {
"description": "True if this module is a SetParameters (UNiagaraNodeAssignment) module rather than a regular script module.",
"type": "boolean"
},
"enabled": {
"description": "Disabled modules stay in the stack but don't execute.",
"type": "boolean"
},
"inputs": {
"description": "All inputs on this module in walk order. Always populated.",
"items": {
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
},
"type": "array"
},
"moduleName": {
"description": "Use as ModuleName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"moduleScript": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"moduleName",
"enabled",
"moduleScript",
"bIsSetParametersModule",
"inputs"
],
"title": "NiagaraExt_ModuleTopology",
"type": "object"
},
"type": "array"
},
"scriptName": {
"description": "Which of the six script stacks this represents: SystemSpawnScript, SystemUpdateScript, EmitterSpawnScript, EmitterUpdateScript, ParticleSpawnScript, ParticleUpdateScript.",
"type": "string"
}
},
"required": [
"scriptName",
"modules"
],
"title": "NiagaraExt_ScriptStackTopology",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetStackInputData¶
Returns the value of a stack module input. Retrieves the current value and configuration for a specific module input parameter.
Input schema
{
"properties": {
"stackInputRef": {
"description": "Reference to the stack input to retrieve data from",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"stackInputRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "The current value and configuration of the input",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 17 types defined by Struct. The first 6 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "A special case of Local input that stores an Enum value as a string rather than it's raw int.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Enum",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Linked",
"properties": {
"linkedVariable": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
}
},
"required": [
"linkedVariable"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Linked",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Hlsl Expression",
"properties": {
"hlslExpression": {
"description": "A single rvalue hlsl expression defining the value of this input. MUST be a single rvalue with no variable definitions or return statements etc. For example a color could use the expression \"float4(1.0, 0.0, 0.0, 1.0)\"",
"type": "string"
}
},
"required": [
"hlslExpression"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_HlslExpression",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Data Interface",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for this data interface.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DataInterface",
"type": "object"
},
{
"description": "Stack input for a dynamic input.",
"properties": {
"dynamicInputAsset": {
"description": "The dynamic input asset defining this dynamic input.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"dynamicInputAsset"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DynamicInput",
"type": "object"
},
{
"description": "An unsupported input type",
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Unsupported",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector3f",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2f",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4f",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat4f",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetStackInputSchema¶
Returns schema for a single module input in the stack. Describes the type, metadata, and configuration options for a specific input parameter.
Input schema
{
"properties": {
"inputReference": {
"description": "Reference to the stack input to get the schema for",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"inputReference"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Schema describing the input's type and available configuration",
"properties": {
"bSupportsExpressions": {
"description": "True if this input can be set with a hlsl expression.",
"type": "boolean"
},
"category": {
"type": "string"
},
"metaData": {
"properties": {
"alternateAliases": {
"description": "List of alternate/previous names for this variable. Note that this is not normally needed if you rename through the UX. However, if you delete and then add a different variable, intending for it to match, you will likely want to add the prior name here.\n\nYou may need to restart and reload assets after making this change to have it take effect on already loaded assets.",
"items": {
"type": "string"
},
"type": "array"
},
"bAdvancedDisplay": {
"description": "Declares that this input is advanced and should only be visible if expanded inputs have been expanded.",
"type": "boolean"
},
"bDisplayInOverviewStack": {
"description": "Declares that this parameter's value will be shown in the overview node if it's set to a local value.",
"type": "boolean"
},
"bEnableBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"type": "boolean"
},
"bInlineEditConditionToggle": {
"description": "Declares the associated input is used as an inline edit condition toggle, so it should be hidden and edited as a\n checkbox inline with the input which was designated as its edit condition.",
"type": "boolean"
},
"bOverrideColor": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"type": "boolean"
},
"description": {
"type": "string"
},
"displayUnit": {
"description": "The unit to display next to input fields for this parameter - note that this is only a visual indicator and does not change any of the calculations.",
"enum": [
"Micrometers",
"Millimeters",
"Centimeters",
"Meters",
"Kilometers",
"Inches",
"Feet",
"Yards",
"Miles",
"Lightyears",
"Degrees",
"Radians",
"CentimetersPerSecond",
"MetersPerSecond",
"KilometersPerHour",
"MilesPerHour",
"DegreesPerSecond",
"RadiansPerSecond",
"CentimetersPerSecondSquared",
"MetersPerSecondSquared",
"Celsius",
"Farenheit",
"Kelvin",
"Micrograms",
"Milligrams",
"Grams",
"Kilograms",
"MetricTons",
"Ounces",
"Pounds",
"Stones",
"GramsPerCubicCentimeter",
"GramsPerCubicMeter",
"KilogramsPerCubicCentimeter",
"KilogramsPerCubicMeter",
"Newtons",
"PoundsForce",
"KilogramsForce",
"KilogramCentimetersPerSecondSquared",
"NewtonMeters",
"KilogramCentimetersSquaredPerSecondSquared",
"NewtonSeconds",
"KilogramCentimeters",
"KilogramMeters",
"Hertz",
"Kilohertz",
"Megahertz",
"Gigahertz",
"RevolutionsPerMinute",
"Bytes",
"Kilobytes",
"Megabytes",
"Gigabytes",
"Terabytes",
"Lumens",
"Candela",
"Lux",
"CandelaPerMeter2",
"ExposureValue",
"Nanoseconds",
"Microseconds",
"Milliseconds",
"Seconds",
"Minutes",
"Hours",
"Days",
"Months",
"Years",
"PixelsPerInch",
"Percentage",
"Multiplier",
"Pascals",
"KiloPascals",
"MegaPascals",
"GigaPascals",
"Unspecified"
],
"title": "EUnit",
"type": "string"
},
"editCondition": {
"description": "Declares the associated input should be conditionally editable based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"inlineParameterBoolOverride": {
"description": "Useful to override inline bool visualization in the overview.",
"properties": {
"displayMode": {
"description": "The mode used determines the cases in which a bool parameter is displayed.\nIf set to DisplayAlways, both True and False cases will display.\nIf set to DisplayIfTrue, it will only display if the bool evaluates to True.",
"enum": [
"DisplayAlways",
"DisplayIfTrue",
"DisplayIfFalse"
],
"title": "ENiagaraBoolDisplayMode",
"type": "string"
},
"iconOverrideFalse": {
"description": "If specified, this icon will be used for the given bool if it evaluates to False. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"iconOverrideTrue": {
"description": "If specified, this icon will be used for the given bool if it evaluates to True. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideNameFalse": {
"description": "If specified, this name will be used for the given bool if it evaluates to False.",
"type": "string"
},
"overrideNameTrue": {
"description": "If specified, this name will be used for the given bool if it evaluates to True.",
"type": "string"
}
},
"required": [
"displayMode",
"overrideNameTrue",
"overrideNameFalse",
"iconOverrideTrue",
"iconOverrideFalse"
],
"title": "NiagaraBoolParameterMetaData",
"type": "object"
},
"inlineParameterColorOverride": {
"description": "The color used to display a parameter in the overview. If no color is specified, the type color is used.",
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"inlineParameterEnumOverrides": {
"description": "The index of the entry maps to the index of an enum value. Useful for overriding how an enum parameter is displayed in the overview.",
"items": {
"properties": {
"bUseColorOverride": {
"type": "boolean"
},
"colorOverride": {
"properties": {
"a": {
"minimum": 0,
"type": "number"
},
"b": {
"minimum": 0,
"type": "number"
},
"g": {
"minimum": 0,
"type": "number"
},
"r": {
"minimum": 0,
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "LinearColor",
"type": "object"
},
"iconOverride": {
"description": "If specified, this icon will be used for the given enum entry. If OverrideName isn't empty, the icon takes priority.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"overrideName": {
"description": "If specified, this name will be used for the given enum entry. Useful for shortening names.",
"type": "string"
}
},
"required": [
"overrideName",
"iconOverride",
"bUseColorOverride",
"colorOverride"
],
"title": "NiagaraEnumParameterMetaData",
"type": "object"
},
"type": "array"
},
"inlineParameterSortPriority": {
"description": "Affects the sort order for parameters shown inline in the overview. Use a smaller number to push it to the top. Defaults to zero.",
"type": "integer"
},
"propertyMetaData": {
"additionalProperties": {
"type": "string"
},
"description": "Property Metadata",
"type": "object"
},
"variableGuid": {
"description": "A unique identifier for the variable that can be used by function call nodes to find renamed variables.",
"pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$",
"type": "string"
},
"visibleCondition": {
"description": "Declares the associated input should be conditionally visible based on the value of another input.",
"properties": {
"inputName": {
"description": "The name of the input to use for matching the target values.",
"type": "string"
},
"targetValues": {
"description": "The list of target values which will satisfy the input condition. If this is empty it's assumed to be a single value of \"true\" for matching bool inputs.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"inputName",
"targetValues"
],
"title": "NiagaraInputConditionMetadata",
"type": "object"
},
"widgetCustomization": {
"description": "Changes how the input is displayed.",
"properties": {
"bBroadcastValueChangesOnCommitOnly": {
"description": "If set to true then values will not be updated while typing, only when committing the input field. This is useful for values that cause big downstream changes and computational overhead, like grid size or spawned particles.",
"type": "boolean"
},
"bHasMaxValue": {
"type": "boolean"
},
"bHasMinValue": {
"type": "boolean"
},
"bHasStepWidth": {
"type": "boolean"
},
"enumStyleDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
}
},
"required": [
"displayName",
"tooltip"
],
"title": "NiagaraWidgetNamedIntegerInputValue",
"type": "object"
},
"type": "array"
},
"inputDropdownValues": {
"items": {
"properties": {
"displayName": {
"type": "string"
},
"tooltip": {
"type": "string"
},
"value": {
"type": "number"
}
},
"required": [
"value",
"displayName",
"tooltip"
],
"title": "WidgetNamedInputValue",
"type": "object"
},
"type": "array"
},
"maxSegmentsPerRow": {
"description": "Limits the number of buttons shown per row, 0 = unlimited",
"type": "integer"
},
"maxValue": {
"description": "max ui value (float and int types only)",
"type": "number"
},
"minValue": {
"description": "min ui value (float and int types only)",
"type": "number"
},
"segmentValueOverrides": {
"items": {
"properties": {
"bOverrideDisplayName": {
"type": "boolean"
},
"displayIcon": {
"description": "If set, then this icon will be displayed on the button",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Engine.Texture2D",
"type": "object"
},
"displayNameOverride": {
"description": "This will be used as display name instead of the enum value",
"type": "string"
},
"enumIndexToOverride": {
"type": "integer"
}
},
"required": [
"enumIndexToOverride",
"bOverrideDisplayName",
"displayNameOverride",
"displayIcon"
],
"title": "WidgetSegmentValueOverride",
"type": "object"
},
"type": "array"
},
"stepWidth": {
"description": "Step width used by the input when dragging",
"type": "number"
},
"widgetType": {
"description": "Changes the widget implementation used for the input",
"enum": [
"Default",
"Slider",
"Volume",
"NumericDropdown",
"EnumStyle",
"SegmentedButtons"
],
"title": "ENiagaraInputWidgetType",
"type": "string"
}
},
"required": [
"widgetType",
"bHasMinValue",
"minValue",
"bHasMaxValue",
"maxValue",
"bHasStepWidth",
"stepWidth",
"inputDropdownValues",
"enumStyleDropdownValues",
"maxSegmentsPerRow",
"segmentValueOverrides",
"bBroadcastValueChangesOnCommitOnly"
],
"title": "NiagaraInputParameterCustomization",
"type": "object"
}
},
"required": [
"description",
"displayUnit",
"bAdvancedDisplay",
"bDisplayInOverviewStack",
"inlineParameterSortPriority",
"bOverrideColor",
"inlineParameterColorOverride",
"inlineParameterEnumOverrides",
"bEnableBoolOverride",
"inlineParameterBoolOverride",
"bInlineEditConditionToggle",
"editCondition",
"visibleCondition",
"propertyMetaData",
"alternateAliases",
"widgetCustomization",
"variableGuid"
],
"title": "NiagaraVariableMetaData",
"type": "object"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type",
"category",
"bSupportsExpressions",
"metaData"
],
"title": "NiagaraExt_StackInputSchema",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetStackInputTopology¶
Returns stack input topology: name, type, visibility, editability. No value payload. For the resolved value call GetStackInputData. For a dynamic-input chain call GetDynamicInputChain.
Input schema
{
"properties": {
"stackInputRef": {
"description": "Reference to the stack input to describe.",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"stackInputRef"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Input topology with structural metadata only.",
"properties": {
"bIsDynamic": {
"description": "True when this input's value is provided by a dynamic input script. Call GetDynamicInputChain to retrieve the full chain topology and values.",
"type": "boolean"
},
"bIsEditable": {
"description": "True when the user can edit the value. Requires bIsVisible AND a passing EditCondition. SetStackInputData refuses writes when false.",
"type": "boolean"
},
"bIsStaticSwitch": {
"description": "True when this input is a static-switch parameter. Changing it recompiles the module and\nreshapes the visible/editable sub-input set — previously-hidden sub-inputs may become\nexposed, and vice versa.",
"type": "boolean"
},
"bIsVisible": {
"description": "True when visible in the stack UI. False if hidden by static-switch / conditional logic or by a VisibleCondition.",
"type": "boolean"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"bIsVisible",
"bIsEditable",
"bIsDynamic",
"bIsStaticSwitch",
"name",
"type"
],
"title": "NiagaraExt_StackInputTopology",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetStackIssues¶
Returns all stack issues (errors, warnings, info) from the Niagara module stack, including dismissed ones. Waits for any in-flight compile to complete before collecting.
Input schema
{
"properties": {
"system": {
"description": "The Niagara System to query.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Async result whose Value carries all stack issues across the system and its emitters.",
"properties": {
"issues": {
"description": "All stack issues across the system (both dismissed and undismissed).",
"items": {
"properties": {
"bCanBeDismissed": {
"description": "True if the user is able to dismiss this issue in the UI.",
"type": "boolean"
},
"bIsDismissed": {
"description": "True if this issue has been dismissed by the user and is hidden in the UI.",
"type": "boolean"
},
"fixes": {
"description": "Available auto-fix actions for this issue. May be empty.",
"items": {
"properties": {
"description": {
"description": "Human-readable description of what this fix does.",
"type": "string"
},
"fixId": {
"description": "Unique identifier for this fix, used as the FixId parameter in ApplyStackIssueFix.",
"type": "string"
},
"style": {
"description": "Fix = can be applied programmatically via ApplyStackIssueFix. You should prefer acting on\n Fix-style entries yourself rather than surfacing them to a human.\nLink = navigation hint intended for a human user. Cannot be applied by tool calls —\n ApplyStackIssueFix will reject Link-style fixes.",
"enum": [
"Fix",
"Link"
],
"title": "ENiagaraExt_StackIssueFixStyle",
"type": "string"
}
},
"required": [
"fixId",
"description",
"style"
],
"title": "NiagaraExt_StackIssueFix",
"type": "object"
},
"type": "array"
},
"issueId": {
"description": "Unique identifier for this issue, used as the IssueId parameter in ApplyStackIssueFix.",
"type": "string"
},
"location": {
"description": "Structured reference to the emitter/script/module that owns this issue.\nEmitterName, ScriptName, and ModuleName may be NAME_None if the issue is above that level.",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
},
"longDescription": {
"description": "Detailed description of the issue with context.",
"type": "string"
},
"severity": {
"description": "Severity of this issue.",
"enum": [
"Error",
"Warning",
"Info",
"None"
],
"title": "ENiagaraExt_StackIssueSeverity",
"type": "string"
},
"shortDescription": {
"description": "Short description of the issue (e.g. \"Missing required input\").",
"type": "string"
},
"stackDisplayPath": {
"description": "Human-readable breadcrumb path from the stack root to the entry that owns this issue,\njoined with '/'. Example: \"FireEmitter/ParticleUpdate/AddVelocity\".",
"type": "string"
}
},
"required": [
"issueId",
"severity",
"shortDescription",
"longDescription",
"bCanBeDismissed",
"bIsDismissed",
"location",
"stackDisplayPath",
"fixes"
],
"title": "NiagaraExt_StackIssue",
"type": "object"
},
"type": "array"
},
"numErrors": {
"description": "Count of issues with Severity == Error.",
"type": "integer"
},
"numInfos": {
"description": "Count of issues with Severity == Info.",
"type": "integer"
},
"numWarnings": {
"description": "Count of issues with Severity == Warning.",
"type": "integer"
}
},
"required": [
"numErrors",
"numWarnings",
"numInfos",
"issues"
],
"title": "NiagaraExt_StackIssues",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetSystemCompileState¶
Returns the current compile state of a Niagara System: aggregate status, per-script compile events, and summary flags. Waits for any in-flight compile to complete before collecting.
Input schema
{
"properties": {
"system": {
"description": "The Niagara System to query.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Async result whose Value carries aggregate and per-script compile state.",
"properties": {
"aggregateStatus": {
"description": "Aggregate compile status across all scripts (worst-case union).",
"enum": [
"Unknown",
"Dirty",
"Error",
"UpToDate",
"BeingCreated",
"UpToDateWithWarnings",
"ComputeUpToDateWithWarnings"
],
"title": "ENiagaraExt_ScriptCompileStatus",
"type": "string"
},
"bHasErrors": {
"description": "True if any script status is Error or any CompileEvent has Severity == Error.",
"type": "boolean"
},
"bHasWarnings": {
"description": "True if any CompileEvent has Severity == Warning.",
"type": "boolean"
},
"bIsCompiling": {
"description": "True if the system currently has active or pending compile requests.",
"type": "boolean"
},
"bIsStale": {
"description": "True if bIsCompiling is true or any per-script status is Dirty.",
"type": "boolean"
},
"scripts": {
"description": "Per-script compile info. Order: SystemSpawn, SystemUpdate, then each emitter's scripts\nin handle order (ParticleSpawn, ParticleUpdate, ParticleGPUCompute, event handlers,\nsimulation stages — whatever the emitter has). EmitterSpawn/EmitterUpdate scripts are\nintentionally omitted because their bodies are inlined into SystemSpawn/SystemUpdate at\ncompile time and they never carry their own compile status; any errors from their\ncontents appear on the corresponding system-level script.",
"items": {
"properties": {
"compileEvents": {
"description": "All compile events (errors, warnings, log messages) from the last compile of this script.",
"items": {
"properties": {
"bFromScriptDependency": {
"description": "True if this event originated on a dependency script and propagated to this one, rather\nthan being raised directly by this script's own compile. When true, the fix for the\nunderlying problem is typically in a different script — inspect the referenced scripts\nbefore editing this one.",
"type": "boolean"
},
"message": {
"description": "The compile event message.",
"type": "string"
},
"nodeGuid": {
"description": "Guid of the node that produced this event (may be zero if not associated with a node).",
"pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$",
"type": "string"
},
"pinGuid": {
"description": "Guid of the pin that produced this event (may be zero).",
"pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$",
"type": "string"
},
"severity": {
"enum": [
"Log",
"Display",
"Warning",
"Error"
],
"title": "ENiagaraExt_CompileEventSeverity",
"type": "string"
},
"shortDescription": {
"description": "Optional short description for the event.",
"type": "string"
}
},
"required": [
"severity",
"message",
"shortDescription",
"nodeGuid",
"pinGuid",
"bFromScriptDependency"
],
"title": "NiagaraExt_CompileEvent",
"type": "object"
},
"type": "array"
},
"emitterName": {
"description": "Name of the emitter that owns this script, or NAME_None for system-level scripts.",
"type": "string"
},
"errorSummary": {
"description": "Error message string from the last compile attempt (empty if no error).",
"type": "string"
},
"lastCompileStatus": {
"description": "Last known compile status of this script.",
"enum": [
"Unknown",
"Dirty",
"Error",
"UpToDate",
"BeingCreated",
"UpToDateWithWarnings",
"ComputeUpToDateWithWarnings"
],
"title": "ENiagaraExt_ScriptCompileStatus",
"type": "string"
},
"scriptName": {
"description": "Script role name from ENiagaraScriptUsage (e.g. SystemSpawnScript, ParticleUpdateScript).\nMatches the ScriptName carried on FNiagaraExt_StackIssue::Location so compile events and\nstack issues can be cross-referenced by script. NAME_None if the usage could not be named.",
"type": "string"
}
},
"required": [
"emitterName",
"scriptName",
"lastCompileStatus",
"errorSummary",
"compileEvents"
],
"title": "NiagaraExt_ScriptCompileInfo",
"type": "object"
},
"type": "array"
}
},
"required": [
"aggregateStatus",
"bIsCompiling",
"bIsStale",
"bHasErrors",
"bHasWarnings",
"scripts"
],
"title": "NiagaraExt_SystemCompileState",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetSystemData¶
Returns system property values. Retrieves the current values of all configurable system-level properties.
Input schema
{
"properties": {
"system": {
"description": "The Niagara System to retrieve data from",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Data structure containing all system property values",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for a Niagara System.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "NiagaraExt_SystemData",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetSystemDependencies¶
Returns the four Used* sets (renderers, data interfaces, modules, dynamic inputs) gathered across all emitters and system scripts. These sets are not included in topology structs; call this endpoint separately when needed.
Input schema
{
"properties": {
"system": {
"description": "The Niagara System to scan",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Dependency rollup with four distinct asset sets",
"properties": {
"usedDataInterfaces": {
"description": "Distinct Data Interface classes referenced by any module or dynamic input in this system.",
"items": {
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraDataInterface",
"type": "object"
},
"type": "array"
},
"usedDynamicInputs": {
"description": "Distinct dynamic-input script assets used across all module inputs.",
"items": {
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
},
"type": "array"
},
"usedModules": {
"description": "Distinct module script assets used across all emitters.",
"items": {
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
},
"type": "array"
},
"usedRenderers": {
"description": "Distinct renderer classes used across all emitters in this system.",
"items": {
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
},
"type": "array"
}
},
"required": [
"usedRenderers",
"usedDataInterfaces",
"usedModules",
"usedDynamicInputs"
],
"title": "NiagaraExt_SystemDependencies",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetSystemSchema¶
Returns property schema for Niagara System. Describes all available properties and their types that can be set on a Niagara System.
Input schema
{
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Schema describing all system-level properties",
"properties": {
"propertySchema": {
"description": "Json Schema describing editable properties of a Niagara System.",
"type": "string"
}
},
"required": [
"propertySchema"
],
"title": "NiagaraExt_SystemSchema",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetSystemSummary¶
Returns lightweight system metadata: name, user variables, and one summary entry per emitter. Use this for first contact with an unfamiliar system. For full structural detail call GetEmitterTopology per emitter.
Input schema
{
"properties": {
"system": {
"description": "The Niagara System to summarise.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Summary containing system name, user variables, and per-emitter metadata.",
"properties": {
"emitters": {
"description": "One entry per emitter, in handle order.",
"items": {
"properties": {
"bEnabled": {
"description": "Disabled emitters still exist but produce no particles.",
"type": "boolean"
},
"emitterName": {
"description": "Use as EmitterName in FNiagaraExt_StackItemReference.",
"type": "string"
},
"rendererClasses": {
"description": "Distinct renderer classes on this emitter (de-duplicated set).",
"items": {
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraRendererProperties",
"type": "object"
},
"type": "array"
},
"simTarget": {
"description": "CPUSim or GPUComputeSim.",
"enum": [
"CPUSim",
"GPUComputeSim"
],
"title": "ENiagaraSimTarget",
"type": "string"
}
},
"required": [
"emitterName",
"bEnabled",
"simTarget",
"rendererClasses"
],
"title": "NiagaraExt_EmitterSummary",
"type": "object"
},
"type": "array"
},
"systemName": {
"description": "The system asset name.",
"type": "string"
},
"userVariables": {
"description": "User-exposed parameters on the system (User.* namespace).",
"items": {
"properties": {
"defaultValue": {
"description": "Wrapper struct for FInstancedStruct that simplifies JSON conversion.\n\nRepresents an instanced value that can be one of multiple allowed struct types.\nThe allowed types are determined by BaseStruct metadata (auto-discovered derived types)\nand optional AdditionalTypes metadata (explicitly specified types).\n\nWhen working with this type, check the JSON schema's oneOf array to see all valid types.\nSpecialized types (derived from BaseStruct) are listed first, followed by additional types.",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 14 types defined by Struct. The first 3 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "Wrapper for UEnum references. Use this struct when passing enum values to Niagara variables.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Enum",
"type": "object"
},
{
"description": "Wrapper for DataInterface references. Use this struct when passing DataInterface instances to Niagara variables.",
"properties": {
"dataInterface": {
"description": "Reference to the DataInterface object",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraDataInterface",
"type": "object"
},
"dataInterfaceClass": {
"description": "The class of the DataInterface",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraDataInterface",
"type": "object"
}
},
"required": [
"dataInterfaceClass",
"dataInterface"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_DataInterface",
"type": "object"
},
{
"description": "Wrapper for UObject references. Use this struct when passing UObject instances (textures, materials, etc.) to Niagara variables.",
"properties": {
"object": {
"description": "Reference to the UObject instance",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
},
"objectClass": {
"description": "The class type constraint for the object reference",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"objectClass",
"object"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Object",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2D",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
},
"description": {
"type": "string"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"defaultValue",
"description",
"name",
"type"
],
"title": "NiagaraExt_UserVariable",
"type": "object"
},
"type": "array"
}
},
"required": [
"systemName",
"userVariables",
"emitters"
],
"title": "NiagaraExt_SystemSummary",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.GetUserVariables¶
Returns all user variables defined on the system. User variables are parameters exposed for external control and can be overridden per component instance.
Input schema
{
"properties": {
"system": {
"description": "The Niagara System to retrieve user variables from",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "Collection of all user variables with their names, types, and default values",
"properties": {
"userVariables": {
"items": {
"properties": {
"defaultValue": {
"description": "Wrapper struct for FInstancedStruct that simplifies JSON conversion.\n\nRepresents an instanced value that can be one of multiple allowed struct types.\nThe allowed types are determined by BaseStruct metadata (auto-discovered derived types)\nand optional AdditionalTypes metadata (explicitly specified types).\n\nWhen working with this type, check the JSON schema's oneOf array to see all valid types.\nSpecialized types (derived from BaseStruct) are listed first, followed by additional types.",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 14 types defined by Struct. The first 3 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "Wrapper for UEnum references. Use this struct when passing enum values to Niagara variables.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Enum",
"type": "object"
},
{
"description": "Wrapper for DataInterface references. Use this struct when passing DataInterface instances to Niagara variables.",
"properties": {
"dataInterface": {
"description": "Reference to the DataInterface object",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraDataInterface",
"type": "object"
},
"dataInterfaceClass": {
"description": "The class of the DataInterface",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/Niagara.NiagaraDataInterface",
"type": "object"
}
},
"required": [
"dataInterfaceClass",
"dataInterface"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_DataInterface",
"type": "object"
},
{
"description": "Wrapper for UObject references. Use this struct when passing UObject instances (textures, materials, etc.) to Niagara variables.",
"properties": {
"object": {
"description": "Reference to the UObject instance",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
},
"objectClass": {
"description": "The class type constraint for the object reference",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "Class@/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"objectClass",
"object"
],
"title": "/Script/NiagaraEditor.NiagaraExt_VariableValue_Object",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2D",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
},
"description": {
"type": "string"
},
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"defaultValue",
"description",
"name",
"type"
],
"title": "NiagaraExt_UserVariable",
"type": "object"
},
"type": "array"
}
},
"required": [
"userVariables"
],
"title": "NiagaraExt_UserVariables",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.RemoveEmitter¶
Removes an emitter from a system. Deletes the specified emitter and all its associated scripts, modules, and renderers.
Input schema
{
"properties": {
"emitterToRemove": {
"description": "Reference to the emitter to remove from the system",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"emitterToRemove"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.RemoveModule¶
Removes a module from a script stack. Deletes the specified module and all its inputs from the script's execution stack.
Input schema
{
"properties": {
"moduleToRemove": {
"description": "Reference to the module to remove from the stack",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"moduleToRemove"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.RemoveRenderer¶
Removes a renderer from an emitter. Deletes the specified renderer from the emitter's renderer list.
Input schema
{
"properties": {
"rendererToRemove": {
"description": "Reference to the renderer to remove",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"rendererToRemove"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.RemoveSetParameterEntry¶
Removes a parameter from an existing SetParameters module by name. The module referenced by ModuleRef must be a SetParameters (UNiagaraNodeAssignment) module. Use bIsSetParametersModule in the module topology to confirm before calling.
Input schema
{
"properties": {
"moduleRef": {
"description": "Reference to the existing SetParameters module",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
},
"parameterName": {
"description": "Name of the parameter to remove",
"type": "string"
}
},
"required": [
"moduleRef",
"parameterName"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.RemoveUserVariables¶
Removes user variables from a system. Deletes the specified user variables from the system's user parameter collection.
Input schema
{
"properties": {
"system": {
"description": "The Niagara System to remove variables from",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
},
"variablesToRemove": {
"description": "Array of variable definitions identifying which variables to remove",
"items": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
},
"type": "array"
}
},
"required": [
"system",
"variablesToRemove"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.SetEmitterData¶
Sets property values on a Niagara Emitter. Applies new values to emitter-level properties based on the provided data structure.
Input schema
{
"properties": {
"emitter": {
"description": "Reference to the emitter to modify",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
},
"emitterData": {
"description": "Data structure containing the property values to set",
"properties": {
"propertyValues": {
"description": "JSON blob matching the emitter property schema. Fields use C++ PascalCase (SimTarget, RandomSeed, …). Parse to read individual fields.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "NiagaraExt_EmitterData",
"type": "object"
}
},
"required": [
"emitter",
"emitterData"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.SetModuleEnabled¶
Sets whether a module is enabled. Disabled modules remain in the stack but don't execute. Current state is visible in module topology.
Input schema
{
"properties": {
"bEnabled": {
"description": "True to enable the module, false to disable it",
"type": "boolean"
},
"moduleRef": {
"description": "Reference to the module to enable or disable",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"moduleRef",
"bEnabled"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.SetRendererData¶
Sets property values on a Niagara Renderer. Applies new values to renderer properties based on the provided data structure. Payload shape varies with the concrete renderer class; call GetRendererSchema for the renderer's class to inspect valid properties before writing.
Input schema
{
"properties": {
"renderer": {
"description": "Reference to the renderer to modify",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
},
"rendererData": {
"description": "Data structure containing the property values to set",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for a Niagara Renderer.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "NiagaraExt_RendererData",
"type": "object"
}
},
"required": [
"renderer",
"rendererData"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.SetStackInputData¶
Sets the value of a stack module input and returns the resulting stored value. Updates the value and configuration for a specific module input parameter.
Input schema
{
"properties": {
"inputData": {
"description": "The new value and configuration to apply to the input",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 17 types defined by Struct. The first 6 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "A special case of Local input that stores an Enum value as a string rather than it's raw int.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Enum",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Linked",
"properties": {
"linkedVariable": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
}
},
"required": [
"linkedVariable"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Linked",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Hlsl Expression",
"properties": {
"hlslExpression": {
"description": "A single rvalue hlsl expression defining the value of this input. MUST be a single rvalue with no variable definitions or return statements etc. For example a color could use the expression \"float4(1.0, 0.0, 0.0, 1.0)\"",
"type": "string"
}
},
"required": [
"hlslExpression"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_HlslExpression",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Data Interface",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for this data interface.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DataInterface",
"type": "object"
},
{
"description": "Stack input for a dynamic input.",
"properties": {
"dynamicInputAsset": {
"description": "The dynamic input asset defining this dynamic input.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"dynamicInputAsset"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DynamicInput",
"type": "object"
},
{
"description": "An unsupported input type",
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Unsupported",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector3f",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2f",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4f",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat4f",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
},
"stackInputRef": {
"description": "Reference to the stack input to modify",
"properties": {
"emitterName": {
"type": "string"
},
"inputNameStack": {
"description": "Input Name stack. Requires a valid ScriptName and ModuleName. For a top level module input this will be a single FName. For a dynamic input this could be a chain of several nested dynamic inputs.",
"items": {
"type": "string"
},
"type": "array"
},
"moduleName": {
"description": "Name of the module to reference. Requires a valid ScriptName.",
"type": "string"
},
"rendererIndex": {
"description": "Index of a renderer to reference. Requires a valid EmitterName.",
"type": "integer"
},
"scriptName": {
"type": "string"
},
"system": {
"description": "Represents a reference to a UObject or UClass.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
}
},
"required": [
"system",
"emitterName",
"scriptName",
"moduleName",
"rendererIndex",
"inputNameStack"
],
"title": "NiagaraExt_StackItemReference",
"type": "object"
}
},
"required": [
"stackInputRef",
"inputData"
],
"type": "object"
}
Output schema
{
"properties": {
"returnValue": {
"description": "The value now stored on the input after the operation",
"properties": {
"struct": {
"description": "The struct type for this instanced value. Must match one of the allowed types in the schema.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.ScriptStruct",
"type": "object"
},
"value": {
"description": "Value can be one of 17 types defined by Struct. The first 6 type(s) are specialized types for this context. Additional types may also be valid depending on usage.",
"oneOf": [
{
"description": "A special case of Local input that stores an Enum value as a string rather than it's raw int.",
"properties": {
"displayName": {
"description": "Display value for EnumName. Often more descriptive and useful than the internal EnumName. For informational purposes only, the actual set value of the enum is EnumName.",
"type": "string"
},
"enum": {
"description": "Reference to the UEnum type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Enum",
"type": "object"
},
"enumName": {
"description": "The enum value name",
"type": "string"
}
},
"required": [
"enum",
"enumName",
"displayName"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Enum",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Linked",
"properties": {
"linkedVariable": {
"properties": {
"name": {
"type": "string"
},
"type": {
"description": "Wrapper struct for FNiagaraTypeDefinition that exposes only the UStruct pointer for JSON conversion.\n\nFNiagaraTypeDefinition is a complex struct with internal state. This wrapper simplifies\nJSON conversion by only exposing the Struct field, which is sufficient for reconstruction.",
"properties": {
"classStructOrEnum": {
"description": "Reference to the UScriptStruct, UEnum, or UClass that defines this Niagara type.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/CoreUObject.Object",
"type": "object"
}
},
"required": [
"classStructOrEnum"
],
"title": "ToolsetNiagaraTypeDefinition",
"type": "object"
}
},
"required": [
"name",
"type"
],
"title": "NiagaraExt_Variable",
"type": "object"
}
},
"required": [
"linkedVariable"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Linked",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Hlsl Expression",
"properties": {
"hlslExpression": {
"description": "A single rvalue hlsl expression defining the value of this input. MUST be a single rvalue with no variable definitions or return statements etc. For example a color could use the expression \"float4(1.0, 0.0, 0.0, 1.0)\"",
"type": "string"
}
},
"required": [
"hlslExpression"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_HlslExpression",
"type": "object"
},
{
"description": "Niagara Ext Stack Input Data Data Interface",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for this data interface.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DataInterface",
"type": "object"
},
{
"description": "Stack input for a dynamic input.",
"properties": {
"dynamicInputAsset": {
"description": "The dynamic input asset defining this dynamic input.",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraScript",
"type": "object"
}
},
"required": [
"dynamicInputAsset"
],
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_DynamicInput",
"type": "object"
},
{
"description": "An unsupported input type",
"title": "/Script/NiagaraEditor.NiagaraExt_StackInputData_Unsupported",
"type": "object"
},
{
"description": "float",
"properties": {
"value": {
"type": "number"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraFloat",
"type": "object"
},
{
"description": "bool",
"properties": {
"value": {
"description": "Must be either FNiagaraBool::True(-1) or FNiagaraBool::False(0).",
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraBool",
"type": "object"
},
{
"description": "int32",
"properties": {
"value": {
"type": "integer"
}
},
"required": [
"value"
],
"title": "/Script/Niagara.NiagaraInt32",
"type": "object"
},
{
"description": "Position",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/Niagara.NiagaraPosition",
"type": "object"
},
{
"description": "Niagara ID",
"properties": {
"acquireTag": {
"description": "A unique tag for when this ID was acquired.\nAllows us to differentiate between particles when one dies and another reuses it's Index.",
"type": "integer"
},
"index": {
"description": "Index in the indirection table for this particle. Allows fast access to this particles data.\nIs always unique among currently living particles but will be reused after the particle dies.",
"type": "integer"
}
},
"required": [
"index",
"acquireTag"
],
"title": "/Script/Niagara.NiagaraID",
"type": "object"
},
{
"description": "A point or direction FVector in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z"
],
"title": "/Script/CoreUObject.Vector3f",
"type": "object"
},
{
"description": "A vector in 2-D space composed of components (X, Y) with floating point precision.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector2D.h",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"title": "/Script/CoreUObject.Vector2f",
"type": "object"
},
{
"description": "A 4-D homogeneous vector.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Vector4.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Vector4f",
"type": "object"
},
{
"description": "Quaternion.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Quat.h",
"properties": {
"w": {
"type": "number"
},
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
}
},
"required": [
"x",
"y",
"z",
"w"
],
"title": "/Script/CoreUObject.Quat4f",
"type": "object"
},
{
"description": "A linear, 32-bit/component floating point RGBA color.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Color.h",
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"g": {
"type": "number"
},
"r": {
"type": "number"
}
},
"required": [
"r",
"g",
"b",
"a"
],
"title": "/Script/CoreUObject.LinearColor",
"type": "object"
},
{
"description": "An orthogonal rotation in 3d space.\n@note The full C++ class is located here: Engine\\Source\\Runtime\\Core\\Public\\Math\\Rotator.h",
"properties": {
"pitch": {
"description": "Pitch (degrees) around Y axis",
"type": "number"
},
"roll": {
"description": "Roll (degrees) around X axis",
"type": "number"
},
"yaw": {
"description": "Yaw (degrees) around Z axis",
"type": "number"
}
},
"required": [
"pitch",
"yaw",
"roll"
],
"title": "/Script/CoreUObject.Rotator",
"type": "object"
}
]
}
},
"required": [
"struct"
],
"title": "NiagaraToolsetInstancedValue",
"type": "object"
}
},
"required": [
"returnValue"
],
"type": "object"
}
NiagaraToolsets.NiagaraToolset_System.SetSystemData¶
Sets property values on a Niagara System. Applies new values to system-level properties based on the provided data structure.
Input schema
{
"properties": {
"system": {
"description": "The Niagara System to modify",
"properties": {
"refPath": {
"description": "The reference stored as a soft path string.",
"type": "string"
}
},
"required": [
"refPath"
],
"title": "/Script/Niagara.NiagaraSystem",
"type": "object"
},
"systemData": {
"description": "Data structure containing the property values to set",
"properties": {
"propertyValues": {
"description": "Json values corresponding to the schema for a Niagara System.",
"type": "string"
}
},
"required": [
"propertyValues"
],
"title": "NiagaraExt_SystemData",
"type": "object"
}
},
"required": [
"system",
"systemData"
],
"type": "object"
}