И так, что такое биндинг? Bind - это связывать, привязывать, скреплять. Для лучшего понимания области применения рассмотрим несколько типичных случаев.
Например, вы хотите приободрить противника, написав ему что нибудь типа - "You die soon!!! Muhahaha". Не зная биндов вы открываете чат, начинаете писать, подбирать нужные цветовые гаммы для вашего сообщения - что бы лучше дошло. А в это время противник выбегает из за угла (или выпрыгивает) и вы гибните под его возглас "You die soon!!! Muhahaha". Это никуда не годиться.
Или вы последний оставшийся в семье грейнджер, вы, убегая, пытаетесь поставить где нибудь яйцо, что б хоть на немного отвлечь внимание преследователя и смыться. Вы вызываете меню построек, ищите в списке Egg, кликаете ... хотя нет, скорее всего вы уже труп.
Вообщем, надеюсь, основная мысль ясна - нужен какой то более быстрый механизм для выполнения стандартных операций - постройка, покупка, типовые сообщения, переключение оружия, джетпака, аптечки, гренки и т.д. В идеале нажал на клавишу и все готово. И такой механизм есть - биндинг (связывание клавиши с набором действий).
Общий формат комнды bind выглядит так:
bind [+] <key> <commands> + - говорит о том что действие совершается при нажатии на клавишу (достаточно вдавить ее) [не обязательная опция] key - клавиша на которую биндим commands - список действий который мы хотим совершить
Что это могут быть за действия (потенциально там может быть много чего - админские команды, управление просмотром демки, гаммой, звуком и т.п., но мы рассмотрим пока только глобальные стандартные команды касающиеся игрового процесса).
build <structure> Построить. В поле structure возможно значение - eggpod, acid_tube, barricade, overmind, hive, booster, trapper, hovel, telenode, mgturret, reactor, arm, medistat, repeater, tesla, dcc. Строить можно гренджером или когда у вас руках ckit или ackit.
buy <item> Купить что либо. В поле item может быть одно из следующего - ckit, ackit, rifle, shotgun, lgun, mdriver, chaingun, prifle, flamer, lcannon, gren, jetpack, battpack, larmour, helmet, bsuit. Работает данная команда только когда вы недалеко от армори (big green box).
class <name> Эволюционировать в класс алиенов и некоторые классы людей. В поле может быть следующее - rifle, ckit, ackit (работает когда вы мертвы или только что вошли), builder (родиться гренджером), builderupg, level0 (dretch), level1 (basi), level1upg (adv. basi), level2 (mara), level2upg (adv. mara), level3 (goon), level3upg (adv. goon), level4 (tyrant).
echo <"text"> Выводит видное только вам сообщение. В поле text можете задавать что хотите.
itemact <item> itemact - Делает предмет в вашем инвертаре активным. В поле item может быть следующее - kit, ackit, rifle, shotgun, lgun, mdriver, chaingun, prifle, flamer, lcannon, gren, jetpack, medkit, blaster. После покупки желательно активировать то что вы купили, что б не бегать с бластером.
itemtoggle <item> Переключает состояние активно/не активно. В поле item - ckit, ackit, rifle, shotgun, lgun, mdriver, chaingun, prifle, flamer, lcannon, gren, jetpack, medkit, blaster. Например команда itemtoggle blaster переключает вас между бластером и первичным оружием и наоброт.
team <team> Выбирает команду в которую вы войдете. В поле team - humans, aliens, auto, spectate.
toggle <variable> Устанавливает переменную (variable) в 1, если она была равна 0, иначе в 0. Список всех переменных большой, не для этой статьи.
say <"text"> Выводит сообщение в общий чат. В поле text можете задавать что хотите.
say_team <"text"> Выводит сообщение в командный чат. В поле text можете задавать что хотите.
sell<item> Продать предмет. В поле item можеть одно из следующего - ckit, ackit, rifle, shotgun, lgun, mdriver, chaingun, prifle, flamer, lcannon, gren, jetpack, battpack, larmour, helmet, bsuit. Кроме этого можно указать weapon или upgrades. Weapon продаст оружие, upgrades - улучшения вроде брони, хелмета, джетпака.
set, seta, setu, sets <variable> <value> Устанавливает переменной заданное значение. При использовании set изменение может быть отклонено, если переменная уже задана. Команда seta изменяет значение и запоминает старое (в случае чего может быть восстановлено). Команда setu добавляет переменную в ваше userinfo, но большинство таких переменных на которые ответил бы сервер уже есть в вашем userinfo (изначально). Команда sets добавляет перменную в serverinfo.
wait <num> Ждать num фраймов. Фрайм это один цикл обработки движка, обычно малая доля секунды. Частота фраймов fps выводится как правило в правом верхнем углу.
Тут надо познакомить еще с 4 важными командами. Которые помогут нам более безопастно обращаться с конфигурацией.
unbind <key> Разрушает связь между клавишей и действием.Key - клавиша для которой рвется связь.
unbindall Разрушает все текущиее связи клавиш.
reset <variable> Восстанавливает значение по умолчанию заданной переменной.
exec <filename> Применяет все команды из заданного файла. Мы можем хранить разные настройки для разных ситуаций и при необходимости загружать нужную. Не забудьте сохранить конфигурацию по умолчанию (autoexec.cfg) где нибудь сбоку прежде чем начнете экспереминтировать с биндами =).
Большинство названий клавиш совпадают с их значением. Но есть некоторые у которых есть спецальные имена -