“为什么枪的手感怪怪的?”这是许多玩家在进入CS全新版本后的直接感受。除了枪声变化,这一现象与V社在新版本为我们带来的“Sub-Tick”有直接联系。Sub-Tick究竟意味着什么?它与我们常说的64Tick128Tick又有何区别?

我们原本的手感是如何养成的?

所谓的Tick就是“帧”,指的是游戏客户端与服务器的处理存在极小的时间单位。在64Tick的服务器中,1秒被拆分为64部分,每部分约0.015秒。在一名玩家完成按下鼠标开枪、命中敌人的操作瞬间,游戏客户端在某一帧向服务器发出了指令,这一指令经历服务器的判定再返回游戏客户端后,实际上已有了一帧的延迟。同时,游戏动画也是在玩家指令发出一帧后,才显示出子弹命中敌人的动画反馈。这样一来,服务器判定和动画的同步“延迟”给玩家带来了一帧误差的“同步”体验,养成了我们长久以来所习惯的CSGO操作手感。

CS:GO中的开火原理  (间隔代表帧,三角箭头代表输入时机,蓝色代表判定和动画生效)

既然64Tick意味着0.015秒的误差,那么128Tick则会将服务器的处理间隔进一步减半,达到0.0075秒左右的误差。越接近0,越接近真正的“即时”,玩家的反应也会显得更迅捷,从而实现更加流畅的体验。

开火瞬间准星在敌人头上,但因为Tick处理延迟的关系并未命中  (来自油管博主MrMaxim的视频)


Sub-Tick:“所见”似乎慢于“所得”

新的Sub-Tick系统中,V社通过技术手段将1帧误差抹除了,服务器判定的时机等于你开火的时机。这就意味着,你确实是更加准确地命中敌人,几乎实现了“所见即所得”。

CS全新版本中的开火原理  (间隔代表帧,三角箭头代表输入时机,红色与蓝色代表生效)

为什么说是“几乎”?因为V社没有抹除动画上的一帧延迟。在官匹使用的64Tick服务器下,动画依然会存在0.015秒的误差:你的子弹打中了目标,敌人也确实倒地了,枪线动画却“再飞一会”,才姗姗来迟地显示命中。这就是你感到不协调、不舒服的根本原因——即时命中判定与即时命中动画不完全贴合。

开火瞬间准星在敌人头上,Sub-Tick使得判定命中,但动画有延迟  (来自油管博主MrMaxim的视频)


V社在未来也许能够实现动画与Sub-Tick系统的完全协同。而在此之前,我们还需要适应这种更准、但不那么同步的手感。

动画生效延迟,但命中判定已经在开火瞬间确定  (来自油管博主MrMaxim的视频)


“甩枪”还存在吗?

许多CSer都表示Sub-Tick令“甩枪”退出了历史舞台。那么“甩枪”究竟还存在吗?

与早期CS时的BUG性质不同,“甩枪”在当今的逻辑,是玩家开始按下鼠标左键时,精确快速地将鼠标准星移动至敌人身上,本质是一种快速定位。我们在CSGO中使用“甩枪”操作时,一般会选择先开枪再拖镜。因为服务器需要1帧的时间处理开火的信息,命中判定需要等到下一帧结算,从而使得拖动准星的时间也延长了一帧,即能“甩”得更远。

s1mple在新版本中的甩枪  (整个桌子都在颤动)

新的Sub-Tick上线后,延迟判定不复存在,你按下开火键的一瞬间你就已经确定了你是否命中目标,那么按照以前的打法也就打不中敌人了,即你的“甩枪”变短了。

如今的“甩枪”需要玩家更切实将准星放置在敌人身上后开枪才能实现。我们需要调整开火时机,才能实现原本的操作。


我们希望在未来通过更多类似【CS新版本科普】的文章向大家普及CS全新版本中的变化。如果你有什么疑问或者建议,欢迎在评论区下方留言!