loss 和cl_cmdrate 以及 choke 和 cl_updaterate 之间的关系
玩CS最重要的是什么?是心情。
玩半天越玩越恼火,还不如去找个电影看看。
玩CS能让我们玩的痛快些的,一个是自己的技术,这个要自己提高了
,别人帮不了你,还有就是FPS,这个有相关的优化,网上有很多教
程,不外乎“关闭垂直同步”等,但最要的还是有个不错的机器,好
的显示器,好的显卡,可以基本不考虑这个因素了,另一个网上说的
很少,却非常重要的因素就是choke和loss。这个直接影响我们玩CS
时的ping、弹道等,这个因素不优化好,就会让我们觉得卡,打不死
人,明明打到人,死得却是自己。
下面我来说下关于choke和loss的几个重要参数。、
我们都知道,我们玩CS是在服务器上进行的,有许多玩家参与,要保
证所有玩家看到的是一个结果,这就要求,我们每个人得到的数据和
服务器是一致的,而实际上因为网络的原因,我们每个玩家的机器与
服务之间的数据包的更新是不可能完全同步的,这就需要参数来进行
补偿和预判断。
ex_interp 这个参数就是管这个的,
我建议大家设置为0,
ex_interp 0 默认值 0.1
而提到ex_interp 就不得不提到cl_updaterate ,cl_updaterater
的改变会直接影响ex_interp,如果硬性指定ex_interp的值为0.1或
是0.01等,如果指定的值实际上大于你所需要的补偿,就会造成打不
死人,感觉打到人了,而实际上却打到了别处。所以我们打
ex_interp设置为0,同过调整cl_updaterate让CS自己设置你的
ex_interp这样我们就得到了一个最精确的值“1/cl_updaterate”
,是没有任何一个值比“1/cl_updaterate”,更接近我们实际的需
要了。
另一个重要的参数是cl_cmdrate 这个值理论下是越接近服务器的
FPS值,就越好,这个参数决定了我们每秒钟发送给服务器的数据,
也就是我们的上行,但由于网络的原因,我们不可能获得很理想的上
行带宽,所以如果设置的过高,反而会有不好的结果。
还有rate 这个参数被一些人说成了压枪参数。说的神乎其神,其实
它是每个数据包中的数据总量。这个数值要求最好等于或非常接近于
服务器的设置。否则发生数据包丢失。默认参数为空。一般我们提意
反它设置为20000。因为实际测试得出,高于20000是没有任何意义的
,反面会得到相反的结果。
上面简单的说了这些参数,可能大家要问,这和你说的choke和loss
有什么关系,到现在还没有看到呢。
要明白它们有什么关系,首先要知道choke和loss是什么意思。
Loss = 所收到的数据的丢失率
Choke = 发出的数据的丢失率
他们是一种数据包丢失。
这2个值可以显示测量你的网络参数是否合适!
有choke的产生你可以想象一下你拼命地向对手开枪而这些数据都丢
了根本没发到服务器,于是服务器就判定你根本没开枪。这时你就会
发现就算你离敌人很近地扫射,敌人没死你却被乱敌人一枪打死了。
有loss的产生你应该有过这样的体验,有时遇到人时你你刚要开枪突
然卡一下,这时有两种可能,一是你发现你死了,或是对方躺在了地
上,而这中间的过程,丢失了。
如何检测这两个值呢?我们可以打开net graph ,方法是打开控制台
输入net_graph 3
屏幕下方会显示一堆数据,
左上角的就是 fps 值
右上角的是延迟时间
In=你接受自服务器的数据量(k/s
Out=你发送至服务器的数据量(k/s
左下角和右下角分别是 loss 和 choke
loss 和 choke = 0 是最好的、最完美的 !
cl_cmdrate是客户端每秒钟通知服务器它的行为的次数。
这个参数决定了每秒钟你发给服务器多少个数据包。
cl_updaterate 是每秒钟你从服务器接受的数据包数量。
这就可以看出loss 和cl_cmdrate 以及 choke 和 cl_updaterate
之间的关系了。
換句話說,有 loss 的時候就降低 cl_cmdrate,有 choke 的話則降
低 cl_updaterate。
这就是我们经常看到职业选手在打比赛前一定会做的设置,这个值并
不是固定的,而是随着网络质量和服务器的人数的多少,而有所改变
的,打比赛时,人数是固定的,网络质量在一个时间段内也可以说是
固定的,所以我们在进行比赛前,调整好这几个参数,就可以保证最
大程度的保证我们能发挥到最好水平了。
下面的参数为我们进入服务器时基准参数,也是假定在lan比赛中,
网络状态比较好的情况下的设置。
=====================================
fps_max "101" //默认值 101
rate "20000" //默认值为空
ex_interp "0" //默认值 0.1
cl_cmdrate "101" //默认值 30
cl_updaterate "101" //默认值 30
=====================================
直接复制加入你的userconfig.cfg文件里保存,即可。
另外在调整cl_cmdrate 和 cl_updaterate 时,手动的一点一点的
降低或是升高,都要在控制台里输入,这样调整会非常麻烦,也非常
担误时间。
我写了一个很方便的一键调整cl_cmdrate 和 cl_updaterate 的脚
本。喜欢的下载吧! 非常精彩的文章,感谢楼主。 第一次发贴子,谢谢回复! 非常有用处的帖子,玩CS的人都应该来看 感谢支持,这几天迷上了AMXX,刚起步,太多不会,教程又少,不知道大家知道哪里教程比较全的? 不错对于使用ADSL的玩家来说 很有用
ADSL上下不是对称的延时大的玩家可以参考 很有参考价值哦,支持!谢谢啦~~ {:3_67:}支持 强烈的支持,网络环境太差了,只有大家研究出更多的办法解决了。 这个好东西
页:
[1]
2