用途:管理 Unity 项目中的 ScriptableObject 数据资产,包括创建、查找、复制、删除、读取与修改字段,以及 JSON 导入导出。
主要能力:scriptableobject_create 新建资产;scriptableobject_get 读取属性;scriptableobject_set / set_batch 通过反射设置顶层公开字段;scriptableobject_get_serialized_properties 列出 Inspector 序列化属性(含私有 [SerializeField]、嵌套、数组子项);scriptableobject_set_serialized_property(_batch) 按 propertyPath 设置嵌套字段、数组/列表、UnityEngine.Object 引用、私有字段、Gradient、AnimationCurve 和 [Flags] 枚举;scriptableobject_list_types / find 查找类型与实例;duplicate 复制;delete 删除;export_json / import_json 交换 JSON。
使用方式:多数读写技能需传入 assetPath(资产路径),设置字段按成员类型解析值,如布尔用 true/false/1/0/yes/no/on/off,Vector 用 "1,2,3",Color 用 "1,0,0,1";数组需先用 items.Array.size 调整大小再设元素;对象引用使用 valueAssetPath。script_create 模板 "ScriptableObject" 用于创建 SO 脚本。精确名称与返回值以 schema 接口为准。
执行模式与限制:读取类技能为 SemiAuto 可直接执行,但 export_json 传 savePath 会写盘;写类技能为 FullAuto,需 grant 单次执行返回结果;delete 为高危操作,审批模式下返回 MODE_FORBIDDEN,仅 Bypass 或 Allowlist 可调用。变更会自动保存到资产。不存在 create_type、get_properties、set_property 等命名;import_json 若无字段变化会返回警告,应视为未写入并核对字段名。