这个漏洞表现为:在世界生成期间将 NBT 建筑放入世界时,如果该建筑替换了任何类型的 BlockEntity,就可能导致游戏死锁。比如刷怪笼、箱子、讲台、床、告示牌等等。也就是说……很糟糕。你的游戏会卡住并冻结,Tick 也不再运行。
问题的根源在于,用于将建筑方块放入世界的方法并不适用于世界生成环境。它在内部使用了错误的 world 对象。这个模组修复该漏洞的方式很简单:如果传入 nbt 放置方法中的 world 是 WorldGenRegion 类,就直接跳过对这些不安全方法的调用。更多信息和更深入的细节请查看上面的漏洞报告。
对于模组来说,这个漏洞可能会更频繁地出现,因此作为预防措施,安装这个模组可能是个不错的主意。
这个漏洞不会出现在 1.17.x 及以下版本中;它已在 1.19 及以上版本中被修复。看起来它只存在于 1.18.x。
要在开发环境中使用,请将以下内容添加到 build.gradle 的 repositories 块中:
maven {
// FeatureNBTDeadlockBeGone
url "https://nexus.resourcefulbees.com/repository/maven-public/"
}
然后在 build.gradle 的 dependencies 块中添加:
FORGE:
runtimeOnly fg.deobf("com.telepathicgrunt:FeatureNBTDeadlockBeGone-Forge:2.0.0+1.18.2")
FABRIC:
modRuntimeOnly "com.telepathicgrunt:FeatureNBTDeadlockBeGone-Fabric:2.0.0+1.18.2"
QUILT:
modRuntimeOnly "com.telepathicgrunt:FeatureNBTDeadlockBeGone-Quilt:2.0.0+1.18.2"
将 2.0.0+1.18.2 替换为你想要的版本。
友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作
历史访问人数:1,313,074 | 历史访问人次:1,625,592
今日访问人数:150 | 今日访问人次:161
昨日访问人数:26,708 | 昨日访问人次:29,775
Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.
❤ Powered by GermMC 京ICP备17023959号-6