Skip to content

BetterAutoSave v0.16.2 — Forge 1.20.1 / NeoForge 1.21.1 异步存档优化

Choose a tag to compare

@github-actions github-actions released this 02 Jul 00:01
· 48 commits to main since this release
8d547b1

v0.16.2 — mixinextras 版本范围热修(多模组启动崩溃)

0.16.2 是一个打包热修:放开内嵌 MixinExtras 依赖的版本上界,修复在装有较新模组的整合包中服务器启动即崩的问题。仅影响 Forge 1.20.1 端;不改任何运行期行为

修了什么

自 0.13 起,Forge 端把内嵌的 mixinextras-forge 在 jarJar 里声明为 [0.3.5,0.5)——上界封死在 0.5 以下。当整合包里存在要求 mixinextras >=0.5 的模组(如 C2ME、letmefix、hariplayer、dcfixes 等)时,两个版本区间交集为空,FML 的 JarSelector 选不出一个能同时满足所有模组的 mixinextras 版本,直接在 mod 加载阶段抛「conflicting versions of io.github.llamalad7:mixinextras-forge」并崩服,服务器无法启动。这条上界原本是为了避免版本冲突,但生态普遍升到 0.5.x 后,它反而成了冲突的唯一来源(#22

本版把「内嵌版本」与「声明范围」解耦:内嵌固定 0.5.4,对外声明兼容范围放开为 [0.3.5,)。放开上界后,FML 会选出所有模组共同满足的最高版本;仍保留 0.3.5 下界,不会反向强制只装 0.4.x 的整合包升级。NeoForge 端由平台自带 MixinExtras、不经 jarJar 内嵌,不受影响

验证

  • 实构建产出的自包含 jar 内 META-INF/jarjar/metadata.jsonrange=[0.3.5,)artifactVersion=0.5.4,内嵌 mixinextras-forge-0.5.4.jar
  • 对照崩溃日志区间求交(BAS [0.3.5,) 与其余模组 >=0.5.0~>=0.5.4)后收敛到 0.5.4,冲突消除

升级

  • 替换 jar 即可,无配置变更
  • 与需要 mixinextras 0.5.x 的模组(C2ME 等)同装、且此前卡在启动崩溃或退回旧版规避的服务器:建议升级