batch_set_actor_transform
Batch-update many Unreal Engine actors' location, rotation, or scale in one undoable transaction, avoiding repeated transform calls, with success and failure counts for unresolved names.
Instructions
Move/rotate/scale MANY actors in a single undoable transaction, each with its own optional location/rotation/scale, reporting success_count, failure_count and the names that did not resolve. Cheaper and atomically undoable versus N set_actor_transform calls. Calls Modify() per actor so their OFPA packages dirty and save_level actually writes them. Takes the same world selector as set_actor_transform, so it reaches a live PIE world too. WARNING: resolves the INTERNAL name only (no editor labels, unlike set_actor_transform); a name it cannot find is counted in failure_count, not raised as an error -- read that number.
Returns: { success_count: int, failure_count: int (unresolved or malformed entries -- check it), updated_actors: [actor JSON re-read after the write], failed_actors?: [string], world_name, world_package, ... }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| world | No | Optional: "editor" (default) | "pie" | "server" | "client" | "pie:N". The response stamps which world answered. | |
| actor_transforms | Yes | Array of objects {actor_name: internal GetName; location?: [x,y,z] array only; rotation?: [pitch,yaw,roll] or the safer {pitch,yaw,roll}; scale?: [x,y,z] array only}. Omitted components keep their current value; an entry with no actor_name just increments failure_count, and a malformed vector silently reads as zero. |