New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug] 1.20.4 使用自动安装同时下载 OptiFine 与 Forge 会导致兼容性问题 #2975
Comments
目前我们讨论有两种方案(@burningtnt)
还在继续讨论中... |
目前待定的方案是: 当 Minecraft 版本 >=1.20.4 时,在安装完 OptiFine 步骤后,将 libraries 的 optifine installer.jar 的 META-INF/mod.toml 删除 |
BCMLAPI 下下来的 OptiFine 根本就不标准,直接删掉会爆炸的。。。 |
什么不标准? |
就,PCL 下的 OptiFine 删掉 mods.toml 加载不了 |
对比一下? |
This comment was marked as off-topic.
This comment was marked as off-topic.
(THis is the issue of HMCL.) The OptiFine downloaded by HMCL '自动安装' works same as installed with OptiFine Installer. |
Whoops, sorry. And I understand. |
You are right. That's what PCL2 should do, not HMCL. |
结束,那就是 PCL2 实现的有问题 PS:喂这是 HMCL 的 Issue 啊,不是 MCLF-CN 之类的公共讨论区啊 |
手动安装没有问题 |
经过一些测试得出, 使用 OptiFine Jar Install 方法的启动器(如 PCL )无法使用 1 号方法
测试步骤
而使用 HMCL 自动安装安装出来的 OptiFine 然后按照 1 号方法却是正常的 补充:PCL 用 OptiFine Jar 的 Install 方法,然后单独安装 Forge,最后将 client json 合并 |
问题 1:自动安装无法在已经有 Forge 的情况下安装 OptiFine
1.20.4 Forge 主类变为了
net.minecraftforge.bootstrap.ForgeBootstrap
,需要加入白名单问题 2:自动安装同时下载 OptiFine 与 Forge 会导致兼容性问题
1.20.4 Forge 的 ClasspathLocator 不再受到环境的限制。它曾今在非开发环境是被禁用的,但现在在任何环境均会启用
https://github.com/MinecraftForge/MinecraftForge/blob/1.20.1/fmlloader/src/main/java/net/minecraftforge/fml/loading/moddiscovery/ClasspathLocator.java#L41-L42
https://github.com/MinecraftForge/MinecraftForge/blob/1.20.x/fmlloader/src/main/java/net/minecraftforge/fml/loading/moddiscovery/ClasspathLocator.java#L40
导致 OptiFine 在模组文件夹下时,因其带有 ITransformationService 的实现不被加载为普通模组
但放置在 classpath 内时,不会有上述逻辑而被直接加载为普通模组,但其实内部根本没有 @ Mod 标识的类
The text was updated successfully, but these errors were encountered: