什么是虚假延迟? Minecraft?
- 虚假的延迟会延缓玩家发出的移动数据包,并在一个爆发中释放它们,而不是每帧释放一次。
- 服务器会持续记录玩家之前的旧位置,而玩家已经移动了,然后当爆发到达时,会看到卡顿或瞬移。
- 这是一个可封禁的位置同步错误利用,而非外观问题,与瞬移(Blink)不同,瞬移会中断连接,而不是延迟数据包
虚假的延迟是一种战斗模块,存在于某些 Minecraft 作弊客户端中。它会拦截玩家的移动数据包,而不是在每个时钟周期立即发送,然后一次性释放整个队列。正常的连接会持续报告位置,因此服务器中玩家位置的记录会紧密跟踪他们的实际位置。虚假的延迟故意破坏这种联系:玩家在自己的屏幕上继续正常行走和战斗,而服务器却卡在旧的位置,当队列最终刷新时,其他人看到的不是平滑的移动,而是一段停顿或短距离的传送。
工作原理
原版客户端大约每时钟周期发送一个移动数据包,因此服务器中玩家位置的记录通常不会落后于现实超过一小段时间。虚假的延迟会拦截这些发出的数据包,将它们排队,并在短时间窗口内保持队列关闭,而不是立即释放它们。这种技术通常出现在 Raven B++ 等客户端中,通常与其他数据包操作模块一起捆绑,而不是单独发布.
在持有时,玩家自身的体验没有任何改变。他们仍然可以在自己的屏幕上正常行走、跳跃和摆荡。被冻结的是其他人的视角:服务器以及任何观看的玩家都卡在持住开始之前实际传出位置的最后位置。当持住结束时,排队的包一起释放,玩家看起来会跳跃或卡顿到他们的真实位置,而不是走到那里。
大多数实现都会限制持住的时长。让真实位置和报告位置之间的差距过大,服务器要么会将玩家弹回一个合理的位置,要么直接标记该移动,因此该模块实际上是在权衡它所换来的失同步和突变的可见性。
虚假的延迟与瞬移
虚假的延迟经常与瞬移归为一类,因为两者都是通过操纵数据包来在玩家的真实位置和服务器所知位置之间制造差距的模块。其底层的机制不同,屏幕上的外观也不同.
| 虚假延迟 | 瞬移 | |
|---|---|---|
| 数据包行为 | 延迟数据包发送,然后以爆发的形式释放 | 暂停连接,然后恢复 |
| 视觉效果 | 卡顿或短距离传送 | 冻结,然后瞬间移动到新位置 |
| 利用方式 | 服务器保持过时位置,客户端持续移动 | 服务器在暂停期间未收到更新 |
同一问题类别,不同手段。虚假延迟从未停止与服务器通信,只是通信滞后且一次性发送。瞬移则完全停止通信,并在决定时恢复对话.
Opal 何处止步
Opal 运送战斗模块,但它并不具备像“虚假延迟”那样的专门的滞后爆发式脱同步功能。客户端无法做出将几百毫秒的位置欺骗换取暴露的侦测信号这样的权衡
這是一個會被封禁的作弊行為,而不是網路修復
虚假延迟的存在是为了将玩家的真实位置与服务器记录的位置拉开,而持住后瞬间爆发的移动正是服务器端反作弊系统检测的模式。将其视为一种可检测的、具有游戏优势的作弊行为,与任何其他位置同步错误的利用方式一样,都具有相同的封禁风险,而不是将其视为一种修复或隐藏不良连接的方式
常见问题
它是在发送移动数据包时改变的,而不是玩家在自己屏幕上移动的方式。数据包会被延迟并一起释放,形成一次爆发,导致服务器记录的位置落后于实际位置
高延迟是玩家无法控制的真实网络延迟。虚假的延迟是客户端上故意使用的按住并爆发模式,正常的连接本身永远不会产生这种模式
不,它会在真实位置和服务器记录的位置之间制造一个短暂的空隙,这可能会让玩家在持握期间更难被击中,但它并不会完全阻止伤害,而且这个爆发本身就是一个容易被发现的信号
虚假的延迟会延迟发送数据包,并在之后将其突发。Blink 会直接中断连接并恢复。两者都会导致位置不同步,只是通过不同的数据包层级机制来实现