set_data_table_cell
Set a specific element in a DataTable array column by row index, editing a struct sub-field or scalar value via ImportText, then save it. Use for targeted array cell updates without JSON/CSV imports.
Instructions
Set one element of an array column in a DataTable row (a field of a struct element, or a scalar element) by direct ImportText, bypassing the JSON/CSV importer, and save. Returns before_value, after_value, write_verified; an unregistered GameplayTag still becomes None (write_verified:false) and is saved anyway.
Returns: { table_path, row_name, column_name, row_index, cell_property, resolved_property, array_length, before_value, after_value, changed, already_set, import_succeeded, write_verified, success, warning?, saved, save_error? }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | ExportText/ImportText string to write (e.g. "Material.Bone" for a bare FGameplayTag value, or an enum's internal OR display name) | |
| row_name | Yes | Name (key) of the row to edit | |
| row_index | Yes | Index into that array to edit (0-based; errors honestly if out of range, never a silent OOB read/write) | |
| data_table | No | Alias of table_path (the DataTable asset path, e.g. "/Game/Data/DT_Items"); table_path wins when both are given | |
| table_path | No | Full asset path of the DataTable (data_table also accepted) | |
| column_name | Yes | Name of the row-struct field holding the array (display name or authored/internal name both accepted, same fallback as get_data_table_column) | |
| cell_property | No | Name of the sub-field on the array element STRUCT to set (display or authored name); omit/empty for a scalar array (e.g. TArray<FGameplayTag>/TArray<FName>) to edit the element itself |