Главная > Игры > 3D Action >
Алиазы для Quake I
   Редакция от 17.09.01
       Алиазы для Quake I

  Составлено на основе личного опыта, и писем из конференции
  Ru.Game.Quake
  Автор: Тарас 'Tarik' Бондарь     2:5020/1507.31
           tarik_idt@mail.ru
  Последняя версия доступна на http:\\InfernalDomain.web1000.com
  Присылайте мне дополнения на мыло. Если вы не знаете как сделать
  алиаз, или у вас появились вопросы, то пишите мне, постараюсь помочь
 
  > - Так отмечены новые пункты


 

       Оглавление
1. Введение
2.    Простая схема зацикленного переключателя
3.    Схема передвижения по алиазам вперед и назад
4. Как делать менюшки
5. Как сделать зум
6. Как сделать RJ
7. Как забиндить по 2 оружия на клавишу
8. Как убрать автопереключение оружия при его поднятии
9. Как кинуть гранату (и др) а потом переключиться на старое оружие
10.   Как сделать изменение громкости
11.   Как сделать изменение яркости
12.   Как сделать управление просмотром демки
13.   Как сделать быстрый выход
14.   Как сделать запись текущих настроек, и консольных команд
15.   Алиаз прыжка из конфига Вентуры




> 1.  Введение

 Алиаз - это последовательность команд, вызывающихся через одно имя.
 Алиаз в ку1 пишется следующим образом:
 alias <name> <command>

 Если алиаз содержит несколько команд, то они должны быть заключены в кавычки:
 alias <name> "<command1>; <command1>; ...; <commandN>"

 Далее вы можете вызывать алиаз либо из консоли, либо забиндить его на клавишу:
 alias <name> <command>
 bind <key> <name>

 Можно сделать алиаз на нажатие и отжатие клавиши:
 alias +<name> <command1>
 alias -<name> <command2>
 bind <key> +<name>




> 2.   Простая схема зацикленного переключателя

Алиаз служит для зацикленного вызова, те когда вы он вызывает последний алиаз
<имяN> то при следующем нажатии вызовется <имя1>:
alias <имя> "<имя1>"
alias <имя1> "<команды; имя2>"
alias <имя2> "<команды; имя1>"
bind  <клавиша> "<имя>"




> 3.   Схема передвижения по алиазам вперед и назад

Алиаз дает возможностя вернуться к предыдущему алиазу в списке <имяN>:
alias <вперед> "<имя1>"
alias <назад>  "<имя0>"
alias <имя0>   "<команды>; alias <вперед> <имя1>; alias <назад> <имя0>"
alias <имя1>   "<команды>; alias <вперед> <имя2>; alias <назад> <имя0>"
alias <имя2>   "<команды>; alias <вперед> <имяN>; alias <назад> <имя1>"
...
alias <имяN>   "<команды>; alias <вперед> <имяN>; alias <назад> <имя2>"
bind <keyDown> <вперед>
bind <keyUp> <назад>



> 4.  Как делать менюшки

 У Q1 есть 4 строки с текстом которые мокут быть видимыми на экране, туда
поподают сообщения из консоли. Я приведу пример для 8 пунктов меню, клавишами
вверх и вниз мы выбираем нужный пункт, при этом на Энтер у нас
биндится нужная команда:
alias text1 "echo   Menu Item 1"
alias text2 "echo   Menu Item 2"
alias text3 "echo   Menu Item 3"
alias text4 "echo   Menu Item 4"
alias text5 "echo   Menu Item 5"
alias text6 "echo   Menu Item 6"
alias text7 "echo   Menu Item 7"
alias text8 "echo   Menu Item 8"
alias stext1 "echo =>Menu Item 1<="
alias stext2 "echo =>Menu Item 2<="
alias stext3 "echo =>Menu Item 3<="
alias stext4 "echo =>Menu Item 4<="
alias stext5 "echo =>Menu Item 5<="
alias stext6 "echo =>Menu Item 6<="
alias stext7 "echo =>Menu Item 7<="
alias stext8 "echo =>Menu Item 8<="

alias curup     "menu1"
alias curdown   "menu2"
alias menucom   "<команда1>"

alias menu1 "alias curup menu1; alias curdown menu2; alias menucom <команда1>;
             stext1;text2;text3;text4"
alias menu2 "alias curup menu1; alias curdown menu3; alias menucom <команда2>;
             text1;stext2;text3;text4"
alias menu3 "alias curup menu2; alias curdown menu4; alias menucom <команда3>;
             text1;text2;stext3;text4"
alias menu4 "alias curup menu3; alias curdown menu5; alias menucom <команда4>;
             text2;text3;stext4;text5"
alias menu5 "alias curup menu4; alias curdown menu6; alias menucom <команда5>;
             text3;text4;stext5;text6"
alias menu6 "alias curup menu5; alias curdown menu7; alias menucom <команда6>;
             text4;text5;stext6;text7"
alias menu7 "alias curup menu6; alias curdown menu8; alias menucom <команда7>;
             text5;text6;stext7;text8"
alias menu8 "alias curup menu7; alias curdown menu8; alias menucom <команда8>;
             text5;text6;text7;stext8"

bind <вверх> curup
bind <вниз> curdown
bind <энтер> menucom

Еще, чтобы было более удобно, можно сделать алиаз на вызов меню:

alias menucall0 "menucall1"
alias menucall1 "bind <вверх> curup; bind <вниз> curdown; bind <энтер> menucom;
                 alias menucall0 menucall2; curup"
alias menucall2 "bind <вверх> <старая команда>;
                 bind <вниз> <старая команда>; 
                 bind <энтер> <старая команда>;
                 alias menucall0 menucall1; echo; echo; echo;
                 echo LOG: Menu is closed."

 Либо на menucall2 можно просто сделать exec ваш конфиг, но тогда все настройки

будут загружены заново.



> 5.  Как сделать зум

 Зум, изменяет угол обзора и чуствительность мышки, поэтому я рекомендую вам
сделать алиазы фова и чувствительности заранее, дабы при изменении настроек
вам не пришлось бы переписывать алиаз зума. Hапример где вы прописывайте фов
лучше напишите:
alias fovu "fov 90"
fovu

а вместо установки чувствительности:

alias senu "sensitivity 3.8"
senu

Основной вид алиаза зума:
alias +zoom "<угол обзора при приближении>;
             <чувствительность при приближении>"
alias -zoom "<исходный угол обзора>; <исходная чувствительность>"

 Иногда требуется приближать на разное расстояние. Это можно сделать следующим
образом:
alias fovt "fov 40"
alias sent "sensitivity 2"
alias chz change_zoom
alias change_zoom "alias fovt fov 20;
      alias sent sensitivity 1;
                   alias chz change_zoom1; echo Big Zoom"
alias change_zoom1 "alias fovt fov 40;
                    alias sent sensitivity 2;
                    alias chz change_zoom; echo Small Zoom"

fovu и senu у нас определены ранее поэтому далее пишем:
alias +zoom "fovt; sent"
alias -zoom "fovu; senu"
bind <клавиша> +zoom
bind <клавиша> chz      // Эта клавиша будет менять степень приближения

 Вы, наверно, заметили, что в Q2 & Q3 зум меняется плавно, а в Q1 он
устанавливается резко, ниже следует алиаз плавного зума для Q1:
alias +zoom   "fovu;wait;fov 80;wait;fov 70;wait;fov 60;wait;fov 50;wait;
                 fov 40;wait;fovt; sent"
alias -zoom   "fovt;wait;fov 40;wait;fov 50;wait;fov 60;wait;fov 70;wait;
                 fov 80;wait;fovu; senu"

 Так же некоторым нужно сидеть с зумом, и при этом не держать клавишу. Hажал -
приблизило, еще раз - восстановилось. Это делается следующим образом.
(fovu, senu, fovt, sent у нас определены ранее; биндить алиаз zoom_ch)
alias zoom_ch zoom1
alias zoom1 "fovt; sent; alias zoom_ch zoom2"
alias zoom2 "fovu; senu; alias zoom_ch zoom1"
bind <клавиша> "zoom_ch"

 Далее следует алиаз зума как в Action Quake2:
(fovt1, sent1 итп определите сами; биндить алиаз zoom_ch)
alias zoom_ch zoom1
alias zoom1 "fovt1; sent1; alias zoom_ch zoom2"
alias zoom2 "fovt2; sent2; alias zoom_ch zoom3"
...
alias zoomN "fovtN; sentN; alias zoom_ch zoom_reset"
alias zoom_reset "fovu; senu; alias zoom_ch zoom1"




> 6.  Как сделать RJ

 Если вы используете для наклонов клавиатуру, то вам необходимо добавить
восстановку cl_pitchspeed в прежнее значение.

cl_pitchspeed "9999"
alias +rj "impulse 7; +lookdown; wait; +jump; +attack; wait"
alias -rj "-attack; -jump; -lookdown; force_centerview"




> 7.  Как забиндить по 2 оружия на клавишу

 К сожалению, можно сделать только выбор по приоритету. Hапример если у вас
есть бумстик и шотган, то преимущество шотгана очивидно, для меня идеальным
алиазом для 2х оружий является ку2шная система, там выбор идет либо первое,
либо то, у которого есть патроны:

alias weapon0 "impulse 2; wait; impulse 3" // Boomstic & Super Shotgun
alias weapon1 "impulse 4; wait; impulse 5" // Machinegun & Nailgun




> 8.  Как убрать автопереключение оружия при его поднятии

 Биндить надо алиазы weaponN

alias weapprev "weapon2"
alias weapon1 "impulse 1; alias weapprev weapon1"
alias weapon2 "impulse 2; wait; impulse 3; alias weapprev weapon2"
alias weapon3 "impulse 4; wait; impulse 5; alias weapprev weapon3"
alias weapon4 "impulse 6; alias weapprev weapon4"
alias weapon5 "impulse 7; alias weapprev weapon5"
alias weapon6 "impulse 8; alias weapprev weapon6"

 Hижеследующее надо биндть вместо стандартной команды +attack:
alias +attack0     "weapprev; wait; +attack"
alias -attack0    "-attack"




> 9.  Как кинуть гранату (и др) а потом переключиться на старое оружие

 weapprev должен всегда указывать на оружие, которое у вас в руках, как это
делается я показал выше, но вам не обязательно делать по 2 оружия, достаточно
дописать к клавише выбора:
bind <клавиша> "impulse <оружие>; alias weapprev impulse <оружие>"

alias +gr  "impulse 6; wait; +attack"
alias -gr  "-attack; weapprev"

Вместо impulse 6, вы можете подставить что захотите, у меня, к примеру, есть
отдельный алиаз для шафта, имхо очень полезно. Быстрым переключением оружия,
Q1 дает огромные возможности для комбинаций, вы можете сделать алиаз, чтобы
кидалась граната, потом стрелял рокет, итп, но не забывайте, что следующее
оружие переключается только после перезарядки текущего.




> 10.  Как сделать изменение громкости

bind <клавиша>  vup
bind <клавиша>  vdn
alias vup  "v_6"
alias vdn  "v_4"
alias v_0  "play items/protect; volume 0  ; alias vup v_1;
                 echo VOLUME: ----------"
alias v_1  "play items/protect; volume 0.1; alias vup v_2;
                 alias vdn v_0; echo VOLUME: |---------"
alias v_2  "play items/protect; volume 0.2; alias vup v_3;
                 alias vdn v_1; echo VOLUME: ||--------"
alias v_3  "play items/protect; volume 0.3; alias vup v_4;
                 alias vdn v_2; echo VOLUME: |||-------"
alias v_4  "play items/protect; volume 0.4; alias vup v_5;
                 alias vdn v_3; echo VOLUME: ||||------"
alias v_5  "play items/protect; volume 0.5; alias vup v_6;
                 alias vdn v_4; echo VOLUME: |||||-----"
alias v_6  "play items/protect; volume 0.6; alias vup v_7;
                 alias vdn v_5; echo VOLUME: ||||||----"
alias v_7  "play items/protect; volume 0.7; alias vup v_8;
                 alias vdn v_6; echo VOLUME: |||||||---"
alias v_8  "play items/protect; volume 0.8; alias vup v_9;
                 alias vdn v_7; echo VOLUME: ||||||||--"
alias v_9  "play items/protect; volume 0.9; alias vup v_10;
                 alias vdn v_8; echo VOLUME: |||||||||-"
alias v_10 "play items/protect; volume 1  ;               
                 alias vdn v_9; echo VOLUME: ||||||||||"




> 11.  Как сделать изменение яркости

alias gup "g_7"
alias gdn "g_5"
alias g_0 "gamma 1.0; alias gup g_1;                echo;echo;
           echo GAMMA: ---------"
alias g_1 "gamma 0.9; alias gup g_2; alias gdn g_0; echo;echo;
           echo GAMMA: |--------"
alias g_2 "gamma 0.8; alias gup g_3; alias gdn g_1; echo;echo;
           echo GAMMA: ||-------"
alias g_3 "gamma 0.7; alias gup g_4; alias gdn g_2; echo;echo;
           echo GAMMA: |||------"
alias g_4 "gamma 0.6; alias gup g_5; alias gdn g_3; echo;echo;
           echo GAMMA: ||||-----"
alias g_5 "gamma 0.5; alias gup g_6; alias gdn g_4; echo;echo;
           echo GAMMA: |||||----"
alias g_6 "gamma 0.4; alias gup g_7; alias gdn g_5; echo;echo;
           echo GAMMA: ||||||---"
alias g_7 "gamma 0.3; alias gup g_8; alias gdn g_6; echo;echo;
           echo GAMMA: |||||||--"
alias g_8 "gamma 0.2; alias gup g_9; alias gdn g_7; echo;echo;
           echo GAMMA: ||||||||-"
alias g_9 "gamma 0.1;                alias gdn g_8; echo;echo;
           echo GAMMA: |||||||||"




> 12.  Как сделать управление просмотром демки

Забиндите эти алиазы на клавиши
alias demopause   "host_framerate 0.0001; echo DEMO: Stop."
alias demoslow    "host_framerate 0.005;  echo DEMO: Slow play."
alias demonormal   "host_framerate 0;     echo DEMO: Play."
alias demoforward     "host_framerate 0.09;    echo DEMO: Forward."
alias demofastforward     "host_framerate 0.2;    echo DEMO: Fast forward."




> 13.  Как сделать быстрый выход

alias fast_quit "toggleconsole;wait;quit"



> 14.  Как сделать запись текущих настроек, и консольных команд

alias writecfg "clear; cvarlist; aliaslist; bindlist; condump mycfg"

Далее идет алиаз для записи всех консольных команд:
alias writecmd "clear; cmdlist; condump mycmd"



>15.  Алиаз прыжка из конфига Вентуры

Алиас взятый из конфига Вентуpы - популяpная вещь сpеди буpжуев.
Высота пpыжка pегулиpуется за счет угла наклона во вpемя пpыжка.
Работает на большинстве машин, на котоpых есть хотябы 30-40 fps, т.е. на данной
вpемя пpактически в любом клубе:
alias ventjump "pitchi; yawi; impulse 7; -forward; +back; +left; +jump;
   +attack; wait; -attack; -jump; -left; -back; +forward; +right;
   wait; -right; -forward; ihctip; iway"
alias pitchi "cl_pitchspeed 23000"   
alias yawi "cl_yawspeed 25000"    
alias ihctip "cl_pitchspeed 150"
alias iway "cl_yawspeed 140"
bind <key> ventjump


Украинская Баннерная Сеть

Главная  Алфавитный индекс  Справка  Добавить FAQ  E-mail
Новости  Поиск по сайту

Copyright © 2001 - 2003 Olexandr Slobodyan.
Сайт создан в системе uCoz