Приветствую Вас Гость • Регистрация • Вход
Четверг, 2.5.2024
Сейчас на сайте:
Пропущен отчет о кв? Скажите нам!
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Форум » Всё о Call Of Duty » Call of Duty » Основы консольного скриптинга
Основы консольного скриптинга
WedgeДата: Вторник, 22.02.2011, 19:10 | Сообщение # 1
Пингер
Группа: Администраторы
Сообщений: 1892
Репутация: 26
Статус: Offline
Создание скрипта
Скрипт может быть введен прямо в игровую консоль (кнопка "~" во время игры) или путем создания конфиг файла со скриптом.

Конфиг файл
Конфиг файл представляет собой самый обыкновенный текстовый файл с окончанием .cfg и прописанными в нем командами для игровой консоли. Хранятся конфиг файлы в папке \Main где установлен КоД.

Запуск конфиг файла
Запуск конфиг файла выполняется командой exec
Пример : exec config_file
Нет необходимости писать расширение .cfg

config_mp.cfg
Это стандартный конфиг файл созданный игрой по умолчанию. Рекомендуется избегать писать собственные скрипты в него потому, что файл постоянно переписывается и вы можете потерять свои творения

autoexec_mp.cfg
Автоматически выполняется при старте игры. Вполне неплохо записать в него свои скриптики используемые постоянно.

Итак, начнем с биндов:
Когда нам хочется подвесить какую-нибудь команду на кнопку или на мышку мы будем "биндить".
Выглядит это вот так : bind кнопка "комманда"
Кнопочка может быть любой ("A","ENTER","MOUSE1") ну, а команда любая валидная в КоДе.
Пример : bind A "kill" -теперь при нажатии кнопочки "А" ваш игрок отдаст Богу душу.

Консольные комманды
Существует немало команд, но можно их разделить на несколько категорий.
Список команд можно получить в консоле набрав первую букву и нажав "TAB".
Выполнение набора команд возможно если их разделить точкой с запятой ";"
Пример : kill;disconnect;quit; - умираем , отключаемся и закрываем КоД.

Консольные переменные
Ни один приличный скрипт не обходится без переменных, в которых мы будем хранить некую информацию. Существует немало переменных уже заданных в игре (name - имя игрока). Вывести их на чистую воду можно также из консоли при помощи все того же "TAB".
Присваиваем значение переменным при помощи команд: "set", "seta", "setu", "setfromcvar".
set - создаст переменную и присвоит ей значение . Переменная будет жить до конца игры
seta - создаст переменную, присвоит ей значение и запишет ее в config_mp.cfg. Переменная будет заново создана при каждом запуске игры.
setu - сделает тоже самое, только эта переменная будет еще видна через "public variables list".
setfromcvar - позволяет переписать значение одной переменной в другую.
Пример :
set my_var "COD is best game!"
seta my_var "CF is best site!"
setu my_var "Squad CF|CoD is best clan!"
setfromcvar my_var1 my_var2
Разумеется переменная может хранить в себе команду которую мы захотим выполнить. Тут нам на помощь приходит команда "vstr", она поможет нам выполнить команду хранящуюся в переменной.
Пример :
set var_bye_bye "kill;disconnect;quit"
vstr var_bye_bye

Напоследок напишем пару простых скриптиков
set my_var1 "say Thanks for good game. See you tommorow on CF server" - мы создали переменную с командой "say" (сказать всем на серваке).
set my_var2 "kill;disconnect;quit;" - мы создали переменную с командами о дисконекте.
set my_var3 "vstr my_var1;vstr my_var2" - третья переменная с командой выполнить две предыдущие.
bind k "vstr my_var3" - мы "забиндили" все это дело на кнопку "к".
Теперь запишем это дело в конфиг и при нажатии кнопки "к" будем красиво прощаться и уходить с сервака.
И еще один скиптик писания демок
Так называемый тугловый скрипт, так как переменная "demo_tog" меняет свое значение в зависимости от того, пишем ли мы демку или нет:
seta demo_start "record; set demo_tog vstr demo_stop"
seta demo_stop "stoprecord; set demo_tog vstr demo_start"
seta demo_tog "vstr demo_start"
bind BACKSPACE "vstr demo_tog"


 
KAJEEДата: Вторник, 22.02.2011, 22:35 | Сообщение # 2
Мувимейкер
Группа: Пользователи
Сообщений: 128
Репутация: 15
Статус: Offline
саня, вопрос, если есть переменная вид от 3его лица, и переменная угла обзора камеры, возможно чтобы сделать скрипт на верчение 360 градусов? т.е. нужен скрипт в котором будет идти значение от 1 градуса до 360. можно такое намутить?

 
WedgeДата: Вторник, 22.02.2011, 23:10 | Сообщение # 3
Пингер
Группа: Администраторы
Сообщений: 1892
Репутация: 26
Статус: Offline
скорее всего можно. тебе зачем? для мувиков?

 
KAJEEДата: Среда, 23.02.2011, 14:02 | Сообщение # 4
Мувимейкер
Группа: Пользователи
Сообщений: 128
Репутация: 15
Статус: Offline
да, просто находил скрипт но принцеп работы вообще не понимаю
и тот ли он вообще, помоги сделать)

Добавлено (23.02.2011, 14:02)
---------------------------------------------
Этот эффект частенько появляется в CoD-мувиках - камера плавно крутится вокруг 3D-модельки персонажа. Система та же, переменная - cg_thirdpersonangle:
set spinr0 "cg_thirdpersonangle 0; wait 1; vstr spinr1"
set spinr1 "cg_thirdpersonangle 0.5; wait 1; vstr spinr2"
set spinr2 "cg_thirdpersonangle 1; wait 1; vstr spinr3"
...
set spinr720 "cg_thirdpersonangle 360; wait 1; vstr spinr721"
set spinr721 "cg_thirdperson 1;"

вот как то так только нихуя не работает, что в 1 что во 2ом


 
WedgeДата: Среда, 23.02.2011, 14:32 | Сообщение # 5
Пингер
Группа: Администраторы
Сообщений: 1892
Репутация: 26
Статус: Offline
ну я этом вообще не особо шарю, чисто потому что мне далеко пофиг на все эти скрипты. я просто играю в код

 
ЙожигДата: Четверг, 24.02.2011, 13:17 | Сообщение # 6
Колючка
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
Quote (KAJEE)
вот как то так только нихуя не работает, что в 1 что во 2ом

код не справляется со столькими значениями vstr
приходится делить скрипты по 200 строк happy

Добавлено (24.02.2011, 13:17)
---------------------------------------------
http://www.sendspace.com/file/tlz8t4 <- вот основные, тока надо разделить)

 
KAJEEДата: Четверг, 24.02.2011, 17:18 | Сообщение # 7
Мувимейкер
Группа: Пользователи
Сообщений: 128
Репутация: 15
Статус: Offline
Quote (Йожиг)
надо разделить

подробнее давай)


 
ЙожигДата: Четверг, 24.02.2011, 19:43 | Сообщение # 8
Колючка
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
Quote (KAJEE)
подробнее давай)

открываешь блокнот, каждые 200 строк команд копируешь в другой конфиг и.т.д.
затем записываешь по каждому скрипту и соединяешь в вегасе
главное чтобы позиция игрока не менялась
 
KAJEEДата: Четверг, 24.02.2011, 22:40 | Сообщение # 9
Мувимейкер
Группа: Пользователи
Сообщений: 128
Репутация: 15
Статус: Offline
вот я пробывал 360r разделял на 200 строк
заливал кфг в мэйн, в игре писал /exec 360r и нихуя, на месте стоит


 
ЙожигДата: Пятница, 25.02.2011, 07:10 | Сообщение # 10
Колючка
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
/vstr spinr0 пропиши
 
Форум » Всё о Call Of Duty » Call of Duty » Основы консольного скриптинга
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: