add_rig_bone
Add a bone to a Control Rig Blueprint hierarchy under a parent or at the root, then compile and save. Refuses if PIE is running unless forced.
Instructions
Add a bone to the hierarchy of a Control Rig Blueprint, under parent_name or at the root, then compile and save the blueprint. The engine keeps names unique, so element_key is the name the bone really got. Refused while PIE runs unless force is set.
Returns: { asset_path: string, element_key: string, element_type: string, parent: string, bone_count: int, null_count: int, control_count: int, curve_count: int, other_count: int, total: int, saved: bool, save_error: string }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| 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. | |
| scale | No | Optional [x, y, z] scale for the new bone. | |
| location | No | Optional [x, y, z] world location for the new bone. | |
| rotation | No | PREFERRED: the OBJECT {"roll":R,"pitch":P,"yaw":Y} (any subset, absent axes are 0). The ARRAY form below is [pitch, yaw, roll] -- its index 2 is ROLL, NOT yaw, which once put a PlayerStart on its side. Optional [pitch, yaw, roll] world rotation for the new bone. | |
| bone_name | Yes | Name of the new bone | |
| parent_name | No | Existing BONE to parent the new bone under; omitted or empty puts it at the root | |
| control_rig_path | Yes | Control Rig Blueprint asset path, e.g. "/Game/Rigs/CR_Hero" |