Skip to content

ProductiveBeesGenesis v2.0.4

Latest

Choose a tag to compare

@Ayoshiko Ayoshiko released this 31 Jul 07:33

概述

服务端实测 bug 修复版本(SemVer PATCH)。修复 v2.0.3 上线后服务端实测发现的 5 个独立问题:蜂箱速度升级卸载后工作时间不可逆递减、概率产物被错误地变为必产物、时间流体蜜脾错误产出蜂蜜、蜜蜂属性 tooltip 翻译与整合包不一致、蜂箱产物在离心机阻塞时被困缓冲区。所有修复均经过代码审查与编译验证。

修复

  • 蜂箱速度升级不可逆递减(CRITICAL):安装 MEK 速度升级后蜜蜂工作时间从 1200 tick 暴跌到 27 tick,再装降到 7 tick,卸载后仍保持 7 tick 无法恢复。根因是调整后的时间被写回基础值字段形成指数衰减并通过 NBT 持久化。分离 baseMinOccupationTicksminOccupationTicks 字段职责,调整值永不回写基础值,老存档自动迁移
  • 概率产物变必产物(CRITICAL):机械蜂箱中的幽匿蜜蜂每次产出必出 10 个花粉球,而非 PB 原版的 5% 概率。根因是 BeeInfoHelper.getBeeProduce 使用 chancedOutput.max() 完全忽略 chance 字段。新增 BeeProduceBatchSampler 统一执行概率采样,单次走 Bernoulli、批量走 Binomial+CLT,与离心机路径算法一致
  • 时间流体蜜脾错误产出蜂蜜(MAJOR):JDT 时间流体蜜脾在机械蜂箱中产出蜂蜜,但 PB 原版该蜜脾应产出时间流体。根因是 BeeProduceProcessor 硬编码 250mB 蜂蜜无条件注入所有蜜蜂。新增 BeeFluidOutputResolver 从离心配方推断流体类型,非蜂蜜流体蜜蜂不注入蜂蜜
  • 蜜蜂属性 tooltip 翻译不一致(MEDIUM):蜜蜂属性 tooltip(产量、天气适应性、昼夜习性等)翻译与整合包宁纳汉化不一致。修正 14 处翻译,如"日行"→"昼行性"、"被动"→"友好"、"极高"→"很高"等
  • 蜂箱产物被困缓冲区(MAJOR):蜂箱紧挨离心机且离心机输出槽阻塞时,蜂箱产物被困缓冲区无法弹出,即使开启 MEK 弹出开关也无效。组合修复:缓冲区直接转移绕过两跳路径、成功转移后重置退避、连续 20 tick 阻塞时 fallback 到 MEK Ejector、AE 协同优先通过 AE 网络推送

性能优化

  • ApiaryOutputBuffer 独立预扫描数组tryRedistributeToExternalSlotstickRedistribute 共享预扫描数组,但离心机输入槽(19)与蜂箱输出槽(9)数量不同,导致每 tick 反复扩容 6 个数组。为外部槽位分发独立数组,零扩容,降低 256× 加速场景的 GC 压力

前置依赖

模组 版本
Minecraft 1.21.1
NeoForge 21.1.214+
Productive Bees 1.21.1-13.13.5+
Mekanism 1.21.1-10.7.14.79+

完整变更记录请查看 CHANGELOG