Set Parameter Values
set_paramsWrite Cinema 4D parameter values atomically in a single undo group, with validation for link targets and type-safe vector coercion, returning applied and rejected writes.
Instructions
Write parameter values in one undo group. Each entry is {path, value} where path is either an int id or a DescID path (e.g. [903, 'x'] = position.x). Lists of 3 numbers auto-coerce into c4d.Vector for vector-typed destinations. For DTYPE_BASELISTLINK parameters only, use {link: <handle>} to reference an entity or {link: null} to clear it. Link targets and destination types are validated before any writes. Returns {applied: [{path, value}], errors: [{path, error}]}; inspect errors for rejected writes.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| handle | Yes | C4D entity handle. Shapes: {kind:"object",name?|path?}, {kind:"render_data",name}, {kind:"take",name}, {kind:"material",name}, {kind:"tag",object?|object_path?,type_id?,tag_name?}, {kind:"video_post",render_data,type_id}, {kind:"shader",owner:<handle>,index}, {kind:"gv_node",tag:<tag handle>,id?|name?} (Xpresso GvNode; use list_xpresso_nodes to discover stable path ids — GvNode inherits BaseList2D so set_params/get_params/describe work on it), {kind:"plugin_options",plugin_id,plugin_type?} (plugin_id accepts an int or a format alias like "abc"/"fbx"/"obj"/"usd"/"gltf"; plugin_type defaults to "scene_saver"; resolves to the plugin's settings BaseList2D — describe+set_params it to configure exporter options before save_document). Prefer `path` over `name` when names are not unique. | |
| values | Yes | Writes to apply. Wrapped in an undo group. |