Learn · modules
Minecraft 中什么是“无坠落伤害”?模块解析
无坠落(No Fall)阻止服务器对你角色记录坠落伤害。以下是如何实际运作的包取消、地面欺骗和检测.
什么是“无坠落伤害”?
“无坠落伤害”是一个 Minecraft 模组,它阻止服务器在你的角色身上记录任何坠落伤害。它不会让游戏正常的伤害计算继续进行,而是会干扰服务器端检查,该检查原本会决定你从悬崖上摔下损失了十二颗心。从塔上跳下,在空中逃离战斗,直接掉入矿井:这些都不会让你损失生命值。它是一小段代码完成一项大任务,也是实用工具客户端工具箱中相对容易被发现的技巧之一,在依赖它之前了解这一点很重要。
工作原理
服务器会不断追踪你的垂直位置。当它检测到在经过一定距离的坠落后着陆时,它会根据你坠落的距离来计算伤害。 “无坠落伤害”的全部工作就是干扰这个过程,在伤害落地之前。
通常有三种方法可以实现:
数据包取消。 客户端简单地阻止服务器用来计算坠落的数据包,因此服务器永远无法获得它需要的数据来向你收费。
地面欺骗。 客户端告诉服务器它站在坚实的地面上,而实际上它并没有。没有着陆,就根本没有坠落可以记录.
预测状态操纵。 客户端会悄悄调整其报告的位置数据,以确保服务器自身的坠落距离追踪器永远无法累积到超过伤害阈值。
目标相同,但客户端对服务器说的谎言却有三种。客户端选择哪一种会影响其是否显眼。
使用起来安全吗?
绝对意义上来说,不安全。No Fall 是一种客户端绕过服务器端检查的方法,而这种不匹配正是反作弊系统所要检测的东西。服务器期望坠落伤害是你的追踪运动的结果。当你的报告位置或状态与应该发生的伤害不符时,这种差距就是一个可信的检测信号,合理的反作弊系统会将其标记。
是否会被捕获取决于服务器和方法。数据包取消和地面欺骗在运动日志中往往会留下比更微妙的预测状态方法更明显的痕迹,但三种方法都并非默认不可见。将 No Fall 视为自担风险使用,并期望严格的反作弊系统比宽松的反作弊系统更频繁地检测到它。
权衡
优点显而易见:你可以生存应该让你死亡的坠落。缺点也同样显而易见:你正在创建一种可检测的差距,即你报告的内容与实际发生的内容之间的差距。反作弊系统会检查运动日志,寻找这种不一致.
在安全措施不严格的服务器上,No Fall 可能不会被发现。而在有主动监控的服务器上,它通常是首批被标记的项目。可以合理地认为,任何值得关注的服务器都在检查是否存在此问题.
常见问题
它会阻止服务器对你的角色记录坠落伤害,所以一个通常会让你受伤或死亡的掉落将不会造成任何影响.
三种已记录的方法:取消移动数据包、伪造地面状态或操纵预测位置数据,从而使坠落追踪器永远无法累积足够的数值来造成伤害.
是的。服务器期望根据追踪到的垂直移动来计算坠落伤害,而你报告的状态与预期伤害不符,是反作弊系统可以检测到的信号.
不,这只是一个通用的模块概念,在多个客户的项目中都会出现,但具体的实现方式会因具体情况而异.