Vigorous Pro

The world can always use more heroes.

  1. 1. CFG 是什么
  2. 2. 为什么我们要对 CFG 进行修改
    1. 2.1. 键位设置
    2. 2.2. 鼠标运行轨迹
    3. 2.3. HUD 与 viewmodel
    4. 2.4. 提高帧数
    5. 2.5. 网络参数
  3. 3. 如何修改 CFG
  4. 4. 开始修改CFG
    1. 4.1. 键位设置
      1. 4.1.1. 快速购买武器
      2. 4.1.2. 快速切出道具
      3. 4.1.3. 功能性快捷键
      4. 4.1.4. 大跳
      5. 4.1.5. 跳投
        1. 4.1.5.1. 一键式
        2. 4.1.5.2. 两键式
      6. 4.1.6. alt飞行
    2. 4.2. 鼠标轨迹
    3. 4.3. HUD与viewmodel
      1. 4.3.1. 准星调整
    4. 4.4. 性能提升
    5. 4.5. 网络参数
    6. 4.6. 其他杂项设置
  5. 5. 参考链接

对于 CSGO 的性能优化我们在 CSGO FPS 终极优化指南 中已经做过详解,探索为什么每一名长时间游玩 CSGO 的玩家会去寻找他喜欢的选手的 CFG ,来替换自己的 CFG 。大家对职业选手的 CFG 趋之若鹜,甚至很多选手的 CFG 也从不向外公布。既然如此何不随着教程自己动手调试出适合自己的 CFG 呢?

CFG 是什么

简单来说,CFG 就是储存用户个人配置的文档 configuration ,记录你在游戏中的一系列设置,里面包括了玩家在游戏设置内可以调节的参数也包括了部分游戏内不可以修改的参数,其中较为典型的内容包括鼠标速度;加速度;键位;画面设置。

为什么我们要对 CFG 进行修改

修改 CFG 的目的是为了让玩家以更加快速;自然地进行操作,这包括以下几个方面。

键位设置

此前的人物移动键位未有统一标准。因当年一位 QUAKE 先辈在早期电子竞技比赛上大杀四方,于是玩家便向他讨教,而后他将自己的 CFG 在论坛共享,众人发现他的键位异于常人,其使用 WASD 进行移动操作,左右手分工比起以往更加合理,操作也更符合直觉。从而导致了此后的游戏几乎都以 WASD 设为默认移动键位。
而 CSGO 作为 CS 的正统续作,其引擎(起源引擎)也正是基于部分 QUAKE 代码基础上实现的。理所当然,先辈们研讨 CFG ,钻研更合理的游戏设置的基因也保留在 CSer 的体内。

鼠标运行轨迹

在游戏的设置中,我们可以修改一些参数;比如鼠标速度与加速度,还有原始输入,当然这可以满足几乎所有人的需求,但是还是有一部分“玄学”参数会影响一些鼠标的运行轨迹。

HUD 与 viewmodel

玩家进行游戏当然,一切的感知全靠眼睛和耳朵,所有的操作基本上都要靠眼睛来感知,所以对于 HUD 的设置也是非常重要的,他们是你的参照物,人的视觉很容易被欺骗。

提高帧数

上一篇关于 CSGO 优化的文章中提到过,由于 CSGO 引擎的特殊性,FPS 低于 300 都会产生一些输入延迟,这是很致命的,使游戏内帧数稳定处于一个合理值是非常重要的。

网络参数

虽然在 CSGO 中没有像 cs1.6 那样夸张效果的 EX_INTERP 参数,但是 CSGO 中的 RATEcl_interp/cl_interp ratio 这些参数对于选手的发挥也有很明显的影响。

因为游戏内设置可以进行的修改是很有限的,有许多设置并不能在游戏内直接修改(当然,使用控制台大部分情况下可以达到和修改 CFG 相同的效果)或者是游戏内允许的数字并不能达到理想状态,必须要通过修改控制台或 CFG 进行修改。

如何修改 CFG

config 文件存放在 \Steam\userdata\(9位ID)\730\local\cfg\ 是对应着每个账号用来储存单个用户设置的文件(在游戏中截图后,在steam中点击在硬盘中查看截图库会跳转到\Steam\userdata\(9位ID)\760\remote\730\screenshots目录这样就可以确定此账号的9位ID。)
autoexec 文件放在 \Steam\steamapps\common\Counter-Strike Global Offensive\csgo\cfg\
config,autoexec 用来储存游戏每次重新打开就会被重置的命令,是在你电脑上所有账号都通用的一个指令
要注意,autoexe.cfg 是在CSGO游戏启动时自动运行 autoexec 内的指令的一种文件,在 autoexec 的最后一行加入 host_writeconfig 之后
只要你的 autoexec.cfg 文件名字没有问题,他就会正常启动,不需要再启动项中重复添加。

开始修改CFG

开始之前要注意,CFG 的内容并非是越多越好,实现更多的功能同时也会带来更多的不可控性,容易导致出现不可预料的问题,如果出现问题也更难排查。
当游戏出现卡顿,掉帧,严重的输入延迟时,我们经常会选择重新制作 CFG 来解决,这是有效的,尽量精简的修改内容会大大地减小重置工作量。
如果不想完完全全地自己去从头制作一个CFG文件,也可以去网上寻找喜欢的选手所用的CFG,比较即时的CFG汇总网站为prosettings,要注意CFG也是有时效性的在一些更新后某些设置会出现不同的影响,所以如果用别人的CFG那么一定要选择最新日期的,如果网站上没有更新,可以去选手的直播间发送评论获得(Twitch).
那么开始分类讲解如何去修改CFG内容。

键位设置

举一个比较简单的例子,滚轮跳

1
bind "MWHEELDOWN" "+jump"

这样的格式 bind 为语法 后面接 空格 “键值” 空格 "指令名"
这样修改较在游戏中修改的好处是允许同一个命令用多种不同按键都可以触发,即既可以用空格进行跳跃也可以用滚轮下进行跳跃。
+ 代表着按下某个键,相应的,-就代表着松开某个按键,比如跳投中的-attack 代表松开鼠标左键。

比较常见的修改键盘键位的包括几种:

  1. 快速购买武器
  2. 快速切出道具
  3. 功能性快捷键

快速购买武器

1
bind "F7" "buy ak47;buy vesthelm;buy flashbang;buy smokegrenade"

快速切出道具

1
bind "f" "use weapon_flashbang"按F键切到闪光弹

功能性快捷键

一般来说,功能性快捷键不必太过繁琐,过多的快捷键可能会让你看上去像个憨憨,分散自己太多注意力,也可能会让游戏变卡(可能)在这里推荐几个实用的指令

1
2
bind "MOUSE5" "r_cleardecals" //用鼠标前侧键进行清血迹
bind shift "+speed;r_cleardecals"; //shift可以正常静音的同时清血迹

大跳

1
2
3
4
5
bind space +jump
bind v +duck
alias +cjump "+jump; +duck"
alias -cjump "-jump; -duck"
bind "space" "+cjump"

按住空格键进行大跳,也就是说这样可以按住空格跳上 MIRAGE 的A死点箱子。
此处 alias 语法意义为按下一个按键同时触发后面的两条指令。

⚠️ 注意,所有包含 alias 语法的指令都要放在 autoexec 文件中

当然,如果你需要更多的复杂指令,可以去查找 Purp1e 做的指令详解[1],他在这部分做了很详尽的归纳,在此不做赘述。

跳投

跳投分为一键式跳投与两键式跳投在比赛中只允许两键式跳投,一键式跳投为按住左键时按下一个快捷键就可以快速投掷也就是一个按键设置为-attack同时+jump,两键式为两个相邻按键分别设置为-attack+jump自己手动掌握时机

一键式

需要放到autoexec

1
2
3
alias "+jumpthrow" "+jump;-attack"  
alias "-jumpthrow" "-jump"
bind "n" "+jumpthrow"

默认为按下 N 键执行

两键式

不需要放到autoexec

1
2
bind mouse4 "-attack"
bind mouse5 "+jump"

默认为同时按下鼠标两颗侧键执行

alt飞行

1
bind alt  noclip;			//alt飞行

鼠标轨迹

当然,在这里我不会对鼠标速度进行很深入的探讨,只会讲一些平时较少提及的部分,一般来说鼠标的 DPI 在 500-1500 之间是正常的值,也就是说 dpi* sensitivity 在这个区间,如果想要了解相关的数据可以参照liquipedia这里有所有选手的鼠标速度设置,加速度设置于RAWINPUT是否开启,不同鼠标的最佳DPI是不同的,同EDPI下鼠标的轨迹也是不同的。
参照自己的操作习惯去修改是正确的,虽然不提倡一味地模仿职业选手的设置,但是前提是要知其所以然,切不可随心所欲胡乱设置,无知即力量并不可取。

1
"m_rawinput" "1"

开启原始输入,这个参数可以将系统对鼠标移动轨迹的影响改为尽可能小得,但是他也不是绝对的,所以如果想达到更好的状态,或者在不同线下环境下达到相同的手感,还是先要参考我们写的上一篇文章,在此也不做赘述。

1
2
"m_mouseaccel1" "0"
"m_mouseaccel2" "0"

这两条代表鼠标1与2的加速度为0,并非绝对会对你的鼠标轨迹产生影响,但是有时不可预料,几乎所有的职业选手CFG中这两项都改为0。

HUD与viewmodel

这部分是CFG修改的重中之重,因为一切操作需要反应在屏幕上,他决定了玩家认为鼠标下一步应该如何移动。压枪时虽然更多的是靠肌肉记忆与感觉来的但是在潜移默化中准星、HUD或者枪模的样式会影响对下一步操作的判断,如果准星比较粗那么会对自己的准星操作更不敏感,感觉压得更稳。枪模跟后坐力一起上扬也会影响到玩家对自己压枪到底下拉了多少的判断,所以找到一套符合自己直觉/手感的HUD将会对希望让自己操作更为精准、舒适的玩家有很大的作用

为了让注释部分更为直观,便把此部分的 cfg 显示为表格形式,复制时,将仅复制文本部分,后方表格同理

cl_hud_radar_scale 1 //雷达大小 <0.8-1.3>
cl_radar_scale 0.45 //雷达缩放
cl_radar_icon_scale_min 0.6 //雷达人物标点大小
cl_radar_rotate 1 //雷达随视角方向旋转,在烟雾中更容易清楚自己的方向不至于迷路
cl_radar_always_centered 1 //雷达以玩家为中心
viewmodel_fov "65" //决定了你的枪模FOV,并不是真正的FOV,真正的FOV在CSGO里是不可修改的,只与分辨率有关,在这里的数值决定了枪模的横向宽度,也就是数值越小枪模的贴图横向越窄,投放到屏幕上固定的宽度时也就越扁更胖,看上去大了,当然这个参数也与POS相对应,但是可以修改.(60-68/54)
viewmodel_offset_x "2" //对应枪模的X轴位置
viewmodel_offset_y "1.5" //对应枪模的Y轴位置
viewmodel_offset_z "-1" //对应枪模的Z轴位置
viewmodel_presetpos "0" //持枪视角预设<1.默认 2.写实 3.经典> 一般来说为了少挡屏幕,大家多数选择 3
cl_viewmodel_shift_left_amt "1.5" cl_viewmodel_shift_right_amt "0.75" //(需要放到autoexec)在下蹲动作时动画量的多少,这一项并不能改为0,这里为是最小值(摘自NIKO CFG)
cl_bobcycle "0" cl_bob_lower_amt "0" cl_bobamt_lat "0" cl_bobamt_vert "0" //(需要放到autoexec)玩家移动时枪模随移动一起摇摆的程度,最好的设置当然是调整为0
viewmodel_recoil "0" //枪模随后坐力上扬,当然要关闭
cl_crosshairgap //准星的空隙大小
cl_crosshairsize //准星长度
cl_crosshairstyle //准星风格 0为CSGO动态十字准星,1默认狮子的静态变体,2 经典静态准星但是每侧有动态圆点,3 经典动态十字 4 经典静态十字(一般大多数人使用的) 5 走路时不动,开枪时动
cl_crosshairthickness //准星粗细
cl_crosshair_drawoutline //决定准星是否有勾边(0/1)
cl_crosshaircolor //准星颜色(0-4)
cl_crosshairalpha //准星透明度 默认200,一般改为255完全不透明
cl_crosshairdot //开关准星中心原点(0/1)

当然,同样可以用创意工坊地图对枪模进行调整
crashz’ Viewmodel Generator

准星调整

crashz’ CROSSHAIR GENERATOR V3

对HUD进行调整(这张地图也可以对其他设置进行调整,但是因为更新不及时并不建议使用里面的大多数其他设置)

Config Generator ✮ crashz & Misterio

性能提升

以下的命令皆可提升FPS或减少掉帧,下面不做赘述

r_drawtracers_firstperson "0" //关闭曳光弹的显示;这条指令是在2018年4月的更新后开始流行的,那次修改改变了曳光弹的轨迹,导致前7发左右的发射位置并不准确,如果可以适应目前的轨迹那么可以考虑开启,同时关闭曳光弹也会减轻开火时的掉帧情况,低配电脑建议选择0.
cl_autohelp 0 //禁用游戏提示
cl_showhelp 0 //禁用游戏提示
cl_teamid_overhead_always 2 //隔墙显示队友位置 <0.不显示 1.透视队友位置 2.透视队友位置与装备> 开启显示队友位置会小幅度降低FPS但是很有助于对局势的判断,方便与队友配合,交流不是非常好的情况下这一项的打开非常有益。
r_dynamic 0 //关闭动态光影,可以提升FPS
gameinstructor_enable 0 //关闭游戏教学
spec_replay_autostart 0 //关闭被击杀回放
r_eyegloss "0" r_eyemove "0" r_eyeshift_x "0" r_eyeshift_y "0 r_eyeshift_z 0" r_eyeshift_z "0" r_eyesize "0" //取消人物模型的眼球转动,不知为何对5E尤其有效
cl_forcepreload 0 //这一项在先前的版本中用1的话可以提升FPS,但是在大约3月份的更新中,官方证明失效了,如果用1只会带来负面效果(增加input lag)

网络参数

net_graph 1 //打开网络信息 里面有很多有用的信息,可以显示上传下载情况,ping值,服务器质量
net_graphpos 1/2/3 //1在右下角,2在中间,3在左下角
net_graphproportionalfont //0为让字体变细,1为默认
net_graphheight 0 //竖直方向高度
cl_cmdrate "128" //下载128tick
cl_updaterate "128" //上传128tick
rate "786432" //游戏带宽限制rate [1]
cl_interp/cl_Interp_ratio //HITBOX 与人物模型的贴合度 [2]

[1] rate 是你给服务器传输数据的最大带宽值(bit),如果过低或者过高都会导致你莫名其妙打不死人或者是跳CHOKE,一般来说在稳定连接的服务器(比如在国内玩国内的平台)你的网络没有问题,可以直接 rate 786432 这样就是无限制网络带宽这是最好的。
如果你的宽带没有 10M 或者你在打海外服务器,可以尽量降低这个值,参照这个表

带宽大小 rate 值
0.5 Mbps rate 62500
1.0 Mbps rate 125000
1.5 Mbps rate 187500
1.57 Mbps rate 196608 (default rate)
2.0 Mbps rate 250000
2.5 Mbps rate 312500
3.0 Mbps rate 375000
3.5 Mbps rate 437500
4.0 Mbps rate 500000
4.5 Mbps rate 562500
5.0 Mbps rate 625000
5.5 Mbps rate 687500
6.0 Mbps rate 750000
6.2 Mbps and above rate 786432 (max rate)

[2] cl_interp/cl_Interp_ratio(需要放到autoexec,或者在没进入服务器时进行修改再链接到服务器)
这个参数的意义是 HITBOX 与人物模型的贴合度,在你的延迟,网络状况很好的情况下(ping<45,loss 0,choke 0)可以选择 cl_interp 0/cl_interp_ratio 1 (这两个参数是配套的)为搭配,他可以很大程度得提升你的单发准度,提高你的上限。
但是当你的的网络状况没有这么好的情况下,建议你的 interp 用默认也就是 cl_interp 0.031000-cl_interp_ratio 2 这样的情况下,你的压枪感觉会更容易找到,更加稳定。(interp后面的0代表的是在目前interp值情况下的最小值,反之1为最大值)
当然也有部分选手选择一套并不符合规范的interp套餐,使用interp 0.031000ratio 1 比如国内的somebody,国外的hunter(NIKO大表哥)这样的interp设置在5E的恶劣服务器上尤为好用,虽然有时会莫名其妙失误,但是使用CZ那种短连发武器或者AK的短连发时尤为好用,经常可以莫名其妙打头,想要仔细去了解这个参数可以参考CSGO逗逼君在知乎的文章 [2]

其他杂项设置

cl_autowepswitch "0" //关闭自动切换拾起的武器
cl_dm_buyrandomweapons 0 //关闭死斗随机买枪
cl_use_opens_buy_menu 0 //关闭E键打开购买菜单
fps_max "999" //调整FPS上限

FPS上限 要看具体电脑性能,如果可以稳定在300那么尝试更高的上限是一个好的选择这会降低输入延迟,但是如果不能超过太多的话选择更高的上线会造成CPU不能进行短暂休息导致FPS不稳定。(如果想要不限制FPS,建议使用999而不是0,因为莫名原因使用999会比0时的FPS高一些)。

接下来就保存好文件,畅快体验吧

参考链接


  1. B站链接

  2. CSGO深度教学7——从wNv被“黑”掉的世界冠军,到CS的Netcodes与客户端参数Kryp

本文作者 : Edison Jwa
本文使用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议
本文链接 : https://www.wevg.org/archives/csgo-config-guide/

本文最后更新于 天前,文中所描述的信息可能已发生改变