feat:上传mcguide-开发指南部份

This commit is contained in:
Othniel su
2024-12-23 10:57:59 +08:00
parent 7292166c88
commit 0dc59fa4f0
3297 changed files with 63375 additions and 0 deletions

View File

@@ -0,0 +1,105 @@
---
front: https://nie.res.netease.com/r/pic/20220408/b1b536bb-fc51-450d-99d9-648585f79bb9.png
hard: 入门
time: 10分钟
selection: true
---
# 用 Mod PC 开发包进行局域网多人测试
在这篇教程中,你将了解如何在我的世界开发工作台(MC Studio) 中启动 Mod PC 开发包,进行同一局域网内的多人联机测试。
## 一、安装我的世界开发工作台(MC Studio)
因为多人测试需要通过官方编辑器进入,你需要:
- 一个开发者账号
- 在电脑上安装好 我的世界开发工作台
1. 访问 [我的世界开发者官网](https://mc.163.com/dev/index.html),将页面滚动到中间,直至能看到 我的世界开发工作台(MC Studio) 的部分:
![Untitled](./images/Untitled.png)
2. 点击【下载工具】,下载并安装软件,安装完成后,就可以进入下一步了。
## 二、局域网联机测试的两种情况和步骤:
注:文中的 "A""B"仅为便于理解所加。
A. 单个开发者在单台设备进行联机测试
1. 运行当前编辑器正在开发的Mod此时会启动一个【Mod PC开发包A】
2. 在编辑器中启动一个新的【Mod PC开发包B】
3. 在【Mod PC开发包B】的【好友界面】找到并加入步骤1中启动的【Mod PC开发包A】
4. 进行多人联机测试
B. 多个开发者多台设备进行多人联机测试
1. 开发者A运行当前编辑器正在开发的Mod此时会启动一个【ModPC开发包A】
2. 同一局域网内的开发者B在编辑器中启动一个新的【Mod PC开发包B】
3. 开发者B在【Mod PC开发包B】的【好友界面】找到并加入开发者A启动的【Mod PC开发包A】
4. 开发者A和开发者B进行多人联机测试
上述两种步骤的本质都是:
1. 在编辑器中点击运行启动【Mod PC开发包A】与单机测试相同
2. 根据不同情况选择在自己电脑或另一位开发者的电脑上启动一个新的【Mod PC开发包B】
3. 通过局域网的好友联机功能进行多人测试
## 三、在编辑器中运行当前Mod
首先我们在编辑器中点击右上角的运行启动Mod PC开发包A对我们的Addon或玩法地图进行测试这一步骤与本地单机测试一样只需要点击运行等待Mod PC开发包启动并自动进入游戏即可
![Untitled](./images/startgame.png)
## 四、启动新的 Mod PC 开发包
注:根据步骤二中的不同情况选择在自己电脑或另一位开发者的电脑上进行本步骤操作
1. 打开【MC Studio主界面】进入【作品库】能看到右上角有个【工具箱】按钮
![Untitled](./images/Untitled1.png)
2. 点击【工具箱】选择【Mod PC开发包】点击启动 MC 游戏:
![Untitled](./images/Untitled2.png)
3. 此时会弹出版本选择窗口,点击最新的稳定版即可:
![Untitled](./images/chooseversion.png)
等待加载一段时间后,你最终会看到游戏的主界面:
![Untitled](./images/Untitled4.png)
## 五、找到并进入其他人的局域网世界
1. 在主界面,点击【游戏】:
![Untitled](./images/Untitled5.png)
2. 在顶部的分页中,找到【好友】,点击打开:
![Untitled](./images/Untitled6.png)
3. 在好友界面中,你能看到同一局域网下其他人的游戏,在其中找到要测试的地图名,点击进入游戏:
![Untitled](./images/Untitled7.png)
4. 如果弹窗询问是否下载行为包和资源包,是因为房主所在的游戏加载了额外的资源,点击【下载并加入】
![Untitled](./images/Untitled8.png)
5. 加载一段时间进入游戏后,在 Esc 打开的菜单中,你应该可以看到游戏内的自己和其他玩家,此时便可以开始进行多人联机测试了
![Untitled](./images/Untitled9.png)
## 六、修改测试选项
在启动器设置可以修改部分ModPC开发包测试时的选项如下图
![Untitled](./images/Untitled10.png)
1. 测试玩家名称:即修改开发包测试时玩家的名称,如图
![Untitled](./images/Untitled11.png)
> 这里的设置暂时只对通过工具箱打开的ModPC开发包生效开发测试和编辑器内的运行测试暂不生效
2. 清除缓存:即清除开发包的缓存,使得开发包客户端与服务端一致
3. 自定义分辨率:即修改开发包启动时的分辨率,在多分辨率适配时,可通过此处设置固定分辨率进行测试,如图
![Untitled](./images/Untitled12.png)

View File

@@ -0,0 +1,131 @@
# Mod PC开发包介绍
ModPC开发包是开发者在使用我的世界工作台(MCStudio)进行模组开发测试过程中非常重要和常用的一个功能,下面对其进行简单的介绍。
## 一、什么是Mod PC开发包
Mod PC开发包本质上是一种特殊类型的MC游戏客户端而MC游戏客户端主要负责加载MC的游戏存档基于存档来构建专属于这个存档的游戏世界。普通版本的MC游戏客户端是玩家进入游戏的窗口而Mod PC开发包的主要使用人群是模组的开发者们。
我们都知道开发模组实际上是修改游戏的存档和脚本逻辑当我们写完一个玩法或功能时需要将模组存档用游戏客户端运行起来进入游戏世界来验证自己的功能是否生效而Mod PC开发包就是负责加载开发者们模组存档的应用程序。举个例子当我们在编辑器中点击运行进行测试时实际上就是使用ModPC开发包打开我们的当前编辑的模组存档如下图所示。
![ModPC](./images/ModPC.gif)
## 二、开发者菜单
ModPC右上角有一个开发者菜单该菜单内置了一键热更、重载存档、新建存档测试和呼出调试日志窗口等开发者测试时最常用的功能帮助开发者提升测试效率如下图所示。
![ModPC](./images/developerlist.png)
1. **热更**修改零件代码并保存后ModPC开发包会自动重载零件代码此热更功能是在自动热更不生效时使用,热更成功的标志可以参考调试日志窗口中的重载日志,如下图所示:
![ModPC](./images/developerlist02.png)
2. **重载**关闭存档并重新加载需要多次重复测试同一个存档时使用该操作等同于在ModPC开发包如下操作esc调出菜单→点击退出→点击确定→等待退出→点击游戏→选择刚才关闭的存档→等待加载进入存档进行测试。
3. **新建存档**关闭当前存档新建另一个存档进行测试在需要新开一个存档时使用该操作等同于关闭ModPC开发包后台创建一份新存档并勾选导入当前编辑的组件ModPC开发包加载该存档进行测试。
4. **脚本日志测试、CPU使用分析工具和内存分析工具**:用于开启对应的功能窗口,等同于我的世界开发工作台中的工具箱中的同名功能,如下图所示
![ModPC](./images/developerlist03.png)
5. **隐藏此按钮**:关闭开发者菜单按钮,如需再次开启需在我的世界开发工作台的设置菜单中开启,如下图所示
![ModPC](./images/developerlist04.png)
## 三、Mod PC开发包的其他特色功能
为了提升开发者进行模组开发和测试效率ModPC开发包内置了许多调试相关的功能
如下图在ModPC开发包打开设置菜单我们可以发现新增了"调试"和 "飞行调试"两个选项如下图中1所示),在这两个菜单中,内置了丰富的调试相关选项,下面着重介绍三个与调试关联较大的部分:
![debug](./images/debug.png)
### 1.开发者选项
如上图中2所示调试菜单中有用数十个调试相关的开发者选项运用这些选项能够帮助玩家更直观的了解游戏运行的信息从而更好的对自己开发的功能进行调试。如下图我们打开显示区块地图、边界和打开生物信息的选项就能在游戏中看到对应的信息帮助我们判断对应的游戏状态。
![debug](./images/debugsettings.gif)
### 2. 调试HUD
调试HUD是指将一些调试相关的信息直接显示在ModPC开发包最上层能让开发者直观了解游戏的实时运行信息。根据显示内容调试HUD分成了多个界面其开关和切换的方式有两种
a.开发者选项中HUD切换菜单通过下拉菜单切换到不同的HUD查看对应的游戏信息如下图所示选择渲染区块菜单HUD中便会显示与渲染区块相关的信息。
![debug](./images/HUDselect.png)
b.在ModPC开发包中使用按键F3和F4进行HUD的切换效果与a一致。
### 3. 顶部菜单栏
通过上一步的两种切换方式,切换到顶部菜单栏,这里集成了多种游戏内资源/信息的查看和调整功能,如网易版的后处理效果,动画混合树,方块信息查看等等,接下来简要介绍几个与开发调试相关性较强的功能。
>注意:顶部菜单栏的功能是为了让开发者了解到游戏世界运行背后的信息,并对部分游戏功能进行调试,不当的修改操作可能会导致存档损坏,开发者需要谨慎进行修改操作,并视情况做好存档的备份工作。
1. PostProcess(后处理效果):如下图所示打开后处理功能在这里可以进行几种后处理效果的调试当前有5种效果已经支持用API调用(图中绿色框内),可参考<a href="../../mcdocs/1-ModAPI/接口/后处理/索引.html" rel="noopenner"> 后处理接口 </a>
![postprocess](./images/postprocess.png)
2. Animation(动画编辑器):如下图所示打开动画编辑器,在这里可以查看和修改玩家的动画混合树(修改会生效存盘,请谨慎修改原版动画)
![animationblendtree](./images/animationblendtree.png)
3. Block Debug(方块调试):如下图所示打开方块调试功能,在这里能个显示当前玩家准心所对准的方块信息,方便开发者了解方块的状态。
![blockdebug](./images/blockdebug.png)
4. Debug Control(调试控制):如下图所示打开调试控制窗口,在这里你可以自定义一些指令,并把它创建为按钮触发,这样能让开发者快速多次地执行常用的指令,如创建一个围栏用于测试,传送玩家到固定点等等
![debugbutton](./images/debugbutton.png)
5. Level Debug(世界调试):如下图打开世界调试窗口,在这里可以查看当前世界和区块的一些信息,也可以点击重载世界按钮重新加载存档。
![leveldebug](./images/leveldebug.png)
6. Mob Debug(生物调试):如下图所示打开生物调试窗口,在这里你可以使用`Ctrl`加上`鼠标右键`选中一个生物,并查看它的信息
![mobdebug](./images/mobdebug.png)
7. Options(选项):如下图所示打开选项窗口,这里你可以查看和编辑游戏的所有选项设置
![options](./images/options.png)
8. Player Debug(玩家调试):如下图打开玩家调试窗口,在这里你可以查看与玩家相关的信息
![playerdebug](./images/playerdebug.png)
9. Weather Editor(天气编辑器):如下图所示打开天气编辑器效果,在这里你可以查看和编辑天气相关的属性
![weathereditor](./images/weathereditor.png)
10. Sound Editor(音效编辑器):如下图所示打开音效编辑器,在这里你可以查看和试听游戏内的音效
![soundeditor](./images/soundeditor.png)
11. Geometry Editor(网格编辑器):如下图所示打开网格编辑器,在这里你可以查看和编辑游戏所有模型的网格信息(修改会存盘,需谨慎)
![geometry](./images/geometry.png)
12. Track(性能跟踪):如下图所示分别打开性能跟踪窗口,在这里你能查看游戏运行时的内存占用和各类线程触发情况。
![track](./images/track.png)
>注:其他未提及内容开发者可自行体验,后续会对部分内容进行调整。
## 四、什么时候需要用到Mod PC开发包
了解了Mod PC开发包的特色功能那么什么时候会用到它呢下面列出了Mod PC开发包的几大使用场景。
### 1. 内嵌编辑器
当我们用编辑器打开一个存档时后台会启动一个内置的Mod PC开发包以支持我们在编辑器进行地形编辑资源放置等功能。
>注内嵌编辑器的ModPC开发包只开启了部分功能如游戏地形区块的加载和卸载我们在地形编辑器所操作的地形就依赖这个功能。
![ModPCEditor](./images/ModPCEditor.png)
### 2. 编辑器内运行测试
当我们在编辑器的右上角点击运行时实质上就是打开一个新的ModPC开发包来加载模组存档不同于编辑器内置的ModPC开发包让开发者进行测试如下图所示。
![ModPC](./images/ModPC.gif)
### 3. 启动器中进行开发测试
在启动器界面,当我们把鼠标悬浮在一个模组作品上时,会出现`开发测试`的按钮点击开发测试的本质实际上也是用ModPC开发包打开模组存档但开发测试可以在加载之前调整一些游戏的设置选项如下图所示
![developtest](./images/developtest.gif)
### 4. 工具箱打开Mod PC开发包多人联机测试
就像[ModPC开发包多人测试](./0-ModPC开发包多人测试.md)的教程中所说的那样当我们需要在一台电脑开多个ModPC开发包时可以通过工具箱中找到对应的选项单独打开未加载存档的ModPC开发包
![ModPCEditor](./images/toolbox.png)
## 四、注意事项
>当我们将云端列表中的作品下载到本地时,选中作品有一个`上线测试`的功能,这里的`上线测试并不是用ModPC包打开存档`,恰恰相反,为了让开发者在上线前对自己的作品进行更接近实际应用场景的测试,上线测试功能使用了官方正式版客户端进行模拟测试,让开发者能够了解模组真正上线后的运行情况。

View File

@@ -0,0 +1,333 @@
---
front: https://nie.res.netease.com/r/pic/20220926/9ef0cb38-6193-48b9-aa7e-d0aef0bda97c.png
hard: 入门
time: 20分钟
selection: true
---
# 使用调试工具进行手机和电脑端调试
## 调试工具简介
调试工具是一款强大的测试辅助工具,经过本次升级,它现在的主要功能有:
1. [多端日志查看](#多端日志查看)在电脑上查看本机和其他设备上测试游戏的日志包括手机测试客户端和其他PC开发包的测试日志。
2. [指令调试](#指令调试)对正在进行中的游戏测试进程直接使用python代码进行调试并且提供代码补全功能。
3. [组件管理与同步](#组件管理与同步)自测阶段在PC端修改组件文件直接同步到手机测试端省去漫长的机审等待时间。
![](./images/A1.png)
## 启动方式
由于现在调试工具已经正式取代了脚本测试日志现在在PC端进行开发测试时将自动拉起调试工具。
此外,如果是使用调试工具进行手机测试端调试,我们可以从【作品库】中的【基岩版组件】或【基岩版服务器】分页,点击【工具箱】按钮,选择【调试工具】启动。
![](./images/A3.png)
> 如果你仍希望继续使用旧版脚本测试日志,可以点击左下角的【切换到脚本测试日志】按钮。同样,在脚本测试日志窗口也可以切换使用调试工具。
## 界面介绍
调试工具的界面共分为以下几个部分:
1. **连接选项**:将客户端与调试工具连接起来,并且可以管理连接设备。
2. **日志分页**用于在不同日志分页之间进行切换。分页页签上会显示测试平台类型icon和账号。
3. **日志窗口**查看PC开发包、手机测试服的进程日志支持搜索、筛选等
4. **调试窗口**:汇集多个重要调试功能于一体,主要包括:
① 输入python调试代码在客户端/服务端运行;
② 查看指令历史记录,同时还能将指令保存为快捷指令便于后续重复使用;
③ 上传文件/文件夹至手机测试服组件目录,或从客户端下载文件;
④ 将PC端对组件源文件的修改直接同步至手机测试服。
![](./images/A4.png)
## 连接客户端
如果是在电脑端测试作品,调试工具将被自动拉起并连接到现在正在测试的作品。
**对于连接手机测试客户端的情况:** 打开调试工具后,我们会看到如下界面。由于尚未连接测试客户端,我们只能看到两个连接选项按钮,以及“等待客户端连接”的提示信息。
![](./images/A5.png)
由于我们是第一次打开调试工具,所以需要**手动**进行客户端的连接。
调试工具支持的客户端类型包括:
1. 安卓手机测试客户端
2. iOS手机测试客户端
3. ModPC开发包
> 其中,手机测试客户端可以从[开发者平台](https://mcdev.webapp.163.com/#/square)首页顶部①位置点击下载,登录自己的开发者账号后即可在手机上进行组件自测。
>![](./images/A6.png)
我们**首先启动上述的客户端**,然后回到调试工具。我们有两种方式将测试客户端与我们电脑上的调试工具相连。
### 1.通过“客户端IP连接”按钮直接添加客户端
当我们需要快速添加设备时可以点击【客户端IP连接】按钮输入测试客户端的IP地址然后点击【确定】即可发现调试工具连接上了客户端日志开始打印。
![](./images/B2.gif)
### 2.通过“连接地址管理”管理客户端连接
【连接地址管理】给开发者提供了添加、浏览、移除当前调试工具允许连接的测试客户端的功能。
当我们需要添加新的客户端时,首先点击【连接地址管理】按钮,然后点击【+】新增一个连接设备输入我们要连接的测试客户端的IP地址最后点击【确定】即可。
再次点击【连接地址管理】按钮我们可发现接受的连接地址列表中出现了我们刚刚添加的设备。列表中会显示出我们连接设备的IP地址、设备登录的玩家昵称、设备的登录平台安卓、windows等
![](./images/B1.gif)
此外,为了便于区分不同的连接过的客户端,开发者可以在对应客户端的【自定义别名】列,对其添加更多描述信息。如果这里添加了别名,那么当该客户端连接了调试工具后,分页标签会显示这个别名。
![](./images/A16.png)
![](./images/A17.png)
> **注IP地址查询方式**
> - 对于 Windows 平台,可以打开**网络和Internet 选项**,选择当前的**以太网**,在属性里就可以看到 IPv4 地址。或者按住 win+R 输入 `cmd`,打开命令行,输入 `ipconfig`,可查看当前的 IPv4 地址
> - 对于 Android 平台,点击 wifi 按钮,进入查看当前 wifi 的详情页,即可看到当前 wifi 的 IP 地址
**客户端的连接遵守如下规则:**
1. 当客户端从未连接过任何调试工具时,需要调试工具主动连接,连接方法参考上文。
2. 当客户端成功连接过调试工具时,会自动向上次连接的调试工具请求连接。
3. 当客户端已经连接到调试工具,其他调试工具无法再主动连接该客户端,需要它与现有的调试工具断连后才能继续连接。
## 多端日志查看
日志查看是调试工具的基本功能。在本次更新中,我们在旧版基础上丰富了日志窗口的功能,给开发者的日志查看提供更多便利。
除了基本的日志信息显示外,日志窗口还支持一下功能:
### 1.关键词搜索
输入关键词后,会在日志区搜索并高亮关键词,按回车键可跳转至下一个关键词。输入框右侧会显示当前搜索到的关键词数,以及目前定位的是其中第几个。
- 搜索结果通过蓝色底色标出,当前定位的搜索结果通过白色底色标出。
- 输入关键词后,除了按回车键定位到下一条搜索结果外,也可通过右侧的上下箭头跳转到上一条或下一条搜索结果。
![](./images/A7.png)
### 2.暂停打印与继续打印
点击【暂停刷日志】按钮,即可暂停日志打印。暂停期间的日志将被缓存,并在右侧显示缓存的日志条数。当开发者点击【重新显示日志】按钮时,即会将暂停期间的日志重新显示在日志窗口中,而不会丢失。
![](./images/B4.gif)
### 3.日志数量上限与过往日志
调试工具的日志显示数量是有上限的。开发者在日志区右键,可调整日志消息数量上限。
![](./images/A12.png)
例如我们调整数量上限为1000那么当日志消息数超过1000以后调试工具将只会显示最新的1000条日志消息。如果开发者有查看过往日志的需求可以点击【显示过往日志】按钮它将自动帮你打开过往日志存放的文件夹找到对应的txt文件即可浏览之前的日志消息。
![](./images/A13.png)
### 4.日志搜索条件选项
搜索条件选项部分,我们提供了大小写匹配、全字匹配、正则匹配三种选项供开发者使用。
![](./images/A10.png)
### 5.日志按标签过滤
点击标签过滤器按钮,会显示当前可用的标签筛选项。过滤器会有默认的四个标签:
- MCSSafaia
- Developer
- Engine
- INFO
过滤器默认不勾选任何一个标签,代表过滤器未开启,同时按钮显示为灰色。当开发者勾选其中任何一个选项时,则会**仅显示包含该字段的日志**。另外,如果同时勾选了两个或两个以上标签的日志,则会显示**至少包含其中一个标签的日志**。
另外开发者也可以通过在日志中加**自定义标签**。点击【自定义日志标签管理】选项,在上方输入框输入想要被定义为标签的字段,点击【添加】按钮,即可将其添加到日志标签列表中,并默认将其勾选。被添加为自定义标签的字段,将在日志中被显示为亮绿色。
![](./images/F2.gif)
### 6.日志拷贝、复制与清除
日志操作相关的选项一共有3个
1. **日志拷贝**:拷贝当前日志窗口中的所有日志。因为超过日志显示数量限制被截去的部分不会被拷贝,开发者可以在过往日志文件夹找到。
2. **日志导出**:导出当前日志窗口中的所有日志。因为超过日志显示数量限制被截去的部分不会被导出,开发者可以在过往日志文件夹找到。
3. **清除日志**:清空当前日志窗口中的所有日志。
![](./images/A11.png)
### 7.日志浏览选项
日志窗口右下角可以通过下拉框选择需要显示的字体大小同时开发者也可以直接按住ctrl后上下滚动鼠标滚轮条件字体大小。
另外还支持一键跳转至当前日志窗口中的第一条日志和最后一条日志,见下图。
![](./images/B5.gif)
> **温馨提示:**
> 对于日志来说,包含 4 个颜色级别,分别为 debuginfowarningerror在打印日志里使用 [DEBUG][INFO][WARNING][ERROR] 关键字可以显示不同的颜色,对于开发者来说,通过使用这些关键字可以方便的区分开发者日志和原有日志。
### 8.日志窗口与调试窗口的收起与展开
如果你觉得不需要查看日志窗口和调试窗口中的任意一个,可以拖动二者之间的中线至窗口最左或最右侧,收起其中一个窗口。
窗口在收起状态下会在边缘显示一个展开按钮,点击可以展开被收起的窗口。
![](./images/F3.gif)
## 报错信息跳转
报错信息跳转功能可以帮助您通过调试工具快速点击报错信息,直接跳转到对应的代码文件,从而迅速定位并修复问题。
::: danger 注意
需要开发测试或编辑器内启动`ModPC`开发包,直接启动`ModPC`开发包或在开发测试过程切换存档会导致跳转失败。
:::
![redirect](./images/redirect.gif)
## 指令调试
指令调试是调试工具的另一重要功能,可用于输入游戏脚本层 python 测试代码,例如 import 部分模块用于执行功能,或者打印某些全局变量等。另外开发者还可以使用指令历史记录、读取快捷指令等方式快速复用之前使用过的指令。
> **注意:指令调试功能仅进入游戏后才会生效。**
### 1.输入python代码进行调试
开发者可以在代码输入框中输入python代码然后根据需要选择【客户端运行】或【服务端运行】。
![](./images/A15.png)
并且,调试工具的代码输入框**支持补全库**。
![](./images/B6.gif)
举个例子,当我们手机测试客户端进入游戏后,可以在调试工具的代码输入窗口输入:
```
from Preset.Model.SdkInterface import SdkInterface
import client.extraClientApi as clientApi
a = SdkInterface()
a.SetPopupNotice(clientApi.GenerateColor("YELLOW") + "消息通知", "消息子标题")
```
然后点击【客户端运行】按钮执行代码,即可在手机上看到物品栏上方弹出了提示信息。
![](./images/A14.png)
### 2.查看代码调试历史记录
开发者的之前输入**并执行**过的调试代码都会被记录下来。
需要查看、复用历史调试代码时,我们需要点击左侧调试窗口的【读取快捷指令】选项,打开快捷指令窗口。在【历史记录】分页中,我们可以看到之前被执行过的所有代码。
点击每条记录左侧的三角按钮可以展开对应的代码,开发者如有需要也可以直接在这里对历史记录代码进行编辑。
如果需要复用某一条代码,直接点击其右侧的【复制】按钮,即可将该代码完整复制到剪贴板。然后我们回到主界面,在调试窗口的代码区进行粘贴就能再次执行
![](./images/B7.gif)
### 3.保存和读取快捷指令
开发者可以将调试窗口代码区里的python代码保存为快捷指令供后续需要使用的时候快速复用。
点击【读取快捷指令】按钮,在左侧点击【个人指令】分页,即可创建自定义指令的分类。不同的分类可以让开发者按照自己的使用习惯对指令进行归类管理。
![](./images/B8.gif)
创建好分类后我们在调试窗口输入框中输入代码并点击【保存快捷指令】按钮然后为保存的指令输入一个指令名称例如这里我们将其命名为“指令1”并选择这条指令需要保存到哪个分类中这里我们选择“分类1”。选择完毕点击保存后即可在【快捷指令】窗口发现该指令被保存到了分类1下。
![](./images/B9.gif)
在保存快捷指令的时候,如果有需要,也可以直接在指令分类选择框下部直接输入一个新的分类名称,按回车后,即可用该名称创建一个新的分类。点击【确认】后,即可将当前指令保存到这个新的分类下。
![](./images/B10.gif)
与历史记录中一样,我们只需要在【快捷指令】窗口下点击每个指令右侧的【复制】按钮,就可以将指令复制到剪贴板中,然后粘贴到调试窗口的输入框中就可再次运行。
![](./images/B11.gif)
## 组件管理与同步
当我们需要在手机端进行测试时,很可能会遇到需要调整部分代码的情况,但为了修改几行代码,重新走一遍完整的机审流程,会造成很多不必要的时间耗费。这次更新,我们在调试工具上新加入了组件管理与同步功能,尽最大可能帮助开发者减少调试过程中的时间成本。
> **注意!!!**
> 组件同步功能暂时只能同步组件中的`behavior packs`、`resource packs`中的文件,不可用于同步对地图做出的修改。
### 1.组件管理
首先,我们可以点击左侧调试窗口的【组件管理】按钮,打开管理窗口。这里会展示我们测试客户端上装载过的所有组件。
> “装载”指在客户端上下载过的,并非当前测试游戏进程中加载的。
![](./images/A18.png)
我们可以选择任意组件展开他们的层级,查看内部详细文件结构。右键其中的文件/文件夹,可以进行如下操作:
1. **下载**:下载选中的文件/文件夹到下载路径。下载路径可以点击窗口左下方的【下载路径】按钮打开。
2. **上传文件**:仅对`behavior packs``resource packs`的子文件夹有效。点击后可以向测试客户端该文件夹中上传文件。
3. **上传文件夹**:仅对`behavior packs``resource packs`的子文件夹有效。点击后可以向测试客户端该文件夹中上传另一个文件夹,作为其子文件夹。
4. **删除**:仅对单独的文件或`behavior packs``resource packs`的子文件夹有效。点击可以从客户端删除该文件/文件夹。
5. **重命名**:仅对单独的文件或`behavior packs``resource packs`的子文件夹有效。点击可以重命名该文件/文件夹。
### 2.组件同步
如果我们希望将电脑上做出的修改整体同步到测试客户端,可以点击每个组件名称右侧的蓝色【同步】按钮。点击后,我们选择电脑中需要被同步过去的组件的路径,再按需要选择【全量同步】或【差量同步】。等同步进度条读条完毕,即代表选中的组件被同步至客户端了。
![](./images/B12.gif)
> **2022.12.15版本更新直接选择Studio作品进行同步**
> 现在在进行组件同步时新增了通过下拉框直接选择Studio作品库作品进行同步的方式
> ![](./images/A21.png)
> **全量同步可差量同步的区别:**
> - 全量和差量的区别主要在于对脚本目录Script中文件的处理方式。
> - **全量同步**不管脚本目录是否发生变化,都会将脚本文件重新打包并同步
> - **差量同步**会检测脚本目录是否发生变化从而选择性打包脚本目录同步。
> - 其余非script目录的文件都是发生变化才同步。
> **选择同步路径的注意事项:**
> - 需要注意的是,一定要点击选中该路径再点击确定,否则可能会出现文件夹没有正确选中,导致无法同步的问题。
> ![](./images/A19.png)
>
> - 如果选择的路径有误,比如:
> ① 选择的不是一个可识别的作品路径
> ② 电脑上尝试同步的组件与测试客户端上选择的组件中manifest文件的uuid无法匹配
> 则会弹窗提示修改同步失败,需要开发者选择正确的路径再进行同步。
> ![](./images/A20.png)
### 3.组件同步示例
例如我们手机测试端原本有一个纯空白地图组件现在我们打开其PC端的工程文件在其中添加一个玩家预设挂接一个蓝图零件并使用逻辑编辑器编辑其逻辑为每帧发送消息“AAA”的蓝图零件。
我们保存修改然后直接使用组件同步功能将PC端的修改同步至手机测试端。等同步完毕我们就可以在手机测试端上重新打开该地图组件并发现成功实现每帧发送消息“AAA”。
![](./images/B13.gif)
## 客户端断开连接
客户端退出、网络异常等因素都会导致与调试工具的连接断开。断开后:
- 日志窗口会保留断连之前的日志记录,开发者依旧可以使用搜索、筛选等功能,只是日志不会继续打印了;
- 左侧调试窗口将不再可用,下方按钮会全部置灰;
- 会有【断开日志连接】消息提示。
![](./images/A8.png)
重启客户端,会再次自动连接至调试工具,并通过另开分页的形式记录新的日志。
![](./images/A9.png)
## 更多菜单
调试工具右上角有一个【更多】菜单,包括以下功能:
1. 工具版本号查看
2. 官网教程文档跳链
3. 开发者常见问题汇总
4. 最新版本手机测试包下载链接
5. 清除工具缓存
![](./images/A22.png)

View File

@@ -0,0 +1,46 @@
---
front: https://mc.res.netease.com/pc/zt/20201109161633/mc-dev/assets/img/jieshao_images002.88de5768.png
hard: 入门
time: 5分钟
selection: true
---
# PE测试版启动器下载简要介绍
***
### 阶段目标了解并下载PE测试版启动器
#### TAG PE测试版启动器
#### 第一阶段:找到【测试版启动器】下载位置
#### 第二阶段:下载并使用测试版启动器
为了方便开发者们测试自己的PE组件我们为大家准备了PE测试版启动器供大家在测试环境查看组件表现。
在开发者平台的左下方找到【测试版启动器】下载按钮点击后会弹出PE测试版启动器的下载二维码及按钮根据自身手机的情况选择不同的二维码下载即可。
![](./images/jieshao_images001.png)
![](./images/jieshao_images002.png)
#### 具体测试办法(需要成功安装测试版客户端):
1、 将需要测试的组件,上传至开发者平台并提审,使组件处于“审核中”的状态
2、 打开手机上的测试客户端,使用开发者账号登入游戏
3、 找到提审的组件,下载安装即可进行测试
注意如在提审时将组件设置为付费可以在测试版中申请钻石进行购买目前该功能仅限安卓PE版测试用启动器。

View File

@@ -0,0 +1,38 @@
---
front: https://mc.res.netease.com/pc/zt/20201109161633/mc-dev/assets/img/jieshao_images002.88de5768.png
hard: 入门
time: 5分钟
---
# 组件打包发布
## 组件配置
在组件的右键菜单选择配置可以对作品的UUID与版本号进行修改
![image-20220523212424951](./images/image-20220523212424951.png)
点击随机UUID将会自动对所有资源包和行为包的UUID进行随机
选中对应的资源包右键可以复制其UUID
![image-20220523212517202](./images/image-20220523212517202.png)
在开发测试阶段,并不需要关注版本号,而当你的组件需要发布到平台,为了让组件上线后能顺利更新,每次发布前需要提升组件版本号,这里你既可以单独升级个别资源包,也可以全选升级所有资源包。
## 组件发布
当你的组件一切准备就绪,就可以在组件的右键菜单里,点击进行发布。
发布时会自动选中平台已有的同名组件,并自动勾选更新已有作品,因此请尽量保持作品与平台名称一致。
![image-20220523213006425](./images/image-20220523213006425.png)
点击确定后,我们会对作品进行自检,然后导出必要的文件,并压缩成<名称_时间.zip>的命名格式,上传到开发者平台,并打开浏览器对应链接,你可以在这个页面进一步编辑器组件的详情,最后点击保存。
## 组件转换
同时我们还提供了组件间的转换功能你可以在右键菜单里找到它将AddOn方便的转换为地图或服务器Mod
![image-20220523213431590](./images/image-20220523213431590.png)

View File

@@ -0,0 +1,129 @@
---
front:
hard: 入门
time: 10分钟
selection: true
---
# UI调试工具
## 简介
UI调试工具是调试工具的子工具主要用于调试游戏运行时的界面它的主要功能包括
1. 原生界面支持:支持对《我的世界》原生的界面进行调试,当然也支持调试您的自定义界面。
2. [控件结构树解析](#控件结构树解析):支持对控件结构进行解析,以树的形式展示,并包含基础信息。
3. [游戏中定位控件](#游戏中定位控件):支持通过游戏中点击的方式快速定位控件。
4. [控件属性展示](#控件属性展示):展示选中控件的属性。
![](./images/U1.png)
除了调试之外UI调试工具对熟悉和学习原生界面也大有帮助。
## 启动方式
> 目前仅支持电脑端UI调试我们会在2.5版本支持手机端
首先,我们需要对希望调试的作品进行开发测试,并打开调试工具,参考[使用调试工具进行手机和电脑端调试](./1-使用调试工具进行手机和电脑端调试.md)。
调试工具连接到开发包后,点击调试工具的**UI调试**按钮在新的窗口中打开UI调试工具。
![](./images/U2.png)
## 界面介绍
调试工具的界面共分为以下几个部分:
1. **调试操作**用于开关UI调试功能以及重新加载数据。
2. **控件树展示**:在这里展示游戏当前的界面的控件结构,以及基础信息。
3. **属性面板**:展示控件树中选中的控件的属性值,例如控件当前的路径。
![](./images/U3.png)
## 开始调试
在游戏中打开希望调试的界面然后在UI调试工具中勾选“调试UI”开始调试。
> 建议电脑端调试时使用触屏模式更方便在游戏和UI调试工具之间切换。
![](./images/U4.png)
开始调试之后,游戏的鼠标点击将用于控件选择,而非游戏内的操作。此时按键的反应仍然是可以正常生效的。
如果需要在游戏中切换界面可以先取消勾选“调试UI”。
游戏中切换界面时UI调试工具会自动刷新控件结构。如果没有正常刷新可以手动点击上图中的“重新加载数据”按钮对控件结构进行刷新。
## 控件结构树解析
下图中的界面表示当前游戏内界面的控件结构。
![](./images/U5.png)
此界面中展示如下信息:
- 控件的树结构,即父子关系
- 控件名称例如pause_screen
- 眼睛符号表示该控件是否可见。例如pause_screen当前可见
- 控件的基础类型以图标的形式展示图标与界面编辑器中的图标含义相同例如pause_screen是一个画布。
- ![](./images/U6.png)
支持在此界面进行控件搜索,在搜索框内输入控件名称或者部分名称,按回车键可以进行搜索,例如下图。
> 目前不支持模糊搜索,请准确输入包含下划线在内的控件名称或者控件的部分名称
![](./images/U7.png)
点击眼睛符号可以切换其可见性,如下图。但是控件的可见性可能受多种因素控制,因此在此界面控制可见性不一定会生效
![](./images/U10.gif)
右键控件可以复制其控件路径我们目前提供两种复制方法以下图的loading_bars_background控件为例
- 相对根节点的路径为:"loading_bars_background"
- 完整路径为:"/pause_screen/loading_bars_background"
![](./images/U9.png)
## 游戏中定位控件
开启调试工具后,在游戏中点击,可以快速定位当前界面的控件。
![](./images/U8.gif)
开启显示控件轮廓后可以对UI控件轮廓进行显示辅助进行UI控件的点选。
![](./images/uits.png)
不同控件的轮廓颜色和透明度如下表所示:
| 控件类型(英文) | 控件类型(中文) | 控件颜色 | 控件颜色透明度 |
| --- | --- | --- | --- |
| custom | 自定义渲染类型 | 橘色 | 25.00% |
| dropdown | 下拉框 | 橘色 | 25.00% |
| edit_box | 文本编辑框 | 橘色 | 25.00% |
| label | 文本框 | 红色 | 50.00% |
| image | 图片 | 粉红色 | 10.00% |
| scrollbar_box | 滚动块 | 橘色 | 25.00% |
| scroll_track | 滚动条 | 绿色 | 10.00% |
| selection_wheel | 选择滚轮 | 橘色 | 25.00% |
| slider | 滑动条 | 绿色 | 10.00% |
| slider_box | 滑动块 | 橘色 | 25.00% |
| toggle | 开关 | 橘色 | 25.00% |
| button | 按钮 | 绿色 | 10.00% |
| combox | 多选框 | 橘色 | 25.00% |
| rich_text | 富文本 | 橘色 | 25.00% |
| mul_lines | 多行文本 | 橘色 | 25.00% |
| anim_porecess_bar | 动画进度条 | 橘色 | 25.00% |
| grid | 网格 | 蓝色 | 1.50% |
| input_panel | 输入面板 | 蓝色 | 1.50% |
| panel | 面板 | 蓝色 | 1.50% |
| scroll_view | 滚动列表 | 蓝色 | 1.50% |
| stack_panel | 布局面板 | 蓝色 | 1.50% |
| stack_grid | 布局网格 | 蓝色 | 1.50% |
| screen | 画布 | 透明 | 0.00% |
# 控件属性展示
对于选中的控件,在属性面板中会显示他的属性,如下图。目前主要以查看为主,没有修改的功能。可以在属性的值上右键,通过菜单来拷贝某个属性的值。
![](./images/U11.png)

View File

@@ -0,0 +1,72 @@
---
front:
hard: 入门
time: 10分钟
selection: true
---
# 性能监测与调试
随着模组内容的不断扩充和发展,开发者们制作的模组体量和复杂度越来越高,所需要的计算机资源越来越大,因此可能导致同一个模组在高性能设备和低性能设备的表现差异较大,开发者也会经常收到来自玩家的反馈,模组卡顿,游戏闪退等情况,为了尽可能保证大部分玩家的正常游戏体验,维护开发者的口碑,我们强烈建议开发者在模组制作后期,使用编辑器的性能工具对模组进行监测和调试,评估模组的性能表现,并寻找可以优化的性能问题。
## 1.性能监测工具
> 该工具仅支持在2.7稳定版及以上的ModPC开发包使用不支持低版本或者上线测试的正式客户端。
性能监测工具是用于开发者监测ModPC开发包运行游戏时的帧率、内存、CPU占用率等常规性能数据的一款工具开发者可以在启动开发包并加载模组后打开此工具选择对应的游戏进程进行监测通过监测工具的数据曲线变化我们可以了解到这个模组运行过程中对GPU、CPU和内存的占用情况从而判断玩家在体验模组过程中的游戏体验是否流畅。
例如原生游戏的帧率FPS一般在60帧左右如果开发者加载模组后发现帧率曲线存在强烈的波动且均值在20帧左右那么这个模组会严重破坏玩家的游戏体验甚至导致游戏崩溃强烈建议开发者对此模组进行优化。
### 使用方式
1. 通过编辑器→运行开发测试直接启动ModPC开发包等方式加载对应的存档或模组
2. 在启动器的工具箱中打开性能监测工具,如图
![图片](./images/performanceentrance1.png)
>也可以直接在ModPC开发包的快捷菜单中打开
![图片](./images/performanceentrance.png)
3. 选择第1步中启动的游戏进程一般来说单人测试只需启动一个ModPC开发包也只有一个游戏进程。
![图片](./images/performance_open.png)
4. 在ModPC开发包进行正常游戏操作并同时观察监测工具中的数值与曲线变化。
![图片](./images/performancetool.png)
5. 当停止监测时,会自动将当前的监测数据保存为图片,点击下方历史记录即可查看。
![图片](./images/performancehis.png)
## 2.脚本性能监测工具
脚本性能监测工具用于监测模组/存档中,脚本代码内不同函数的调用耗时火焰图。
### 使用方式
1. 与性能监测工具类似先使用ModPC开发包加载某个存档并在工具箱或快捷菜单中打开此工具。
2. 选择游戏进程后,配置监测时间,并开启监测,如图:
![图片](./images/scripttool.png)
3. 耐心等待监测结束,点击【查看火焰图】。
![图片](./images/scripttoolresult.png)
4. 根据火焰图结果定位调用频率过高或耗时过长的函数,进行对应的代码优化
![图片](./images/profile.png)
## 3.内存分析工具
内存分析工具与脚本性能监测工具类似,主要用于监测模组/存档中,不同脚本对游戏内存的占用火焰图。
### 使用方式
1. 使用ModPC开发包加载某个存档并在工具箱或快捷菜单中打开此工具。
2. 选择游戏进程后,配置监测时间,并开启监测,如图:
![图片](./images/ramtool.png)
3. 耐心等待监测结束,点击【查看火焰图】。
![图片](./images/ramtoolresult.png)
4. 根据火焰图结果定位调用频率过高或内存占用过大的脚本,进行对应的代码优化。
![图片](./images/ramprofile.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 378 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 566 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 341 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 295 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 483 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 842 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 409 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 573 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 618 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 791 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 417 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 272 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 388 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 369 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 833 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 553 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 259 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 688 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Some files were not shown because too many files have changed in this diff Show More