Общие сведения
События о клавиатуры и мыши привязываются к конкретным действиям в игре
посредством файла input.cfg, который располагается в директории cfg. Структура
файла достаточно проста. Операторы bindsection [имя секции] разделяют его на
части, определяя, в какой части игры будет действовать привязка. Имя секции
может быть: menu, game, mapeditor, dummy. Те привязки, которые не попадают ни в
одну секцию (т.е. находятся до первого оператора bindsection) действуют везде.
Как не трудно заметить, если Вы расположите привязку в секции dummy (т.е. в
конце файла) она не будет действовать нигде. Отсюда правило - пиво должно быть
правильное, добавляйте новые строчки после оператора bindsection game, или, если
ломает его искать - в начале файла. (Далее я не буду расматривать содержимое
секций mapeditor, редактор на настоящий момент меня мало
интересует).
Основным инструментом работы является оператор bind. Его формат:
bind [+,-,!]'bind-id' 'KEY1' + 'KEY2' + ...где bind-id - идентификатор действия, KEY - событие от клавиатуры либо мыши. Знак "!" перед bind-id означает, что действие будет производиться при прекращении события (т.е. при отпускании клавиши, например) "+" и "-" используются для указания направления действия, в случае, когда действие может этим направлением обладать (+camera_zoom,-camera_zoom и т.п.).
Немного про формат KEY. Кроме собственно алфавитно-цифровых клавиш он может быть одним из приведенного ниже списка.
Кнопки мыши: MOUSE_BUTTON0...MOUSE_BUTTON7
Колесо мыши:
MOUSE_AXIS_Z
Движение мыши: MOUSE_AXIS_Y,
MOUSE_AXIS_X
Разнообразная экзотика: MEDIA_SELECT, MAIL, MYCOMPUTER,
WEB_BACK, WEB_FORWARD,WEB_STOP, WEB_REFRESH, WEB_FAVOR, WEB_SEARCH, WAKE, SLEEP,
POWER, APP_MENU, WEB_HOME, VOL_UP, VOL_DOWN, MEDIA_STOP, PLAY, CALCULATOR, MUTE,
NEXT_TRACK, UNLABELED, STOP, KANJI, PREV_TRACK, ABNT_C2, YEN, NOCONVERT,
CONVERT, ABNT_C1, KANA, OEM_102, NUM.
Прочие клавиши:RWIN, LWIN,
DELETE, INSERT, PG_DOWN, DOWN, END, RIGHT, LEFT, PG_UP, HOME, PAUSE, RALT,
SYSRQ, NUM_DIVIDE, NUM_COMMA, RCTRL, NUM_ENTER, UNDERLINE, COLON, NUM_EQUALS,
F1...F15, NUM_PERIOD, NUM_0...NUM_9, SCROLL, CAPITAL, SPACE, LALT, NUM_MULTIPLY,
RSHIFT, LSHIFT, LCTRL, ENTER, TAB, BACKSPACE, ESC.
Используя bind-id "modificator" в команде bind, можно указать системе, что
данная кнопка будет использоваться не сама по себе, а в качестве модификатора
для других. Так, например, в стандартном input.cfg оформлены клавиши LSHIFT,
LCTRL, RSHIFT, и RCTRL.
Ну вот, с базовыми определениями разобрались, самое
время посмотреть, какие, собственно, бывают bind-id's.
Читы
Забавные эффекты
Bind-id | Действие |
---|---|
toggle_lightmaps | Делает карту темнее/светлее. |
toggle_transparent | Перебор слоев (?). Затрудняюсь обьяснить. |
test_snow | Включает снег. Забавно. Но выключить никак :) Можно только... |
test_rain | ...сменить на дождь. |
switch_timeofday | Меняет время суток на противоположное. |
switch_lighting | Переключает освещенность. Выводит диогностику на консоль. Похоже на switch_timeofday, но по другому. |
test_intersect | Рисует нечто странное. |
erase_part | Удаляет часть обьекта, на которую указывает курсор мыши. Можно, например, снять с бойца каску. Занятно. |
wireframe | Как и обещали, анимация скелетная. Убирает часть текстур и кажет эти самые скелеты. |
explode | Эффект взрыва на выбранном бойце. Ущерба бойцу не наносит. Вспоминается визуализация заклинаний в NeverWinter Nights. |
switch_particles | Включает/выключает листву на деревьях. Кстати, данный shortcat разработчики забыли включить в input.cfg, поставляющийся с патчем - до патча он там присутствовал и работал по Ctrl-K. |
Не знаю что.
Bind-id | Действие |
---|---|
memorystats | ? |
toggle_fog | ? |
toggle_hsr | ? |
showrad | ? |
Быстрые клавиши
Bind-id | Действие | Кнопка |
---|---|---|
Ниже перечислено то, что включает в себя стандартный файл input.cfg после патча. | ||
camera_forward | Сдвинуть камеру вперед/назад | UP; DOWN |
camera_fps_pitch | MOUSE_AXIS_Y | |
camera_fps_rotate | MOUSE_AXIS_X | |
camera_pitch | Наклонить камеру | CTRL+UP; CTRL+DOWN |
camera_rotate | Вращать камеру | CTRL+RIGHT; CTRL+LEFT |
camera_strafe | Сдвинуть камеру влево/вправо | RIGHT; LEFT |
camera_zoom | Приблизить/отодвинуть камеру | PG_UP; PG_DOWN |
cancel | ESC | |
character | Вывести/скрыть окно параметров персонажа | U |
clues | Показать журнал | J |
confirm | ENTER | |
cursor_x | MOUSE_AXIS_X | |
cursor_y | MOUSE_AXIS_Y | |
endofturn | Конец хода | ENTER |
exitgame | Выход из игры | CTRL+C; CTRL+Q |
floor_slider | Перключение этажей | CTRL+MOUSE_AXIS_Z |
focus_unit | Центрировать камеру на выбранном персонаже | HOME |
gamemenu | Игровое меню | F10 |
hero_next | Выбрать следующего персонажа | TAB |
hero_prev | Выбрать предыдущего персонажа | SHIFT+TAB |
hqscreenshot | Сделать скриншот в высоком качестве | SHIFT+SYSRQ |
inventory | Вывести/скрыть окно предметов | I |
leftbutton_down | MOUSE_BUTTON0 | |
leftbutton_up | MOUSE_BUTTON0 | |
load | Загрузка быстрой записи | F8 |
loadmenu | Загрузка игры | F7 |
modifier | Указывает, что указанные кнопки будут рассматриваться как модификаторык другим клавишам | SHIFT; CTRL |
next | SPACE | |
next_floor | Показать уровень (этаж) выше | NUM_PLUS |
objectives | Показать задание | O |
pause | Пауза | PAUSE |
prev_floor | Показать уровень (этаж) ниже | NUM_MINUS |
rightbutton_down | MOUSE_BUTTON1 | |
rightbutton_up | MOUSE_BUTTON1 | |
save | Быстрая запись игры | F5 |
savemenu | Запись игры | F6 |
screenshot | Сделать скриншот | SYSRQ |
scroll | Скроллировать карту | MOUSE_AXIS_Z |
showitems | Вывести названия всех лежащих предметов | ALT |
skipScript | Пропустить все фразы и завершить диалог | ESC |
skipScriptPart | Перейти к следующей фразе | SPACE |
slot_next | Сделать активным следующий оружейный слот | B |
startofturn | Перейти в пошаговый режим | ENTER |
hero_1 | Выбрать 1го персонажа | 1 |
hero_2 | Выбрать 2го персонажа | 2 |
hero_3 | Выбрать 3го персонажа | 3 |
hero_4 | Выбрать 4го персонажа | 4 |
hero_5 | Выбрать 5го персонажа | 5 |
hero_6 | Выбрать 6го персонажа | 6 |
hero_7 | Выбрать 7го персонажа | 7 |
select_all_units | Выбрать всех персонажей | = |
hitlocation_body | Целиться в тело | NUM_5 |
hitlocation_head | Целиться в голову | NUM_8 |
hitlocation_larm | Целиться в левую руку | NUM_4 |
hitlocation_lleg | Целиться в левую ногу | NUM_1 |
hitlocation_rarm | Целиться в правую руку | NUM_6 |
hitlocation_rleg | Целиться в правую ногу | NUM_3 |
move | Двигаться | M |
attack | Атаковать | A |
firstaid | Первая помощь | A |
usetool | Использовать инструмент | A |
setmine | Установить мину | A |
dropcorpse | Бросить тело | A |
unit_rotate | Осмотреться | L |
weapon_reload | Перезарядить оружие | R |
hide | Замаскироваться | H |
pose_run | Встать/бежать | Z |
pose_normal | Встать/идти | X |
pose_crouch | Присесть/красться | C |
pose_crawl | Лечь/ползти | V |
pose_strafe | Держать ориентацию | D |
continue | Продолжить движение | M |
weapon_snapshot | Выстрел навскидку | Q |
weapon_aimedshot | Прицельный выстрел | W |
weapon_carefulshot | Меткий выстрел | E |
weapon_shortburst | Короткая очередь | F |
weapon_longburst | Длинная очередь | G |
weapon_snipeshot | Режим снайперской стрельбы | T |
weapon_prevmode | Переключиться в предыдущий режим | [ |
weapon_nextmode | Переключиться в следующий режим | ] |
nextenemy | В таком виде не работает. Ошибка разработчиков. Должно быть - next_enemy. Переключиться на следующего видимого врага. | N |
А это - то, что не включает. | ||
endmission | Закончить миссию | |
arrange | ||
unload | Разрядить оружие | |
exitpk | Выйти из ПК | |
next_enemy | Переключиться на следующего видимого врага | |
slot_prev | Сделать активным предыдущий оружейный слот | |
snipe_attack | Произвести снайперский выстрел | |
grenade_settrap | Установить растяжку | |
grenade_throw | Бросить гранату | |
collectap_all | Перенести выстрел на следующий ход | |
collectap_max | Задействовать все AP на прицеливание | |
collectap_10ap | Задействовать на прицеливание еще 10 AP | |
collectap_1ap | Задействовать на прицеливание еще 1 AP | |
submenu_grenademode | Подменю гранат | |
submenu_weaponmode | Подменю стрелкового оружия | |
submenu_poseselect | Подменю выбора положения тела | |
settrap | ||
cancelaction |
К оглавлению