简介
这个 Mod 修复了一个 Minecraft 的 古老 Bug(MC-17876):当玩家在重新进入游戏存档的时候,其“最大生命值”属性会被 Minecraft 忽略。
简单来说,就是当玩家身着或持有可以增加最大生命值的物品时退出游戏,再次进入游戏时玩家需要通过食物或药水等物品来重新补充最大生命值,即使玩家退出游戏时最大生命值为满,Minecraft 依然会忽视这一点,将玩家的血量调整为20颗心。
如果玩家的生命值大于默认的 20,在重新进入游戏的时候就会重置为 20。比如玩家穿戴了一个最大生命值 +10 的头盔,玩家的生命值会变成 30,此时你退出游戏,再次进入游戏,该玩家的生命值就会重置为 20,当然还有空血量存在。
原版 Bug 复现
创建一个新的世界,游戏模式设置为创造模式,并开启作弊;
使用这条指令来获得一个最大生命值 +10 的钻石头盔:
/give @p diamond_helmet{AttributeModifiers:[{AttributeName:"generic.max_health",Amount:20.0,Slot:head,Name:"generic.max_health",UUID:[I;-12158,12468,122112,-24936]}]}
戴上这个头盔,你的最大生命值从 20 变成了 30 (多了 5 颗空心 );
通过药水等手段将玩家的生命值补充到超过默认的 20,比如 25;
保存并退出游戏,然后重新进入游戏,你的生命值就会重置回 20( 5 颗空心 还在)。
注意:如果是 Minecraft 原版生存,一般不需要这个模组来优化,因为原版里在没有额外数据包的情况下没有提升最大生命值的装备或物品存在。