Skip to content

测试与调试 ​

模组开发中,频繁测试是保证质量的关键。本节介绍 MC Studio 提供的所有测试方式和调试工具。

建议

不要等所有功能都做完再测试。每完成一个小功能就立即测试,这样能更快定位问题。

Mod PC 开发包 ​

Mod PC 开发包是一个专门用于模组测试的特殊游戏客户端。与正式版客户端不同,它内置了大量调试功能。

三种启动方式 ​

方式操作场景
编辑器内运行编辑器右上角点击「运行」最常用,开发中快速测试
启动器开发测试作品列表 → 悬停 →「开发测试」可自定义游戏模式、作弊等选项
工具箱启动作品库 → 右上角「工具箱」→ Mod PC 开发包多人联机测试时开第二个客户端

开发者菜单 ​

Mod PC 开发包右上角有一个开发者菜单按钮,提供以下功能:

功能说明
热更修改 Python 代码后一键重载(自动热更失败时使用)
重载关闭并重新加载当前存档,等同于退出再进入
新建存档关闭当前存档,新建一个全新存档进行测试
脚本日志测试打开日志窗口,查看 print 和 logger 输出
CPU 使用分析性能分析工具
内存分析内存占用分析工具

调试 HUD ​

在 Mod PC 开发包中按 F3 和 F4 可以切换不同的调试 HUD 界面,显示实时运行信息:

  • 渲染区块信息
  • 方块调试(准心对准的方块信息)
  • 生物调试(Ctrl + 右键选中生物查看信息)
  • 玩家调试(位置、速度、状态)
  • 性能跟踪(内存、线程)
  • 天气编辑器
  • 音效编辑器

调试设置 ​

打开 Mod PC 开发包的「设置」菜单,可以找到「调试」和「飞行调试」两个额外选项卡,包含数十个开发者选项,例如:

  • 显示区块边界
  • 显示碰撞箱
  • 显示生物 AI 路径
  • 显示红石信号

调试工具 ​

调试工具是 MC Studio 内置的强大调试辅助工具,在电脑端开发测试时会自动启动。

主要功能 ​

功能说明
多端日志查看在电脑上查看本机和手机测试客户端的日志,支持搜索、过滤、暂停
指令调试直接输入 Python 代码在客户端/服务端运行,支持代码补全
组件同步PC 端修改后直接同步到手机测试端,省去重新提审的等待

日志功能详解 ​

  • 关键词搜索:输入关键词高亮匹配,支持正则表达式
  • 标签过滤:按 Developer / Engine / INFO 等标签筛选日志
  • 自定义标签:添加自定义字段作为过滤标签,在日志中以亮绿色显示
  • 暂停/继续:暂停日志打印,暂停期间的日志会被缓存,不会丢失
  • 过往日志:超出显示上限的日志自动保存到本地文件,可随时查看

日志颜色级别

在日志中使用以下关键字可以显示不同颜色,方便区分:

  • [DEBUG] — 调试信息
  • [INFO] — 普通信息
  • [WARNING] — 警告(黄色)
  • [ERROR] — 错误(红色)

Python 指令调试 ​

调试工具支持直接输入 Python 代码在运行中的游戏里执行:

  1. 在调试窗口的代码输入框中输入 Python 代码
  2. 选择「客户端运行」或「服务端运行」
  3. 查看执行结果

支持将常用代码保存为快捷指令,方便重复使用。

手机端测试 ​

安装手机测试客户端 ​

  1. 在 MC Studio →「管理」标签页 → 找到「测试版启动器下载」
  2. 扫码下载手机版测试 APP(支持 Android 和 iOS)
  3. 使用开发者账号登录

上传并测试 ​

  1. 在 MC Studio 中找到作品 →「更多」→「发布」
  2. 填写信息并提交审核
  3. 当作品处于「审核中」状态时,即可在手机测试 APP 中搜索并下载测试

使用调试工具连接手机 ​

  1. 在 MC Studio 中打开「调试工具」
  2. 点击「客户端 IP 连接」,输入手机的 IP 地址
  3. 连接成功后,手机端的日志会实时显示在电脑的调试工具中
  4. 还可以使用「组件同步」功能将 PC 端修改直接推送到手机

局域网多人测试 ​

Mod PC 开发包支持局域网内的多人联机测试:

  1. 在编辑器中点击「运行」,启动 Mod PC 开发包 A
  2. 通过「工具箱」→「Mod PC 开发包」启动另一个客户端 B
  3. 在客户端 B 的「好友」界面找到客户端 A 的世界,加入

同一局域网内的其他开发者也可以用同样的方式加入测试。

热更新调试 ​

在运行游戏时修改 Python 文件后,回到 MC Studio 或编辑器界面,系统会自动检测变更并重载代码。

热更新限制

  • 对函数内实现的修改有较好的支持
  • 新增类、新增文件、全局变量的修改可能无法生效
  • 热更失败时,需要「保存退出到菜单」→ 重新进入存档,完整重载 Mod

常见测试问题 ​

问题解决方法
Mod 不加载检查 manifest.json 中的 UUID 是否唯一
自定义物品不显示检查 identifier 在行为包和资源包中是否一致
Python 报错查看「脚本测试日志」窗口的完整错误信息
JSON 格式错误用 VS Code 打开 JSON 文件,查看红色波浪线标注的位置
手机端不生效检查是否已提交审核且状态为「审核中」