前言
在玩CSGO的时候总是可以看到一些人,他们就是看起来网络挺差的,但似乎毫不影响他们的操作。所以我开始对CSGO的弱网环境表现进行研究,于是便有了这篇总结。
原理:
通过调整 网络收发设备或系统数据包收发 收发规律,以达到传递给服务器的数据不连贯,导致其他客户端收到的模型位置数据是不连贯的,从而稍微降低被击中的可能性。
技术细节:
本质上就是每隔一段时间就拦截数据包,使服务器无法准确接受到客户端本地运算的结果。
拦截的时间段内服务器无法收到来自客户端自主运算的位置信息,在允许最大时间内(一般是75-100ms,在64tick为5-6帧左右【一帧约等于15ms,128则为7.5ms】,128tick翻一倍),将暂时冻结玩家实体节省性能,最大允许时间内收到客户端的信息后再刷新实体位置。
经测试,在不影响操作和高隐蔽性的前提下,堵塞最佳时间一般是15-30ms,即64tick的1-2帧或128的3-5帧,最终输出帧为32-45之间。
实现的效果:
在我们能看到的画面,所有的实体位置其实是被处理过的。在csgo的服务器里,帧是绝对稳定的,不会多也不会少。但是大多数人pc渲染的帧数总是会比服务器的多甚至翻倍,总不能说电脑明明能上600帧,就因为你这个服务器只有128帧,我也要被迫锁128吧?所以开发人员就做了一个平滑处理,于是乎我们可以愉快的玩高帧游戏了。但是平滑归平滑,但是判定永远只遵循服务器的帧数,即渲染帧不影响判定帧。
在csgo中,服务器发送了实体数据的下一帧后,客户端就会将上一帧平滑渲染到下一帧。也就是说判定帧其实是比渲染帧要快的。
堵塞后就如上文所说,我们的实体数据将不再连贯,服务器给其他人发送我们的判定帧是充满了随机性。但是因为平滑机制的存在,对手的客户端会把帧进行平滑。因为我们传递的判定帧是小于服务器的要求,所以两判定帧之间间隙会比普通人大,以此来干扰对手并提高自己干拉的存活率。
平滑指令:cl_interpolate 1/0
⚠️使用该指令会影响游戏体验,包括但不限于:手感降低,人物移动卡顿⚠️
假设有人开自瞄,但是他的平滑帧是开着的,或许适当拉大堵塞时长可以让挂哥空枪。😂
实际环境及不同方式的影响:
堵塞发送换成延迟发送:
如果使用延迟发送,则会触发客户端的unlag(卡顿缓解)机制:
本地客户端会尝试放慢本地实体(也就是游玩时操作的人物)的操作速度,包括移动、开枪等等,以达到和服务器判定帧同步的目的。
显然这种机制的存在可以稍微解决高延迟方先看到人的问题,但如果是小身位peek则解决效果不明显。
实际上,延迟发包本质上是晚一点告诉服务器我要干什么,实际传递给服务器的数据依然是连贯的,无法与本文需要的目的匹配,故不使用。
高时长堵塞会遇到的问题:
假设你无法随心所欲决定何时堵塞数据,将会容易遇到譬如打不出子弹,打中人却没有伤害。
最致命的问题:结合上文,堵塞数据意味着在一定时间里你的实体是静止的。假如你peek没有把人一枪带走,那么你很可能会被抓静止帧,表现为:你虽然回到了掩体,但是你仍然被杀了,如果只是被击中,还可能会被服务器强制拉回原来的位置。
导致的原因:假设你堵塞了75ms,那么在服务器看来你就只有16-18帧,而你的有效操作帧也就是16-18帧,如果对面击中的恰好就是你刚peek的那帧,你就会被服务器判断被击中。而如果你上一帧的数据不满足你移动到下一帧的条件,那么服务器将会把你的实体数据滚回到上一帧。
反作弊风险:
本地检测:
和AI自瞄一样,并不依赖于游戏内存读写,也不会破坏、干扰任何反作弊程序。从本地的自动检测封禁可能性几乎为0。
服务端检测:
因为堵塞后的效果和市面外挂有相似之处,所以有少许可能会被服务端的检测判定为外挂程序。但大多数可能会认为是玩家的网络出了状况才导致的,况且这种方式是通过用优秀的网络换取微不足道的干拉优势,不至于说这种都要封禁。
监管检测:
如果说设置的太高,确实是可能会被监管认定使用了其他类型的外挂。
针对官匹的话可能性就不太高,因为总所周知官匹监管的demo只有20ticks,哪怕堵塞了都不会怕看出来。
平台的监管暂时不知道,有可能是满帧的,也有可能是64ticks的,不过
可供实现功能的软件:
本人测试时使用的:clumsy 0.2
理论上只要可以进行网络调试的软件都可以设置,不过上面的软件无需设置代理驱动,只需要授权UAC就可以调试。
可能的使用拓展:
闪现peek:
原理:
开发一个程序,用于一键切换卡与不卡的状态。在准备peek时按下特定按键堵塞将近120ms,然后按下开火键时取消堵塞,就可以实现闪现peek。
硬件堵塞同理,同时具备本地无法检测的特性。
风险:
由于这种现象显得可疑,所以被检测的风险也很大,监管也会看到闪现拉枪的画面。
测试时使用的参数:
【随机:指截获数据包时有多大概率堵塞网络。堵塞:指数据队列堵塞的时长】
【只堵塞上传网络】
【gif图片已慢放2倍,帧数为20,只显示判定帧】
低调之最
堵塞17ms,随机12%
评价:隐蔽性最强,操作手感良好,获取优势微薄,和正常打差不多。
中规中矩
堵塞40ms,随机20%
评价:隐蔽性稍好,稍微影响操作,获取优势还行,适合快速移动的枪械。
卡顿王者
堵塞55ms,随机45%
评价:隐蔽性一般,操作手感较差,获取优势可观,适合冲锋枪。
干扰之最
堵塞75ms,随机100%
评价:隐蔽性较差,手感很差,拉枪线首选。
对抗大哥
堵塞150ms,随机100%
评价:你都和大哥打了,还想要什么隐蔽性什么手感?你拉枪线就足够了。
【⚠️不同的平台可能会有不同的限制,视情况而定⚠️】
免责声明
本文章只介绍了一种可能的低调作弊手段,并于实战中进行不充分的测试以证实可行性。本人不建议、不提倡在正常游戏中使用任何作弊软件及手段,若您依然选择使用,使用前的风险及其产生的后果需要您自己承担,与本文作者无关。
用 Cookie 保存: 别名、Email