Конфиг – это файл (обычный текстовый документ), содержащий те или иные настройки HL/CS. С версии CS 1.4 разрешено загружать (в консоли ввести exec myconfig.cfg) только конфиги с расширением *.cfg и *.rc. По сложившейся традиции конфиг имеет расширение *.cfg, но это не принципиально. Если вы не знаете консольный команд CS/HL, то думаю вам надо хоть немного изучить файл hl/cstrike/config.cfg, в нем хранится довольно много интересных команд, но в тоже время их слишком мало. Но для начало подойдет.
Итак, с чего же начать писать свой конфиг? Наверное, с понимания того для чего Вы будете его применят. Т.е. это настройки пользователя, сервера, Интернет/LAN соединения. Настройки пользователя и сети можно объединить, а настройки сервера следует внести в другой файл – так удобнее. Но некоторые настройки пользователя следует также внести в другой файл. Куда, зачем и т.д. поговорим позже.
Список консольных команд находится тут. Замечу, что с каждой новой версией/обновлением Counter-Strike, команд становится больше. Поэтому в списке, скорее всего не хватает всех команд, но они нам все не нужны, а только отдельная их часть.
Итак, приступим.
Знаки, позволяющие правильно "работать" конфигу:
// - означает, что после пишется комментарий/пояснение. Эта строчка движком HL не считывается;
; - разделение команд;
% - этим знаком можно заменить пробел, т.к. движок HL не различает их. Например: bind f1 "name my%name";
"" – в кавычки берется череда команд разделенные ; и пробелами (команда – значение).
Если Вы напишите в конфиге следующее:
echo Loading config...
Loaded config.
надпись Loaded config. не отобразится, будет видно только Loading config... Следует писать только латинскими буквами.
Если Ваш конфиг имеет объем выше 64Кб (для CS v1.6 и CZ v1.2) не исключено появления следующих глюков:
- грузиться не полностью;
- пишет о несуществующих ошибках;
- иногда выдается команда overflow;
- выкидывает с сервера на фиг;
- или еще что.
Теперь как этот конфиг загрузить. Варианты:
1. Разместите свой конфиг в каталоге hlcstrike или hlvalve. Если Вы разместили файл в каталоге hlvalve, то это означает, что конфиг доступен во всех модах HL, если только в hlcstrike, то конфиг будет доступен только из CS. В конфиге прописываете:
bind PGUP "exec myconfig.cfg"
В игре вводите в консоли exec myconfig.cfg – все конфиг загружен. При следующем заходе в игру вам следует нажать клавишу PGUP и конфиг загрузится. Если при загрузке конфига вывелась надпись couldn't exec myconfig.cfg – это означает, что Вы либо не правильно ввели имя конфига либо такого конфига не существует.
2. Создайте файл autoexec.cfg в hlcstrike. В него пропишите alias’ы, т.к. если прописать те команды которые имеются в файле config.cfg в hlcstrike, то значения этих команд будут заменены на те что в config.cfg. В config.cfg алиасы не содержатся, следовательно, алиасы заменены не будут. Файл autoexec.cfg автоматически загружается, соответственно все ваши alias’ы будут загружены. А чтобы загрузить другую часть конфига используйте 1 вариант.
3. В директории hlcstrike есть файл listenserver.cfg пропишите в нем exec mayconfig.cfg. Все настройки вступят в силу. Т.к. конфиг загружается последний перед открытием карты, то все значения которые в нем прописаны будут иметь те значения, которые прописали Вы. Есть команды, которые нужно вводить до загрузки игры (или во время игры сделать restart) и тут использования этого варианта выгоднее. Но к сожалению данный файл загружается если игру создаете через консоль/мены Вы. При коннекте к серверу в Интернет/LAN конфиг не загрузится.
В файле можно оставить команды сервера и команды отвечающие за графику (команды для графики как правило требуют рестарт карты после изменения значений в игре). Таким образом, они выполнятся, непосредственно, перед открытием карты и будут иметь те значения, которые прописали Вы.
4. Перед созданием игры или коннекта к игре следует вручную ввести в консоли exec mayconfig.cfg, а потом приконнектится к серверу: connect cs.rusmedia.ru, к примеру.
Для обеспечения порядка в папке, где размещены конфиг/и, можно создать папку, поместить в нее свои/й конфиг/и. При этом следует изменить параметр команды exec так:
exec myconfigs/myconfig.cfg
Слеш следует вводить именно так /, иначе движок HL не примет путь к конфигу.
Итак. Самым разумным будет разместить alias’ы в autoexec.cfg; серверные и команды для графики в файле listenserver.cfg (с поправками); все остальные (в том числе и команды cl_ (отвечают за сетевые настройки клиента)) команды в отдельном файле и загружать его в игре. Но Вы решайте сами где и что будет размещаться.
В моем конфиге есть несколько скриптов. Они просты в создании.
Bind - это команда, приклеивающая к какой ни будь кнопке определенное действие, например bind "ctrl" "drop" приклеивает к кнопке CTRL функцию "выбросить оружие"
Alias - родной брат макроса, то есть приклеивает к какой-нить команде ряд определенных действий.(Для тех кто играет на Линцензионной версии Counter-Strike Steam - настоятельно нерекомендуюу использовать "Alias")
"user iamx" А теперь по теме как начинать команду покупки оружия , например м4а1 я хочу купить?
Давным давно, в далекой далекой id-software был сделан Quake, и дабы приятно было всяким геймерам, придумали аксакалы консоль, которая закрывает пол-экрана и мешает играть. И стало геймерам муторно, и сказали они: “забьем мы на вашу кваку, и останетесь вы в глубоком поппинсе”. И стало стыдно мудрецам, и добавили они в консоль буковки и циферки всякие и сказали геймерам: “Се - язык! Специально для кваки сделаный. Кто поймет язык этот великий, сможет управление свое менять не выходя из игры и фишки умные лепить, которые неизвестны доселе были геймерам, меняющим управление в глупом и непрогрессивном меню “Controls”. И возрадовались геймеры, и признали кваку игрой. Много килобайт утекло с тех пор. Появились у кваки дети, внуки и соседи по комнате, но до сих пор у всех них можно забить верхнюю половину экрана странными букивками и цифирками.
Итак, что же такое autoexec.cfg и config.cfg. Это те самые файлики, где хранятся ваши настройки. Конфиг, это место, где обитают бинды, а автоэкзек, жилище алиасов. Bind - это команда, приклеивающая к какой нибудь кнопке определенное действие, например bind “ctrl” “drop” приклеивает к кнопке CTRL функцию “выбросить оружие”.
Alias - родной брат макроса, то есть приклеивает к какой-нить команде ряд определенных действий, например alias awp "buy; menuselect 4; menuselect 6; buyammo1; menuselect 0;" создает команду awp, при исполнении которой открывается меню покупки, выбирается раздел 4 (винтовки), затем раздел 6 (сама АВП), покупается один комплект патронов и выходится из меню покупки. Теперь, введя в конфиге команду bind "f7" awp, вы получаете на клавише F7 полный цикл приобредения снайперки.
Есть еще в конфиге куча команд, отражающих разные игровые параметры, но это тема отдельного разговора. Приведу лишь пару примеров:
zoom_sensitivity_ratio "0.700" - разная чувствительность мыши с/без приближения. В данном случае чувствительность мыши в режиме приближения составляет 0,7 от обычной.
scr_conspeed 9999 - скорость выпадания консоли (в данном случае безумно высокая)
sv_gravity - 800 гравитация в игре. (в данном случае стандартная)
Что бы узнать значения той или иной переменной, надо просто вписать ее в консоли (т.е. просто sv_gravity выдаст вам значение этой переменной). Естественно, часть команд работают только на сервере (например та-же гравитация или всеми любимый kick).
При создании своих автоэкзека и конфига, важно знать, что-же с ними происходит. Когда вы подключаетесь к серваку, загружается сначала автоэкзек, а потом конфиг, который обнуляет все бинды командой Unbundall (в начале конфига), а потом переназначает управление. Таким образом, использование команды bind в autoexec.cfg чревато тем, что этот бинд не будет работать. Решить эту проблему можно несколькими путями:
1. Удалить нахрен unbindall в конфиге. На компах, которыми пользуются несколько чело не рекомендую, дабы не получилась петрушка.
2. Сразу после unbindall вписать exec autoexec.cfg, эта команда выполнит автоэкзек еще раз.
3. Не пользоватся биндами в автоэкзеке, возьмем к примеру алиас для включения/выключения радара:
autoexec.cfg
alias radaron "+showradar; bind KEY radaroff"
alias radaroff "-showradar; bind KEY radaron"
bind "KEY" "radaroff"
эта подпрограмма как раз работать и не будет, т.к. есть бинды. А вот эта программа
autoexec.cfg
alias radaron "+showradar; alias radar radaroff"
alias radaroff "-showradar; alias radar radaron"
radaron
config.cfg
bind "KEY" "radar"
будет, т.к. в автоэкзеке биндами и не пахнет. Кстати, дабы не возникла петрушка в конфигах, можно использовать «//». Это обыкновенный REM, так что строчку
// Клинтон дурак
ни автоэкзек ни конфиг читать не будут.
Если вы обратили внимание, то к некоторым командам вначале приставляется + и -. Это означает начало и конец определенного действия. Т.е. bind TAB +showscores позволяет при нажатии табуляции начлюдать результаты игры, пока кнопка нажата. При отпускании кнопки результаты исчезают. И, т.к. при создании алиасов вы заменяете одной клавишей кучу телодвижении, то помните, среди них (телодвижений) есть как нажатия на кнопки, так и «отжатия».
Далее: при жутком дефиците окружающих левую руку клавиш можно использовать так-называемые «метабинды»
alias F2slot "buymp5"
alias +hold "alias F2slot buytmp"
alias -hold "alias F2slot buymp5"
alias buymp5 "buy; menuselect 3; menuselect 1"
alias buytmp "buy; menuselect 3; menuselect 2"
bind "F2" "F2slot"
bind "SHIFT" "+hold"
То есть, при нажатии на F2 вы покупаете MP5, а при нажатии SHIFT+F2, вы покупаете ТМР.
Покупка оружия
bind "f8" Para
alias Para "buy; menuselect 5; menuselect 1; buyammo1; buyammo1; buyammo1; buyammo1; buyammo1; buyammo1; buyammo1; menuselect 0;"
bind "f7" awp
alias awp "buy; menuselect 4; menuselect 6; buyammo1; buyammo1; buyammo1; buyammo1; buyammo1; menuselect 0;"
bind "f3" gren
alias gren "buy; menuselect 8; menuselect 4; menuselect 0;"
bind "f6" m4
alias m4 "buy; menuselect 4; menuselect 3; buyammo1; buyammo1; buyammo1; buyammo1; buyammo1 exitmenu;"
bind "f4" vest
alias vest "buy; menuselect 8; menuselect 2;"
bind "f5" cammando
alias cammando "buy; menuselect 4; menuselect 2; buyammo1; buyammo1; buyammo1; buyammo1;"
bind "ins" p90
alias p90 "buy; menuselect 3; menuselect 3; buyammo1; buyammo1; buyammo1;"
bind "del" p228
alias p228 "buy; menuselect 1; menuselect 4; buyammo2; buyammo2; buyammo2; buyammo2; buyammo2; buyammo2;"
Быстрое переключение оружия
На "2" висят пистолеты
alias secondary "slot2; +attack; wait; wait; -attack"
bind 2 secondary
Пьяный ежик
bind "ALT" "+STARTRUN"
alias +STARTRUN "bind w DRUNKRUN"
alias -STARTRUN "bind w +forward"
alias DRUNKRUN "weapon_knife; wait; +attack; wait; -attack; fw; wait; lw; wait; fw; wait; rw; wait; jp; wait; dk; wait; lw; wait; bw; wait; rw; wait; fw; wait; jp; wait; fw; wait; lw; wait; dk; wait; fw; wait; jp; wait; rw; wait; fw"
alias fw "+forward; wait; wait; wait; -forward"
alias bw "+back; wait; -back"
alias lw "+moveleft; wait; wait; -moveleft"
alias rw "+moveright; wait; wait; -moveright"
alias jp "+jump; wait; -jump"
alias dk "+duck; wait; -duck"
bind "ALT" "+STARTRUN"
alias +STARTRUN "bind w +DRUNKRUN"
Подпрыгнул|присел
alias +jd "+jump;wait;+duck"
alias -jd "-jump;wait;-duck"