- 致编者:请牢记我们的域名wiki.mcbe-dev.net!
- 致编者:欢迎加入本Wiki的官方交流QQ群或Discord服务器!
- 基岩版1.19.31现已发布!(了解更多)
- Inner Core现已支持Xbox模组联机!(了解更多)
- 如果您是第一次来到本Wiki,欢迎注册一个账户
- 点击顶部的“编辑”或“编辑源代码”按钮即可编辑当前页面
- 请知悉:在不登录时也可以编辑和新建页面,但是您当前的IP地址会记录在编辑历史中
教程:制作附加包/运行、调试与导出
包的导入[编辑]
在开发附加包的过程中,我们需要大量的运行测试来确保我们新增的每一个功能都能够在游戏中正常运行。
在此之前,通常的做法是将工程文件打包为 mcpack
(或 mcaddon
),然后导入到游戏中并在新建存档时应用。使用这种方式意味着开发者每次做出更改后都必须重新打包并导入更改后的附加包,且由于 Minecraft 的包应用机制——游戏会在新建存档时复制应用的包至存档目录下的相应文件夹中( behavior_packs
或 resource_packs
),为保证修改能够确切的被应用到游戏中,一般情况下会另外新建存档并在此存档中应用更改后的包来进行测试,相当麻烦。
为此,Mojang提供了一个较为人性化的解决方案。
开发包目录[编辑]
开发包目录分为行为包开发目录(development_behavior_packs)与资源包开发目录(development_resource_packs)
其在不同设备下的文件路径如下:
平台类型 | 行为包路径 | 资源包路径 |
---|---|---|
Android | /storage/emulated/0/games/com.mojang/
development_behavior_packs 新版路径 /storage/emulated/0/Android/data/ com.mojang.minecraftpe/files/games/ com.mojang/development_behavior_packs |
/storage/emulated/0/games/com.mojang/
development_resource_packs 新版路径 /storage/emulated/0/Android/data/ com.mojang.minecraftpe/files/games/ com.mojang/development_resource_packs |
Windows 10 | C:\Users\<用户名>\AppData\Local\Packages\
Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\ games\com.mojang\development_behavior_packs |
C:\Users\<用户名>\AppData\Local\Packages\
Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\ games\com.mojang\development_resource_packs |
IOS | - | - |
包的加载[编辑]
Minecraft 会在启动时加载普通包目录及开发包目录下的所有包文件。
对于普通包目录下的包文件,当玩家在存档中应用这些包时,游戏会将其复制到对应的存档目录下,在这之后,玩家在游戏中加载的都是对应存档下的包文件,所以对普通包目录下的包文件修改甚至删除都不会影响到存档;而对于开发包目录里的包文件,当在某个存档里应用它们时,游戏并不会将它们复制到存档文件夹内,而是直接加载开发包目录下的 “源文件” ,因此开发者可直接对其进行编辑,并在完成编辑后通过退出重进存档的方式来测试最新版本的包。
综上所述,在开发过程中开发者可将工程文件直接放置于对应的开发包目录下,方便测试。
包的加载顺序[编辑]
普通包目录和开发包目录位于同级目录,启动 minecraft 时,游戏会自动扫描存储在普通包目录(如资源包、行为包)和开发者目录中的附加包。
无论包是存放在开发者目录还是普通包目录中,游戏会将它们混合显示在同一个列表中。这意味着,玩家在游戏中的附加包管理界面(如设置菜单或世界选项中)看到的所有可用包文件,不会区分它们来自哪个目录
游戏会优先加载开发者目录下的包文件,如果在开发者目录和普通包目录中有相同 UUID 的包,通常开发者目录中的包会覆盖普通包目录中的包,并且游戏会加载开发者目录下的版本。
由于游戏优先加载开发者目录下的包,如果两个包的 UUID 相同,普通包目录中的包将不会被加载或会被覆盖。这可能导致普通包目录中的包无法正常工作,甚至看起来像是普通包目录中的包失效了。
为避免冲突或加载问题,最好的做法是确保每个包的 UUID 唯一,并避免在两个目录中同时使用相同的包。
包的导出[编辑]
在开发完毕后,开发者要做的事情就是将包导出并打包分发给其他玩家进行使用。这一行为的本质其实就是将工程文件复制黏贴至其他目录下并压缩为 zip 文件,更改后缀名为 .mcpack
或 .mcaddon
。下面是几种较为常见开发场景下的操作要点。
Win10 端[编辑]
与其他平台不同,Win10 端有可能出现游戏目录下文件被加密的情况,此时若尝试将附加包工程文件以文件夹的形式移动或者复制至其他盘符目录下,系统将阻止该操作。在此情况下,建议直接进入游戏目录下将包文件打包压缩为 zip 文件,再将压缩后的 zip 文件移动至其他目录,在弹出的询问是否将文件解密对话框中选择“是”选项即可。
Android 端[编辑]
进入游戏根目录,找到需要导出的附加包文件夹,复制至其他目录下即可