HMCL-dev / HMCL

A Minecraft Launcher which is multi-functional, cross-platform and popular
https://hmcl.huangyuhui.net
GNU General Public License v3.0
6.89k stars 676 forks source link

关于 自动更新整合包 的一些优化建议 #2174

Open zkitefly opened 1 year ago

zkitefly commented 1 year ago

来自 KOOK 的反馈:

image

目前HMCL的服务器整合包,这种自动更新的整合包功能真的很棒,我希望这个功能原来越好,所以我有几个宝贵的意见在这里提一下!

1:整合包中的模组和材质包从modrinth.com 或者 www.curseforge.com 进行下载。好处,降低自建网站宽带成本。提高下载速度。保护原MOD分发权。 2:平时我的整合包也发布到 www.curseforge.com 和 modrinth.com 所以,我只需要告诉用户下载对应平台的某个整合包就可以了,降低网站带宽。因为整合包用的人真多太多了!小水管带不动!

burningtnt commented 1 year ago

我在想这个需求是不是需要一种全新的整合包格式。 现有的整合包格式中允许从其他网站下载吗?如果不行的话整合包里面就得塞个 hmcl.modpack.json 了

zkitefly commented 1 year ago

我看了下源码,发现 自动更新整合包 不具备通过 Curse ID 来下载个更新 Mod ,但 McBBS 整合包格式支持,并且也有自动更新整合包的所有功能,他的问题就是还在使用旧版本的 Curse ID 的获取还是旧版本的 Api ,他目前已经关闭了

如果将其翻新,并将这套逻辑搬到 自动更新整合包 那,再加个在制作整合包时检测 mods 文件夹的 jar 模组 Cruse ID 并将其中填充的开关(灵感来自 XMCL),那就太棒了!?

https://github.com/zkitefly/HMCL/blob/a7adde53de1ebc9ecd7c3e56ff5176904b5508b0/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/mcbbs/McbbsModpackCompletionTask.java#L194-L276

~那我为啥不直接用 McBBS 整合包格式呢?~

所以,目前 HMCL 整合包还有些小调整和小优化,希望黄鱼能抽空弄一下呢?