set_blueprint_component_array_element
Patch, insert, or remove one element in a TArray property on a Blueprint component template while verifying all sibling elements remain unchanged.
Instructions
Author ONE element of a TArray property on a Blueprint component TEMPLATE (own SCS, or ICH-aware for a component inherited from an ancestor Blueprint): patch named struct members of an existing element, insert a new element at an index, or remove one. Every OTHER element is exported before and after and compared, so a whole-array rewrite that quietly loses the empty/None gaps cannot pass itself off as a targeted edit. There is deliberately NO 'move' operation.
Returns: { success, error?, data: { blueprint_name, component_name, property_name, source, operation, index, inner_type, num_before, num_after, fields_applied[], field_errors[], siblings_unchanged, siblings_changed[], element_value, post_compile_num, post_compile_element, compiled, saved, save_error?, verification } }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | Optional bool (default true): save the Blueprint package after the compile | |
| force | No | Optional. This command is REFUSED while a Play-in-Editor session is running: it either compiles a Blueprint (the reinstancer can retain a world, and CheckForWorldGCLeaks is Fatal -- it KILLS the editor) or writes to disk (Editor.AllowSavingAssetsDuringPIE=0 makes the engine refuse the write, so it would report success without writing a byte). Stop PIE and retry instead; force=true runs it anyway, at your own risk. | |
| index | Yes | 0-based element index. set_fields/remove need an existing index; insert accepts 0..Num (Num appends) | |
| fields | No | Object of { StructMemberName: value } applied to the element. Used by set_fields, and by insert when the element type is a struct | |
| compile | No | Optional bool (default true): compile so the edited template reinstances | |
| element | No | Whole-element JSON value. Used by insert for NON-struct element types (or instead of 'fields' for a struct) | |
| operation | No | 'set_fields' (default), 'insert' or 'remove' | |
| property_name | Yes | Name of the TArray property on the component template | |
| blueprint_name | No | Blueprint asset path or short name | |
| blueprint_path | No | Alias of `blueprint_name` (same value, same meaning). Accepted because sibling tools spell this parameter differently; prefer `blueprint_name`. | |
| component_name | Yes | Component variable name (own or inherited) |