Вы хотите написать свой конфиг? Но не знаете, как это сделать. Тогда вы
открыли нужную страницу. Я вкратце опешу процесс написания конфигов.
Подробно описывать процесс написания конфига не стоит по одной простой
причине: каждый может нагородить все, что ему будет угодно, а моя
задача дать повод... :)
Конфиг – это файл (обычный текстовый
документ), содержащий те или иные настройки 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 - родной брат макроса, то есть приклеивает к какой-нить команде ряд определенных действий.
При
создании скрипта помните, что команды должны выполнятся последовательно
для получения соответствующего результата. К примеру:
alias +jd "+jump;wait;+duck"
alias -jd "-jump;wait;-duck"
bind mouse2 +jd
Довольно
известный и популярный скрипт. При нажатии mouse2 (правая кнопка мыши)
игрок подпрыгнет и присядет (в воздухе). При отжатии кнопки все команды
будут "отменены", те игрок перестанет приседать. Знак + означает, что
движок HL должен ждать появления знака – для завершения действия
команд/ы (но не обязательно для завершения произведенных ранее
действий). Вот собственно и все. Удачи в создании конфига.