Skip to main content
摘要:本文聚焦「🛠️ 调试控制台与作弊指令」,梳理核心概念、关键方法与落地实践。
重要性: Roguelike 游戏的随机性是测试的噩梦。如果没有一套强大的上帝工具,QA 根本无法验证”第 50 层刷出的神器是否会导致闪退”。

1. 核心指令集 (Command List)

建议接入开源库(如 SRDebuggerIngameDebugConsole),实现以下指令:

1.1 资源控制

1.2 流程控制

1.3 装备与掉落

1.4 无敌与状态


2. 快速调试技巧

2.1 编辑器快捷键绑定

在 Unity 编辑器中设置自定义快捷键,大幅提升调试效率:

2.2 游戏状态快照 (Snapshot)

实现游戏状态的快速保存/恢复,用于反复测试同一场景:
[!TIP] > 随机种子是关键:恢复快照时必须同时恢复随机种子,否则后续的随机事件会完全不同。

2.3 条件断点与日志过滤

2.4 可视化调试 (Gizmos)


3. 实时变量调节 (Runtime Tweaking)

3.1 ScriptableObject 热重载

3.2 调试面板 (SROptions 风格)

3.3 命令行参数

支持启动时通过命令行设置调试参数:
启动参数示例:

4. 自动化测试脚本 (Auto-Play Bots)

为了测试服务器压力或数值崩坏,需要简单的 AI 脚本:

4.1 基础挂机机器人

4.2 随机操作机器人

4.3 压力测试机器人


5. 性能监控面板

5.1 实时 FPS 与内存

5.2 关键系统监控


6. 错误追踪与上报

6.1 异常捕获

6.2 游戏回放录制

[!IMPORTANT] > 确定性回放需要游戏逻辑完全确定性:相同输入 + 相同随机种子 = 相同结果。这对于多人游戏同步和 Bug 复现极其重要。

7. 安全与权限 (Security)

7.1 编译条件

7.2 后门锁设计

如果必须在 Release 版保留(为了线上救火),必须加密码锁或设备 ID 白名单:

7.3 白名单机制


8. 推荐插件与工具

商业/开源插件

自研工具建议


9. 调试清单 (Checklist)

发布前必查

  • 所有 #if UNITY_EDITOR 宏正确使用
  • 调试快捷键不会打包进 Release
  • 控制台密码已更新
  • 白名单设备 ID 已配置
  • 崩溃上报服务已启用
  • 日志级别已设置为 Error 或更高

常见调试场景