DDNET 知识库

中文 Wiki

DDNet Workshop 中文知识库,收录 79 Wiki 词条,涵盖游戏技巧、机制等内容,提升广大玩家游戏理解

按键绑定 Binds
Bind使用教程•Bind使用教程

按键绑定 Binds

DDNet中通过控制台将设置与指令绑定到键盘和鼠标的完整指南

按键绑定BindsCFG控制台指令
2024-01-01

在《DDNet》里你能通过 F1 控制台将 设置与指令绑定到您的键盘和鼠标上。

语法

单指令绑定

cfg
bind [按键] [设置/指令] [参数]

此为绑定的基本语法。

参数说明:

参数说明
[按键]键盘和鼠标上您所选的任意按键
[设置/指令]您可以在官方网站(设置与指令)或站内页面(设置与指令)查找相关设置和指令
[参数]您想要调整的设置或指令的变量或参数(仅有某些设置需要使用参数,指令和某些设置无需参数)

按键名称查询:

  • 倘若您不知道某个按键的名称,可以在 这个页面 中查找
  • 亦或者在游戏 设置 > 控制 中随意找一格按下你想要的按键,即会显示按键名称

修饰键使用:

您也可以与修饰键 Ctrl、Shift、Alt 和 GUI 键(即 Windows 的 Win、Mac 的 Command、Linux 的 Super)一起使用:

cfg
bind ctrl+[按键] [设置/指令] [参数]

多指令绑定

您可以使用分号将多条设置与指令绑定到单一按键上:

cfg
bind [按键] "[设置/指令] [参数];[设置/指令] [参数]"

执行特点:

  • 当您按下此按键后,所有绑定到这个按键的设置与指令会在同一时间被激活
  • 换言之,这些设置与指令不会按照您所写的顺序依次激活
  • 如果您想它们依次激活,您可以将它们分别绑定到不同的按键上,依次按下以激活
  • 或者 使用配置文件 让您多次按下同一按键时顺序激活不同的设置与指令

嵌套绑定

您可以使用反斜杠将一条绑定嵌套在另一绑定中:

cfg
bind [按键] "bind [按键] \"[设置/指令] [参数]; bind [按键] \\\"[设置/指令] [参数] \\\"\""

嵌套限制:

  • 客户端的字符长度限制为 255
  • 每一层嵌套的反斜杠数量为上一层的反斜杠数量乘二加一
  • 倘若您使用六层嵌套,反斜杠数量将会是 240 个(12 + 32 + 72 + 152 + 312 + 632),这样您只剩 15 个字符可键入
  • 因此只能接受最多五层嵌套

每一层的反斜杠数量:

1 = 1   \
2 = 3   \\\
3 = 7   \\\\\\\
4 = 15  \\\\\\\\\\\
5 = 31  \\\\\\\\\\\\\\\\\\\\\\\

拆解示例:

cfg
bind [按键]
 "bind [按键]
  \"[设置/指令] [参数]; bind [按键]
   \\\"[设置/指令] [参数]; bind [按键]
    \\\\\\\"[设置/指令] [参数]
    \\\\\\\"
   \\\"
  \"
 "

提示:你无法通过以上代码使一个 cfg 文件运行。这个例子只是为了清晰的展示出嵌套的用法。

实用设置与指令

Toggle(切换)

toggle 指令可以让您在单个按键切换设置的两个参数。客户端中有两种切换方式:

类型说明
toggle令您每按一次按键时切换为另一个参数
+toggle令您在按下按键时使用第一个参数,松开按键时则使用第二个参数
cfg
bind [按键] "toggle [设置] [参数1] [参数2]"
cfg
bind [按键] "+toggle [设置] [参数1] [参数2]"

Say(说话)

Say 指令可以帮您在聊天框里快速输入文本。

cfg
bind [按键] say /[聊天框指令]
cfg
bind [按键] say [聊天信息]

颜色

某些客户端指令可以让您设置颜色:

  • player_color_body
  • player_color_feet
  • cl_message_client_color

获取颜色参数的方法:

  1. 先在设定内调好颜色
  2. 再在 F1 控制台内查询
  3. 例如在 设置 > Tee 里将本体身体颜色调成绿色后,可以在控制台内使用与其所对应的客户端指令 player_color_body
  4. 所返回在 Value: 后的一串数字则是您所调的绿色的参数

绑定示例:

cfg
bind [按键] player_color_body 5635840

使用十六进制代码:

cfg
bind [按键] player_color_body $00FF00

支持的颜色名:

客户端也支持直接使用某些颜色名:red、yellow、green、cyan、blue、magenta、white、gray、black。

Emote(表情)

emote 指令可以让您在不使用表情选择器下快速发出表情。

指令与参数表情解释英语原文
emote 0哎呀oop
emote 1惊叹exclamation
emote 2爱心hearts
emote 3流汗drop
emote 4无语dotdot
emote 5哼歌music
emote 6抱歉sorry
emote 7鬼魂ghost
emote 8发怒sushi
emote 9谩骂 Teesplattee
emote 10魔鬼 Teedeviltee
emote 11粗鄙之语zomg
emote 12打哈欠zzz
emote 13什么鬼wtf
emote 14笑脸eyes
emote 15疑问question

使用示例:

假如您想发出鬼魂表情时,您要输入:

cfg
bind [按键] emote 14

其它实用指令

查询按键绑定:

cfg
binds [按键]
  • 当您不输入按键时,则会显示所有按键的绑定

取消按键绑定:

cfg
unbind [按键]

使用配置文件

语法

对于更复杂的绑定,您可以创建并使用配置文件。

settings.cfg

cfg
[设置/指令] [参数]
[设置/指令] [参数]
[设置/指令] [参数]; [设置/指令] [参数]
[设置/指令] [参数]; [设置/指令] [参数]

bind [按键] [设置/指令] [参数]
bind [按键] exec [文件名.cfg]

特点:

  • 多条设置/指令可以以分号或分行分隔开
  • 您可将您所要的设置/指令/绑定都写在单个配置文件里

绑定配置文件到按键:

cfg
bind [按键] [settings.cfg]

备注:后缀名 .cfg 可以更改为任何您想要的后缀名。

路径与执行

您需要将配置文件放在配置目录中。有关于配置目录的路径,详见:《DDNet》的配置文件,配置目录在哪?

执行配置文件:

当您将配置文件放在正确的路径,您可以在 F1 控制台使用 exec 指令执行它:

cfg
bind [按键] exec [配置文件.cfg]

子文件夹中的配置文件:

当您将配置文件放在配置目录下的文件夹中,您需把文件夹的名也给打上:

cfg
bind [按键] exec [文件夹/文件夹/配置文件.cfg]

Toggle 进阶:CFG 文件

配置文件可以让您更容易的切换,您只需要创建两个配置文件:

配置文件1.cfg

cfg
[设置/指令] [参数]
[设置/指令] [参数]
[设置/指令] [参数]

bind [按键] exec 配置文件2.cfg

配置文件2.cfg

cfg
[设置/指令] [参数]
[设置/指令] [参数]
[设置/指令] [参数]

bind [按键] exec 配置文件1.cfg

使用要点:

  • 在两个配置文件里的 [按键] 需为同一按键
  • 将其中一个配置文件绑定到 [按键] 中
  • 这样您每按一次按键,都会执行相对配置文件的设置/指令并将按键绑定为另一个配置文件,以此达到循环切换
  • 您还可以在此循环内加入更多的配置文件

自定义

Echo(回应)

echo 指令可以让您更清楚的了解您执行了什么设置/指令。

cfg
[设置/指令] [参数]
[设置/指令] [参数]

echo 设置开

bind [按键] exec 配置文件1.cfg

这样当您按下 [按键] 时,聊天框内会提示"设置开"。

加上颜色:

cfg
[设置/指令] [参数]
[设置/指令] [参数]

cl_message_client_color red
echo 设置关

bind [按键] exec 配置文件1.cfg

这样当您按下 [按键] 时,聊天框内会提示"设置关"。将开关定为不同的颜色,可方便您了解您执行了什么设置/指令。

注释

在配置文件里,您可使用注释:

cfg
# 以下为设置/指令
[设置/指令] [参数]
[设置/指令] [参数]

# 以下为将按键绑定为另一配置文件
bind [按键] exec 配置文件1.cfg

绑定例子

辅助线常开

cl_show_hook_coll_own 指令能让您在不用 +showhookcoll 绑定(默认为 S 键)下显示辅助线。当您将其参数设为 2 时,您的辅助线会对您常显示(其他玩家不会看见)。

hook_line_on.cfg

cfg
cl_show_hook_coll_own 2

cl_message_client_color green
echo Hook Line ON

bind x exec hook_line_off.cfg

hook_line_off.cfg

cfg
cl_show_hook_coll_own 1

cl_message_client_color red
echo Hook Line OFF

bind x exec hook_line_on.cfg

将这两个配置文件放在配置目录里,并在 F1 控制台输入:

cfg
bind x exec hook_line_on.cfg

显示所有玩家辅助线

cl_show_hook_coll_other 指令能让您看到所有玩家的辅助线。您可以直接将其添加到默认绑定中:

cfg
bind s "+showhookcoll; +toggle cl_show_hook_coll_other 2 1"

深度冻结飞行

深度冻结飞行(英语:Deep Fly)绑定可以让您的分身朝您锤击/开火。如果您的分身处于深度冻结状态,您使用此绑定锤击它时,它们也会锤击您。以此,在练习后您可与在深度冻结状态下的分身飞行(某些地图会设置成深度冻结状态下不能锤击/开火)。而如果没有被深度冻结,您也可以以此绑定取代默认的 Hammerfly 绑定,这能让您更好的控制分身锤击时间。

提示:如果地图作者将地图设置为 sv_deepfly 0,你将无法与这个深度冻结的 tee 进行飞行,否则该技巧能可能让玩家不以作者设想的方式来通过地图。深度冻结飞行的绑定对冻结或解冻状态下的 tee 仍然有效。作为地图里的玩家,这项设置是无法改变的。

cl_dummy_hammer 1 是一般在设置里的分身 Hammerfly 绑定。使用 +toggle 指令就能达到在按下按键时,分身才锤击的效果,如下:

使用两个配置文件

deepfly_on.cfg

cfg
bind mouse1 "+fire; +toggle cl_dummy_hammer 1 0"

cl_message_client_color green
echo Deep Fly ON

bind x exec deepfly_off.cfg

deepfly_off.cfg

cfg
bind mouse1 +fire
cl_dummy_hammer 0

cl_message_client_color red
echo Deep Fly OFF

bind x exec deepfly_on.cfg

将这两个配置文件放在配置目录里,并在 F1 控制台输入:

cfg
bind x exec deepfly_on.cfg

使用单个配置文件

您也可以将以上两个配置文件整合:

cfg
bind x "bind mouse1 \"+fire; +toggle cl_dummy_hammer 1 0\";cl_message_client_color green; echo Deep Fly ON; bind x \"bind mouse1 +fire; cl_dummy_hammer 0; cl_message_client_color red; echo Deep Fly OFF; exec deepfly.cfg\""

将这个配置文件放在配置目录里,并在 F1 控制台输入:

cfg
bind x exec deepfly.cfg

备注一:配置文件中假定了您的 +fire(开火)绑定在 mouse1 (鼠标左键)上。

备注二:如果您使用单个配置文件,在您按住开火键时关闭绑定的话,会出现所谓卡键的情况,因为您的 cl_dummy_hammer 指令参数固定为 1。您只能通过使用两个配置文件解决。

武器切换

cl_dummy_restore_weapon 1 您的设置默认为以上,因此当您的分身并非拿着锤子而您去使用深度冻结飞行绑定时会出现如视频中的情况,这有一定的好处。您可以将参数更改为 0,让分身武器自动切换为锤子:

cfg
cl_dummy_restore_weapon 0

您也可以自行运用 toggle 或者 配置文件 将下面指令绑定至切换武器的按键上。

cfg
bind [按键] "+weapon1; cl_dummy_restore_weapon 0"
cfg
bind [按键] "+weapon5; cl_dummy_restore_weapon 1"

备注:请谨记不要使用 +nextweapon 和 +prevweapon(默认绑定为鼠标滚轮向上和鼠标滚轮向下中)切换武器,否则将出现武器乱切换的情况。

45度角

这个绑定能让您锁死角度,只剩下八个方向(每 45 度):

cfg
bind x "+toggle cl_mouse_max_distance 2 400; +toggle inp_mousesens 1 200; +showhookcoll"

您需要在 F1 控制台输入 cl_mouse_max_distance 查询参数,并将 400 替换成查询参数;以及在 F1 控制台输入 inp_mousesens 查询参数,并将 200 替换成查询参数:

cfg
bind x "+toggle cl_mouse_max_distance 2 [您的参数]; +toggle inp_mousesens 1 [您的参数]; +showhookcoll"

变色 Tee

要达到变色的效果,你需要将 player_color_body 指令绑定到移动或操作键上,例如:

cfg
bind a "+left; player_color_body red"

您可使用配置文件,以便于调整。以下为例子:

rainbow_tee.cfg

cfg
bind a "+left; player_color_body red"
bind d "+right; player_color_body yellow"
bind space "+jump; player_color_body green"
bind mouse1 "+fire; player_color_body blue"
bind mouse2 "+hook; player_color_body cyan"

将这配置文件放在配置目录里,并在 F1 控制台输入:

cfg
exec rainbow_tee.cfg

您可使用多个配置文件,方便开关。以下为一组例子:

rainbow_tee_on.cfg

cfg
bind a "+left; player_color_body red"
bind d "+right; player_color_body yellow"
bind space "+jump; player_color_body green"
bind mouse1 "+fire; player_color_body blue"
bind mouse2 "+hook; player_color_body cyan"

bind x exec rainbow_tee_off.cfg

rainbow_tee_off.cfg

cfg
bind a +left
bind d +right
bind space +jump
bind mouse1 +fire
bind mouse2 +hook

bind x exec rainbow_tee_on.cfg

将这两个配置文件放在配置目录里,并在 F1 控制台输入:

cfg
bind x exec rainbow_tee_on.cfg

您可以加入 player_color_feet 指令达到更有趣的变色效果。

备注:配置文件中假定了您的的绑定皆为默认绑定。

另见


小提示

  • 使用 binds [按键] 可以查询某个按键的当前绑定,不加参数则显示所有绑定
  • unbind [按键] 可以取消指定按键的绑定
  • 多指令绑定使用分号分隔,但指令是同时执行而非顺序执行
  • 嵌套绑定最多支持 5 层,受 255 字符长度限制
  • toggle 是按键切换,+toggle 是按住/松开切换
  • 配置文件可以实现更复杂的逻辑和状态切换
  • 使用 echo 配合 cl_message_client_color 可以给切换操作添加视觉反馈
  • 深度冻结飞行(Deep Fly)是进阶分身技巧,需要合理配置绑定