CSGO绑定按键原理与方法(上),CSGO控制台指令bind、bindtoggle详解【破亚空CSGO】 您所在的位置:网站首页 csgo切换至控制台是什么意思啊 CSGO绑定按键原理与方法(上),CSGO控制台指令bind、bindtoggle详解【破亚空CSGO】

CSGO绑定按键原理与方法(上),CSGO控制台指令bind、bindtoggle详解【破亚空CSGO】

2023-11-05 14:24| 来源: 网络整理| 查看: 265

请注意!本文章假设您会使用控制台,本文不会对控制台的使用方法进行任何说明

如果您想了解控制台是什么,可以观看:av56214232

请注意!在使用控制台之前,建议您先备份好自己的csgo设置,以避免误操作导致难以修复的问题。cfg的备份方法:

请注意!某些指令需要开启作弊sv_cheats 1才能正常使用

本文参考的文章:

https://developer.valvesoftware.com/wiki/Bind

bind→使用方式:

    bind KEY COMMANDS

    bind "按键" "指令"

    (不区分大小写)

例子:绑定滚轮上为跳跃

bind "mwheelup" "+jump"

bind→指令分析:

bind指令包含三个东西,bind、按键和指令

一个完整的bind指令:

bind "[按键]" "[指令]"

按键[KEY]

我们先从按键讲起

在CSGO中,无论是鼠标按键、键盘按键还是手柄按键,都属于按键

但是这并不意味着所有的按键都能够在CSGO中正常使用

CSGO按键列表

我们只能够使用列表中包含的按键(当然已经足够我们使用了)

其中值得注意的是

按键:鼠标按键[mouse]

鼠标按键只支持7个

mouse1 鼠标左键

mouse2 鼠标右键

mouse3 鼠标中键(滚轮按下去)

mouse4 鼠标侧键

mouse5 鼠标侧键

mwheelup 滚轮向下

mwheeldown 滚轮向上

这意味着如果你的鼠标侧键大于两个,那你需要在鼠标驱动当中将其他侧键设置为键盘按键/摇杆按键才能正常使用

按键:键盘[keyboard]

CSGO不支持Win键、Fn键和媒体键

其中值得注意的是:shift、alt、ctrl

这三个按键在我们的键盘上都有两个,一左一右,分别对应为:

shift/rshift

alt/ralt

ctrl/rctrl

例子:绑定左ctrl为蹲伏,绑定右ctrl为跳跃

bind "ctrl" "+duck";bind "rctrl" "+jump";

指令[COMMAND]

要使用指令,首先我们要知道我们有什么指令可以用

获取指令的方法:

1、百度(搜索引擎)

2、控制台输入:find "关键字"(CSGO控制台搜索)

3、blog.counter-strike.net(CSGO官方更新文档)

4、https://totalcsgo.com/commands(第三方网站 个人推荐)

5、developer.valvesoftware.com(valve开发者文档 不推荐新手使用)

解析:

指令的使用本身是不需要绑键的

只要直接在控制台输入正确的指令名称,CSGO就会自动地执行指令

像是我们常见的改准星指令、作弊指令等等

都可以完全独立于按键[KEY]使用

绑键的目的,更多的时候是为了方便

明白了按键和指令之后

我们就可以打开CSGO进行按键绑定了

例子:

bind "j" "cheer" (绑定J键为欢呼)

bind "mwheelup" "+jump"(绑定滚轮上为跳跃)

语法解析:

bind "KEY" "COMMANDS";

在控制台输入 bind 然后回车,可以看到bind指令的语法

其中

分隔符-分号[;]

分号[;]用于分隔多个指令

正确例子1:

bind "ctrl" "+duck";bind "rctrl" "+jump";

正确例子2:

bind "ctrl" "+duck";

bind "rctrl" "+jump";

正确例子3:

bind "g" "+drop;cheer"

特别的:

bind KEY COMMANDS;←这个分号是可以被省略的

加分号的目的仅仅是为了编辑时能够方便组合多个bind指令

组合符号-双引号[""]

双引号["]用于组合多个参数(双引号必须是英文输入法)

正确例子:

bind "g" "drop;cheer" 

错误例子:

bind “g” “drop;cheer”(双引号错误)

bind "space;mwheelup" "+jump"(不能用于组合按键)

在多数情况下,双引号是可以被省略的

正确例子:

bind mwheelup +jump

但在以下情况下,双引号是不可以被省略的

1、多个指令存在时

错误例子:

bind g drop;cheer(指令cheer没被成功绑定)

2、绑定的指令含有空格

错误例子:

bind j sv_cheats 1(指令sv_cheats 1没被成功绑定)

其他:

由于bind指令也是一个指令

以下的指令是正确的

bind "h" "bind j drop"

理论上我们可以无限套娃

也就是bind a bind b bind c bind d cheer

(但是因为语法问题所以做不到)

特别的:

+commands

由于[+指令]的CSGO代码有问题,组合使用[+指令]会出现各种BUG

为了避免这些BUG,我们需要使用在后面学习alias指令和exec指令

BUG例子:

bind "space" "+jump;+duck"

bind "r" "+reload;say_team i'm reloading!"

bind "rctrl" "cheer;+duck"

这些指令是能够成功被绑定的,但是功能会不正常

请注意!在控制台绑定的按键不一定会在按键设置面板中出现,如果要解绑隐藏的按键,请使用key_listboundkeys和unbind指令,详情:

进阶教程:(建议自己动手实验)

进阶教程1:

BindToggle

使用方式:BindToggle KEY CVAR

其中CVAR指的是Commands and variables,也就是带参数的指令[COMMANDS]

特别的:bingtoggle只能绑定带一个参数的指令

例子:bindtoggle "j" "sv_cheats"    (其中绑定的时候不需要输入参数)

运行效果:

默认→sv_cheats 0

按下→sv_cheats 1

按下→sv_cheats 0

按下→sv_cheats 1

按下→......

进阶教程2:

Bind incrementvar

bind incrementvar是bindtoggle的进阶模式

同样的,incrementvar只能绑定带一个参数的指令

使用方式:bind KEY "incrementvar CVAR Min Max Step"(其中双引号["]不能省略)

我们同样以sv_cheats作为例子

bind j "incrementvar sv_cheats 0 1 1"

这条指令和前面的bindtoggle "j" "sv_cheats"是完全一样的

运行效果:

默认→sv_cheats 0

按下→sv_cheats 1

按下→sv_cheats 0

按下→sv_cheats 1

按下→......

指令分析:

bind j "incrementvar sv_cheats 0 1 1"

这是一条加法指令,其中最重要的参数是后面的三个数字,也就是0、1、1

其中第一个参数[0]指的是最小值

其中第二个参数[1]指的是最大值

其中第三个参数[1]指的是步长

我们通过调整参数来学习指令的使用

首先我们调整第二个参数,最大值[1]→[5]

bind j "incrementvar sv_cheats 0 5 1"

默认→sv_cheats 0

按下→sv_cheats 1

按下→sv_cheats 2

按下→sv_cheats 3

按下→sv_cheats 4

按下→sv_cheats 5

按下→sv_cheats 0

按下→sv_cheats 1

按下→......

我们调整第一个参数,最小值[0]→[-3]

bind j "incrementvar sv_cheats -3 5 1"

默认→sv_cheats 0

按下→sv_cheats 1

按下→sv_cheats 2

按下→sv_cheats 3

按下→sv_cheats 4

按下→sv_cheats 5

按下→sv_cheats -3

按下→sv_cheats -2

按下→......

我们调整第三个参数,步长[1]→[4]

bind j "incrementvar sv_cheats -3 5 4"

默认→sv_cheats 0

按下→sv_cheats 4

按下→sv_cheats -3

按下→sv_cheats 1

按下→sv_cheats 5

按下→sv_cheats -3

按下→sv_cheats 1

按下→sv_cheats 5

按下→......

可以发现一个特点

参数超过最大值后,控制台会直接将参数直接变为最小值[-3]

也就是溢出的数值会被忽略掉,参数被重新设置为最小值

特别的:

Bind decrementvar[不存在]

CSGO控制台是没有减法指令[decrementvar]的

所以我们可以通过调整第三个参数,步长[4]→[-4],来实现减参数

bind j "incrementvar sv_cheats -3 5 -4"

默认→sv_cheats 0

按下→sv_cheats 5

按下→sv_cheats -1

按下→sv_cheats -3

按下→sv_cheats 5

按下→sv_cheats -1

按下→sv_cheats -3

按下→......

特别的:

参数并不是一个完整的循环[Circle]

当参数超过最小值后,控制台会直接将参数直接设置为最大值

当参数超过最大值后,控制台会直接将参数直接设置为最小值

溢出的数值会被直接忽略掉,参数被直接设置为最大最小值

文章到这里就结束了

如果可以,请给我充电吧,非常感谢♪(・ω・)ノThanks

转载请注明作者:bilibili-破亚空



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有