Вы хотите написать свой конфиг? Но не знаете, как это сделать. Тогда вы открыли нужную страницу. Я вкратце опешу процесс написания конфигов. Подробно описывать процесс написания конфига не стоит по одной простой причине: каждый может нагородить все, что ему будет угодно, а моя задача дать повод...
Конфиг – это файл (обычный текстовый документ), содержащий те или иные настройки 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 212.12.11.14:27016, к примеру.
Для обеспечения порядка в папке, где размещены конфиг/и, можно создать папку, поместить в нее свои/й конфиг/и. При этом следует изменить параметр команды 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 должен ждать появления знака – для завершения действия команд/ы (но не обязательно для завершения произведенных ранее действий). Вот собственно и все. Удачи в создании конфига.