开启辅助访问     
收藏本站

站内搜索

搜索

Minecraft(我的世界)苦力怕论坛

[闲聊] 关于开发情况的闲聊

 发表于 2024-1-2 21:46:31 来自手机|显示全部楼层|阅读模式 IP:天津
本帖最后由 Cat_Anchor 于 2024-1-3 18:08 编辑

嗯,那么,这个帖子将成为首个介绍我的“主附加包”的帖子。
那个附加包是2022年1月开始开发的,也是我第一个附加包,它的大小从一开始的几十KiB增长到峰值10多MiB,后来又因为种种原因降到目前的3~4MiB。至今,已经有了上千的方块、配方,几百物品、实体、地物等。它已经存在将近两年了,我目前主要开发它,所以叫“主附加包”。(最初的版本。所有版本我都做好了留档工作。)

而这个附加包的名字是我一开始就想好的。灵感来源于数学上的“补角”这个概念,这里的“补”即是supplementary,我把这个单词拿来用作附加包名称,也用作内容的命名空间,所以我的附加包里的东西的ID都是supplementary:***。
那么,我已经发布的那些附加包其实都是为这个附加包服务的。一开始,附加包体积小,内容少,开发也方便。可后来,附加包内文件越来越多,我就打算搞一个“附加包测试版”的形式。这个是我1.0.0以前的开发方式。后来,它改名成“附加包预览版”。
再过去几个版本,它最终演变成了“实验性玩法于预览版”的形式,这种形式沿用到现在。实验性玩法有一个独立的文件夹,每个玩法其实都是一个附加包。而我早期发布的那些附加包,就是实验性玩法的前身,最近发布的就是实验性玩法本身。所以我发布的附加包的命名空间都是supplementary,它们最后都合并到了主附加包内。

1.17及以前,可以直接在games/com.mojang里面开发。1.18及以后,API版本升级到30导致了数据迁移,同时,文件读写速度大大降低。我的附加包现在有7000多个文件了,所以开发效率也无形中降低不少。
不过近几天,情况有所改善。通过给MC加入文件提供器,我们可以用本地存储实现访问与修改数据目录,即/data/user/0/、/sdcard/Android/data/等目录里面的内容。我测试了一下,发现用这种方式访问与修改com.mojang目录的速度要比原先的方法快上不少,不过还是比外部要慢一点点。由此,开发效率又提高了一些。(在/storage/****-****/下有这些文件夹,指向/sdcard/Android/data/*、/sdcard/Android/obb/*、/data/user/0/*和/data/user_de/0/*。)

今天我又遇到一个特性,游戏有时候会忽略物品文档中的minecraft:use_modifiers组件,这似乎与minecraft:food组件、remove_mob_effect事件方法有关。但这并没有规律,我的附加包有700多个物品,通过二分法找到那个文档后,游戏忽略的目标又转移了。
不过这个比我上次遇到的那个好些。上次那个是只要新版物品文件中minecraft:creative_category组件(旧写法)和menu_category描述(新写法)一起出现,那么游戏会在加载资源包时立刻崩溃,甚至不会有任何提示或者内容日志。这倒害得我排查几个小时,最后才发现是有一个物品文件中出现了上述情况。
苦力怕论坛,感谢有您~
 发表于 2024-1-6 06:52:00 来自手机|显示全部楼层 IP:广西
MinecraftTian 发表于 2024-1-2 23:27
内容密密麻麻,专业性强,很少有人能看完。

对于一个希望能够做出好的addon的开发者来说,他完全能够做到这一点..这就好比物理学家总会渴望学习新物理,即便非常难,但却是"难啃的,但富有营养并且津津有味"
3#2024-1-6 06:52:00回复收起回复
苦力怕论坛,感谢有您~
 发表于 2024-1-2 23:27:04 来自手机|显示全部楼层 IP:云南省
内容密密麻麻,专业性强,很少有人能看完。
2#2024-1-2 23:27:04回复收起回复
苦力怕论坛,感谢有您~
回复支持

使用道具举报

本版积分规则

本站
关于我们
联系我们
坛史纲要
官方
哔哩哔哩
技术博客
下载
网易版
安卓版
JAVA
反馈
意见建议
教程中心
更多
捐助本站
QQ群
QQ群

QQ群

访问手机版

访问手机版

手机版|小黑屋|系统状态|klpbbs.com

粤公网安备 44200002445329号 | 由 木韩网络 提供支持 | GMT+8, 2024-12-13 08:55

声明:本站与Mojang以及微软公司没有从属关系

Powered by Discuz! X3.4 粤ICP备2023071842号-3