截图
介绍
Concurrent Chunk Management Engine (Forge)
由 ishland / RelativityMC 制作的 C2ME 的非官方 Forge 移植版,适用于 Minecraft 1.20.1 和 1.18.2。原模组:https://modrinth.com/mod/c2me-fabric
Minecraft 在单个线程上生成、加载、保存和照亮区块。在现代多核 CPU 上,这意味着当你因新地形而卡顿时,大部分核心都处于空闲状态。C2ME 让这些工作并行化。它是在 Fabric 上实现流畅探索和快速世界预生成的引擎,现已移植到经典的 Minecraft Forge。
这是社区移植版,并非由原 C2ME 团队制作或认可。所有核心引擎工作都归功于他们;本项目将其带到 Forge。请在此处报告 Forge 特有的问题,而不要向上游 C2ME 报告。

支持与错误报告
**加入 Discord:https://discord.gg/s7BYs6Njj5**
这是我处理问题的地方,也是联系我最快捷的方式。崩溃、模组冲突、关于该运行哪个版本的问题,或者生成速度比预期慢的整合包:发到那里,我会查看。来自真实整合包的报告正是本模组中大多数兼容性修复的来源。
请附上你的 latest.log(或崩溃报告)以及整合包名称和版本。
功能
- 多线程世界生成:地形、生物群系、特性和结构在所有核心上并行生成。
- 多线程区块 I/O:加载和保存不再阻塞游戏线程。
- 多线程光照。
- 无 tick 视距:看得更远,而不会 tick(并卡顿)那些区块。
- 更智能的调度以及世界生成期间更低的分配开销。
- 线程安全修复,解决大量原版和模组世界生成的 bug。
以单个模组形式发布,由按功能划分的模块构建,每个模块都可以单独关闭。
性能
本页上的每个数字都是在你可以在此处下载的文件上、以其默认设置测量的:没有标志、没有配置修改、每次运行都是全新世界、相同种子。专用服务器和单人游戏测试分别运行,从不同时进行。
测试机器:Intel i9-9900K(8 核 / 16 线程),32 GB 内存,Windows 10,8 GB 堆内存。专用服务器:Java 17(1.18.2)和 Java 21(1.20.1);单人游戏:Java 17。
Minecraft 1.20.1
原版世界,专用服务器,/chunky radius 1000(16,129 个区块):无 C2ME 时 3:28,使用 C2ME 时 0:48:快 4.3 倍(各运行 3 次)。
重型整合包,单人游戏:快 2.8 倍到 4.3 倍。

Minecraft 1.18.2
1.18.2 版本包含来自 1.20.1 系列的现代化线程引擎,比上游 C2ME 为 1.18.2 发布的任何版本都更新,另外还有两个在此版本上很重要的东西:
- 内置 Starlight 光照引擎。在 1.18.2 上,单线程光照引擎是预生成的瓶颈,因此此版本包含 Starlight 重写的引擎(Spottedleaf / PaperMC,LGPL-3.0;包含许可证和完整模块源代码)。如果你已经运行独立的 Starlight,它会自动关闭。
- 自调优世界生成供给。它在生成时测量你的硬件并随之自我调优:与关闭自动调优的同一 jar 相比提升 58%。

原版地图,专用服务器,/chunky radius 1000:未使用 C2ME 时为 4:29,使用 C2ME 后为 1:12:速度提升 3.7 倍(各测试 3 次)。使用 C2ME-Betterlight:同样为 1:12。

大型整合包,单人游戏:速度提升 3.2 至 4.5 倍。

加载时会自动检测线程不安全的世界生成模组并进行隔离:只将需要处理的那个模组所用的一个生成阶段串行化,其余内容仍会并行生成。无需命令、无需配置,也无需手动启用。
过去无法完成预生成的五个整合包,如今都能顺利完成完整的 /chunky radius 1000;9 个整合包中,C2ME 未发生任何崩溃:

内存
C2ME 会同时处理多个区块,并根据可用堆内存调整数量,因此大型整合包在 8 GB 内存下也能运行良好。增加堆内存仍有一些帮助(在我的测试中,使用 12 GB 时分别提升了 7% 和 12%):

C2ME-Betterlight(1.18.2,可选附加模组)
[C2ME-Betterlight] 用 C2ME 自带的光照引擎替换内置的 Starlight,适用于服务器和客户端。在我的测试中,玩家在每次测试中都没有遇到错误的光照值(Starlight 在五次测试中有一次出现了 94 个错误值);出生点处最差帧的耗时缩短了 28%,而 FPS 和预生成速度保持不变。它是单独下载的模组,且只适用于一个确切版本的 C2ME(1.0.0 需要 0.2.0-forge.8.2)。不安装它则不会有任何变化。

需求
- 1.20.1:Minecraft 1.20.1、Forge 47.x、Java 17 或更高版本
- 1.18.2:Minecraft 1.18.2、Forge 40.x、Java 17
请下载与 Minecraft 版本匹配的文件;不同版本需要分别下载对应构建版本。
兼容性
C2ME 可与常见的 Forge 性能优化模组组合使用,包括 Embeddium、ModernFix、FerriteCore、ServerCore、Canary 等。如果其他模组已经优化了相同代码(例如 Canary、Radium 和其他 Lithium 分支),C2ME 只会对这些重叠部分避让,同时继续进行多线程世界生成。与 NBTac、LongNbtKiller 和 MoreMobVariants 等模组的已知冲突也会以相同方式处理,无需配置。
- Arclight(1.20.1 Forge + Bukkit 混合服务器)从 forge.9.9.4 起即可运行。
- Architectury 和其他前置库模组都会纳入每个版本的测试。
- 线程不安全的世界生成模组(例如 Lost Cities、Blueprint 模组、Large Ore Deposits、Skyblock Builder、Ore Tweaker)会在加载时被识别,且只会将各模组存在安全问题的生成阶段串行化。如果你遇到我尚未收录的模组?请把日志发到 Discord,我们会将其加入。
如果你已经在使用 Canary 或 ServerCore,C2ME 最主要的额外功能就是它们不具备的多线程世界生成。
配置
- 设置位于
config/c2me.toml。通常无需更改任何内容。 - 可以通过 JVM 参数关闭任意模块:
-Dc2me.disableModule.MODULE=true(例如-Dc2me.disableModule.opts.scheduling=true)。 - 命令:
/c2me notick(无刻视距状态;仅限管理员)。
已知事项
- 需要充足的 RAM:请参阅“性能”。
- 由于本模组替换了区块存储后端,少数直接访问原版区块存储内部实现的模组可能需要单独调整。遇到此类问题,请在 Discord 上反馈:https://discord.gg/s7BYs6Njj5
鸣谢与许可
原版 C2ME 版权所有 (c) 2021-2024 ishland 和 RelativityMC。源代码:https://github.com/RelativityMC/C2ME-fabric 使用 MIT 许可证授权;本移植版也基于同一许可证重新分发,完整许可声明已包含在 jar 文件中。衷心感谢 C2ME 团队:没有他们的工作,就不会有这个移植版。
1.18.2 版本还包含 Starlight 光照引擎,版权所有 (c) Spottedleaf 和 PaperMC 项目,使用 LGPL-3.0 许可证授权。许可证已包含在 jar 文件中,该模块完整的对应源代码发布于此:https://gitlab.com/thescriptersdk/starlight-c2me-source Starlight 上游项目:https://github.com/PaperMC/Starlight
常见问题
Concurrent Chunk Management Engine – Forge 支持哪些 Minecraft 版本?
Concurrent Chunk Management Engine – Forge 支持 Minecraft Java 版 1.18.2–1.20.1,共 2 个版本,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。
Concurrent Chunk Management Engine – Forge 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。
评论
登录后评论和评分