并发区块管理引擎(Concurrent Chunk Management Engine for Forge)
C2ME 的非官方 Forge 移植,旨在通过多线程提升 Minecraft 的区块生成、读写与加载性能,兼容可在原版运行的世界生成数据包并尽量保持原版行为。
概览
C2MEF(Concurrent Chunk Management Engine for Forge)是对 C2ME 的非官方 Forge 移植,目标是通过利用多核 CPU 并行化来改善区块生成、磁盘 I/O 与区块加载的性能。该项目衍生自 C2ME(原始 Fabric 版本)。
注意:本项目为非官方 Forge 移植,尚未经过完全测试。
主要特性
- 并行化区块生成、I/O 与加载以提升性能。
- 默认不改变原版世界生成行为或功能,不以牺牲原版一致性换取速度(但由于原版世界生成本身的非确定性,不同运行间即便相同种子也可能存在差异)。
与其他并发/光照相关模组的兼容性
- 尚未在所有场景下与 Radium(请避免使用 Canary 版本)和 Starlight 完全测试通过,可能存在兼容问题。
与 Mod / 数据包 的兼容性
- 能在原版 Minecraft 上运行的世界生成数据包应能正常工作。
- 由 Mod 实现的自定义世界生成器通常可用,但某些 Mod 的设计假设可能因我们对生成速度的进一步优化而被打破,从而引发兼容问题。
未定义行为的检测
C2ME/C2MEF 包含对世界随机数使用的检测(如 CheckedThreadLocalRandom,已被包含在 UWRAD 中)以及若干其他检测,以防止 Mod 误用 Minecraft 内部实现导致难以调试的问题。这些检测几乎不会出现误报,若触发请认真对待并反馈给相应 Mod 作者。
C2ME 与 C2MEF 的差异
C2MEF 基本功能与 C2ME 保持一致,但包含若干 Bug 修复补丁。
使用注意
- 在使用前请备份你的世界并遵循良好的 Mod 使用习惯。
- 如果你发现问题,请在本仓库提交 issue(请勿将本版本的问题报告给原作者仓库)。
支持的 Minecraft 版本
当前仅支持 Minecraft 1.20.1。
性能基准(1.20.1)
致谢
- 感谢 ishland 创建原始 C2ME 项目。
- Arclight 项目对 TransformAccess 的支持。
- ArclightPowered/mixin-tools 为 Mixin 提供支持。
其他说明
- 本项目为非官方 Forge 移植,未经过完整测试。如遇到 Bug 或兼容性问题,请在项目问题跟踪页提交反馈。
截图:
- fixed ``WF's Cave Overhaul`` mod compat