CS在进行绘图的时候,是一幅一幅画绘成的,但是如果你在网络游戏的时候,再宽的带宽也不允许你将每一个位置的数据进行传送。因此CS使用了另一种绘图办法:在你得到敌人位置数据的时候,它不会仅仅在次位置绘制敌人的图像,他会继续平滑的在敌人行进路线上绘制敌人平滑走动的图像,直到它接收到网络传来的下一个敌人的位置(两次间隔100ms即0.1秒),再以此位置进行下一次绘图。问题出现了,这种办法,你会发现平滑图像上敌人走在了他实际位置的前面一点,其实这个距离很小只有100ms走过的那点距离。CS使用了补偿技术,就是故意给你延时100ms以便找回平衡。ex_interp这个参数就起这个作用,他故意让画面有100ms延时,以使画面更加准确反映敌人的真实位置。
问题在于画面的延时不仅仅取决于这个参数,网络的快慢,你硬件的性能都会最终影响在你屏幕上绘出敌人的位置和真正hitbox位置的延时。很多人将ex_interp从0.1改为 0.075 或者 0.05 我们看会产生什么后果。后果就是他们看见了“未来的世界“,这也是这个参数造成的不公平的地方,也是为什么大家称这个参数为神奇参数的原因。问题不是这么简单,再看下面的情况。
如果一个人150 ping另一个人10 ping在同一个服务器打,理论上说当两人同时照面时,10 ping的人会提前140ms发现对方,如果低 ping的人立刻做出反应进行射击,150 ping的人身上已经挨了好多枪才看见对方,150 ping的人如果改动了ex_interp为0或者接近0的数,那么他实际的补偿延时就减少了100ms,实际上他可以看见50 ping的人应该看见的图像,这样高ping的人就不是很吃亏了,尽管仍然不如10 ping的人。所以保留这个参数是可能程序员考虑到这种情况,这样可以灵活调整,使ping对游戏者的影响不是那么大。但是CS并没有这种聪明的办法自动给不同ping的人调整这个参数,无论如何这个参数还是保留了,不管是公开还是非公开的。
再考虑如下情况,两个人ping都很低,10 ping左右,那么如果有一个人把自己的ex_interp 调整为50 那么它会看到未来40 ms的景象,调整为0就会看到未来90ms的景象。这种情况下,进行这个参数的改动就会造成不公平。因为他可以比对方先看到对方的位置,然而这个位置要比实际的hitbox的位置还要早,因此如果此时你想打中对方不能往你看到的目标上打,你要打提后量,就是对方刚才所处的位置。(这种情况与高ping打提前量恰恰相反)有些人觉得这样并不便宜,因为你不能往你看到的图像上瞄准,你要打提后量,这样反而影响了射击。不错,如果你不适应,你当然觉得这样更糟糕,那样你可以不修改为0改为0.075 0.05也可以使你受益不少,如果设置的正好可以抵消你ping值或其他因素的延时,你会发现这确实是一个神奇的参数,因为你画面的显示和hitbox的位置完全重合了。如果某些人长期在低ex_interp下面打,并且已经适应打提后量,这会怎么样?你会在服务器里看见一个反映力超强的超人。因为他的反映力快得以至于能预见未来!
关于这个参数讲到这里我想你已经比较清楚了,cl_lw,cl_lc,ex_extrapmax几个参数也有些效果,不过没人问Heaton,所以我也不需要讲了。希望了解更多的我推荐另一篇发表在sogamed的长篇大作,netcode详解,我是没时间翻译了,大家感兴趣就自己找找吧。
最后我想想说说我个人看法。很多人觉得写这种文章会助长作弊,因为改config算作弊。其实我想说明一下我的观点,CPL规定,比赛中任何参数只能通过点击游戏中的选项更改,不能用控制台改变。如果你改动了ex_interp这种参数,肯定要通过控制台改,CPL叫做config hack算违规。用OGC这种作弊软件,那就是cheat(作弊)了。CPL的规则只是他一家的规定,比方说ClanBase也有规定,某些细节上也和CPL不一样。但是我们绝大多数人都认同支持CPL的规则。我个人也认为没必要更改,Heaton这种王者都说坚决不改,我们改啥?再说Heaton这种大腕都发话希望下个版本ex_interp 0.1作为标准,那么很可能在CS 1.6中,这个参数就内置了,倒时候要想再修改只能改二进制文件了,那就真的成为作弊了。等你练成提后量神功的时候,CS 1.6一推出,你肯定就傻了。
我写这篇文章只是让你知道的多一点,不要吃亏。联想到最近WCG比赛,东北赛区投诉ID战队将动态准星这个参数关闭,我觉得组织者有很大责任,动态准星这个参数如果给关闭了,裁判站旁边一眼就看到了,如何能比赛完了都没察觉呢?这个参数早就被老外讨论烂了,很多人都知道了,还有一批人大费周折地去测试弹道是否也偏移,这只是准星是否动态显示而已,和弹道偏移有什么关系,改这个参数只能通过控制台或者config,这才是问的关键?既然规定采用CPL规则,那么按CPL说法这就算config hack啦。既然改动了这么明显的参数裁判都看不出来,如果我改动了ex_interp这种很难看出来的参数,裁判就更一无所知了。本届WCG比赛的裁判我看应该事先集中培训,参加一个考试,不然仅仅靠热情没有水平也当不了裁判。
如果你想成为真正的高手去打比赛,Heaton说你必须从一开始使用默认的config练习。不过显然他比我们都更早,更清楚config 中的每个参数。如果你凭借着一点伎俩,就算混进了世界比赛,但是在老外担当裁判的比赛中,你绝对不会有任何机会。
作者:中国警察 回复日期:2003-12-14 10:46:17 |
顶!!!
作者:ydc 回复日期:2003-12-14 11:37:38 |
老贴。ft。早就不让该了,最初jr好像该了。
作者:evation 回复日期:2003-12-14 13:47:22 |
JR 是0.02
作者:达不溜西 回复日期:2003-12-15 14:35:59 |
没有人顶啊,我自己顶起来
至于这个参数到底设置为多少合适应该视不同的环境而定吧?不能一概而论啊,即使jr用了0.02也不可能他每次都用0.02的吧?
还有,我找了个Demo里边有HeatoN用AWP喔,吼吼~~~
作者:空心的子雾 回复日期:2003-12-15 16:19:07 |
我是菜鸟,不知道该不该顶!不过如果不是老贴的话,那就顶一下吧,一下而已哟!
作者:ydc 回复日期:2003-12-15 17:46:33 |
规定不让改了,你现在改了,根本上不了pub,默认是1.0。n多脚本检测软件可以发现这个参数。
cs.cga.com.cn上有zb与反zb的文章。