SuperAPI AI 工具集

uloop-record-input

测试与质量

查看项目

更新于 10-15 22:12

技能介绍

用途:在 Unity PlayMode 中逐帧录制键盘和鼠标输入,保存为 JSON 文件,用于捕获玩法过程、复现 bug 或生成端到端(E2E)输入序列供回放。

主要能力:通过 Input System 的设备状态差分,捕获按键、鼠标移动、点击和滚轮事件。支持按键过滤,只录制指定按键。

使用方式: 开始录制:uloop record-input --action Start 带按键过滤开始:uloop record-input --action Start --keys "W,A,S,D,Space" 停止并保存:uloop record-input --action Stop 停止并保存到指定路径:uloop record-input --action Stop --output-path scripts/my-play.json

参数:--action 为枚举,默认 Start,可选 Start(开始录制)或 Stop(停止并保存);--output-path 为字符串,默认自动生成,保存在 .uloop/outputs/InputRecordings/ 下;--keys 为逗号分隔的按键过滤,默认空字符串表示所有常见游戏按键。

输出:CLI 打印 JSON,包含 Success(是否成功)、Message(状态消息)、Action(执行的动作)、OutputPath(保存路径,仅 Stop 时有值)、TotalFrames(录制帧数,仅 Stop 时有值)、DurationSeconds(录制时长秒数,仅 Stop 时有值)。响应中不含 RecordingId、StartTimestamp、KeysCaptured 或逐帧数据,帧数据仅存在于 OutputPath 指向的 JSON 文件中。

确定性回放:回放会逐帧注入输入,因此游戏本身也必须是确定性的才能产生相同结果。若录制将用于 E2E 测试、bug 复现或回放验证,设计断言或游戏逻辑前应阅读 references/deterministic-replay.md。

前提条件:Unity 必须处于 PlayMode;必须安装 Input System 包(com.unity.inputsystem);仅在项目已使用新 Input System 时使用。