SuperAPI AI 工具集

mutagen-reference

数据与分析

查看项目

更新于 10-30 18:19

技能介绍

用途

mutagen-reference 是一个面向 Skyrim 插件记录类型的离线架构查询技能。它回答的是“某记录类型有哪些字段、各字段是什么类型、是否可写、枚举有哪些合法值、多态字段可取哪些分支”这类结构性问题,而不是读取某个具体记录的数值。例如“ARMO 有哪些字段、哪些可编辑”属于本技能;“这个插件里这件钢甲的护甲值是多少”属于结合本架构进行的记录读取,而非架构查询。

主要能力

  • 按类型名(如 Armor、MagicEffect)或 xEdit 四字符签名(如 ARMO、MGEF)定位记录类型;索引同时收录两种形式,两者常不一致时也能解析。
  • 返回字段清单,包括字段名、展示类型、基数(scalar、enum、formlink、list、dict、substruct、polymorphic、value)以及是否可写。
  • 提供枚举字段的合法取值列表,以及多态字段允许的具体分支类型。
  • 对同一签名拆分为多个类型变体的情况(如 GMST 分为 GameSettingBool、GameSettingFloat、GameSettingInt、GameSettingString)提示按实际数据类型选择。
  • 覆盖范围由对 Mutagen 记录库的反射自动生成,因此已知类型集合等同于该库建模的类型集合。

使用方式

  1. 打开索引 references/index.jsonl,每行一条 JSON,映射类型名与 xEdit 签名到所在分片文件及行号;用精确的完整引号标记(如 "name":"Armor" 或 "sig":"ARMO")搜索。
  2. 命中后只读取索引指定的那一行 schema 块(offset 为行号,limit 为 1),不要整体加载索引或分片。
  3. 遇到字段的 ref、arms、target 等指针时,按需再查对应类型、枚举或分支的 schema,同样只读一行。
  4. 每次都重新读取,不凭记忆回答字段存在性、可写性或取值,避免会话压缩后凭印象编造。

适用场景

  • 在读取某类记录前,确认其字段构成。
  • 在写入或修改记录前,确认目标字段是否可写、值应为什么类型、枚举合法值或多态分支是否匹配。
  • 核对 xEdit 签名与库内类型名的对应关系。

限制

  • 仅覆盖所固定的 Mutagen 版本所建模的记录类型;索引中缺失的类型意味着该库未建模,属于已知的库与 xEdit 覆盖差异,此时技能会明确警告并拒绝编造 schema。
  • 技能本身不含写入执行逻辑;它只说明架构,实际写入由相应的写入工具按其预检规则执行。
  • 条件(CTDA)中的表单链接字段在展示上被规范化为 FormLink<T>,无法体现 FormLinkOrIndex 的索引模式区别,涉及表单与索引差异时需在引擎侧确认。
  • 多态字段的实际分支需在应用时解析,静态架构无法预先得知当前是哪个分支。