Консольные команды — особые команды, которые можно прописывать во внутриигровую консоль.
Описание[]
Для улучшения качества статьи нужно:
|
На практике многие игровые процессы фактически реализованы вызовом консольных команд — это позволяет скриптам проще напрямую взаимодействовать с движком игры без создания функция прямого обращения к нему. В это включены:
- загрузка и сохранение игры через меню;
- загрузка последнего сохранения
- применение любых настроек в меню «Настройки»;
- загрузка сложности из файла сохранения, реализованная через вызов команды
g_game_difficulty
сразу после загрузки сохранения[ист. 1]; - создание автосохранения после окончания вступительной катсцены на Болотах в «S.T.A.L.K.E.R.: Чистое Небо», реализованное через вызов команды
load
[ист. 2]
Команды[]
После названия команды могут быть перечислены возможные аргументы функции:
|
Команды-действия[]
Команда Аргументы |
Игры | Описание | Примеры использования | ||
---|---|---|---|---|---|
ТЧТЧ | ЧНЧН | ЗПЗП | |||
demo_play
|
✔ | ✔ | 1.6.02+ | Включает проигрывание заранее записанного пути камеры, где камера будет передвигаться между контрольными точками в записи методом интерполяции кубическими сплайнами. | demo_play 1 — запускает проигрывание записи с названием «1».
|
demo_record
|
1.0002+ | ✔ | 1.6.02+ |
Включает режим свободного передвижения камеры с целью записи автоматического пролёта. В этом режиме можно свободно перемещаться по карте в режиме свободного полёта, а также проходить сквозь препятствия, однако фактически персонаж игрока при этом будет продолжать оставаться на том же месте, где он находился до использования команды. Клавиши W и S передвигают камеру относительно текущего направления вверх и вниз; A и D (также стрелочки ← и → и клавиши 1 и 3 на цифровой клавиатуре) — влево и вправо; а ЛКМ и ПКМ — вперёд и назад. При помощи передвижения мыши можно менять направление взгляда камеры, это же можно делать использованием клавиш 4, 6, 2 и 8 на цифровой клавиатуре для вращения камеры влево, вправо, вверх и вниз, а также клавиш E и Q для вращения влево и вправо, соответственно. Наконец, клавиши 7 и 9 на цифровой клавиатуре могут быть использованы для поворота камеры вокруг своей оси, наклоняя её влево и вправо. Нажатие клавиши Пробел установит в текущем положении и повороте камеры контрольную точку, которая в дальнейшем будет использована при просмотре демо-записи. Нажатие кнопки F12 в этом режиме автоматически спрячет HUD, что позволяет создавать скриншоты без игрового интерфейса; F11 отобразит вид текущей локации сверху на весь экран и автоматически сделает скриншот[прим. 1] (а с зажатой клавишой Левый Ctrl, начиная со «S.T.A.L.K.E.R.: Чистое Небо», сделает четыре скриншота, по одному на каждую четверть карты); а клавиша Backspace создаст в папке со скриншотами кубическую текстуру (cubemap) текущего окружения. Клавиша Esc прекращает запись и возвращает управление над персонажем. Начиная со «S.T.A.L.K.E.R.: Чистое Небо», нажатие кнопки * на цифровой клавиатуре «замораживает» текущий поворот и вращение камеры и возвращает контроль над персонажем[прим. 2], отключая работу всех вышеупомянутых клавиш. При включении режима в «S.T.A.L.K.E.R.: Тень Чернобыля» в центре экрана отображает мигающий текст-подсказка, показывающий, что идёт запись, а также отображающий текущее количество сделанных контрольных точек. Кроме того, в списке представлен краткий список вышеупомянутых возможностей режима, включая создание скриншотов, карт уровней и кубических текстур, добавление новых контрольных точек и выход из режима записи. Рядом с каждой возможностью подписана клавиша, отвечающая за соответствующее действие. Начиная со «S.T.A.L.K.E.R.: Чистое Небо», подсказка является спрятанной, однако будет отображаться с зажатой клавишей F1; кроме того, в неё добавился пункт о создании высококачественных карт уровней с зажатой клавишей Левый Ctrl. |
demo_record 1 — начинает запись с названием «1».
|
flush
|
✔ | ✔ | ✔ | Сохраняет всё текущее содержимое консоли в .log-файл.[прим. 3] | flush — сохраняет текущее содержимое консоли в .log-файл.
|
Команды-настройки[]
Команды-настройки сохраняются между перезапусками игры и записываются в файл user.ltx.
Команда Аргументы |
Игры | Описание | Примеры использования | ||
---|---|---|---|---|---|
ТЧТЧ | ЧНЧН | ЗПЗП | |||
_preset
|
✔ | ✔ | ✔ | Применяет все настройки из предустановки графики. Аналогично пункту в меню. | _preset low — включает предустановку настроек графики по умолчанию.
|
fov
|
1.0002 | ✖ | ✖ | Устанавливает вертикальный игровой угол обзора в градусах. | fov 90 — ставит угол обзора в 90 градусов.
|
Баги и недочёты[]
Вылеты[]
- Использование команды
demo_record
в главном меню провоцирует вылет игры. - В «S.T.A.L.K.E.R.: Тень Чернобыля» использование команды
demo_play
с несуществующим названием записи в качестве аргумента провоцирует вылет игры. То же происходит при попытке проиграть запись с 0 контрольными точками. - В «S.T.A.L.K.E.R.: Зов Припяти» использование команд
slot_0
,slot_1
,slot_2
иslot_3
с аргументом в виде несуществующего технического названия секции предмета вызовет вылет игры со следующим логом:
FATAL ERROR [error]Expression : fatal error [error]Function : CInifile::r_section [error]File : D:\prog_repository\sources\trunk\xrCore\Xr_ini.cpp [error]Line : 502 [error]Description : <no expression> [error]Arguments : Can't open section 'test'. Please attach [*.ini_log] file to your bug report stack trace:
- На месте «test» при этом будет указано название несуществующей секции.
Баги[]
- Использование команды
demo_record
в меню паузы замораживает текущее положение курсора и отключает управление как с мыши, так и с клавиатуры. При этом ни выйти из меню, ни выйти режима записи нельзя, из-за чего продолжить игру не представляется возможным и её нужно только экстренно завершать. - В «S.T.A.L.K.E.R.: Чистое Небо» и «S.T.A.L.K.E.R.: Зов Припяти» в режиме «заморозки» камеры команды
demo_record
игра не возвращает управление клавишам мыши, из-за чего стрельба и прицеливание остаются недоступными. Этой проблемы можно избежать, привязав эти действия на другие клавиши. - В «S.T.A.L.K.E.R.: Чистое Небо» создание кубической текстуры при использовании команды
demo_record
работает некорректно при включенном полном динамическом освещении DX10, а в «S.T.A.L.K.E.R.: Зов Припяти» — также и на полном динамическом освещении DX11.
Недочёты[]
- Создание кубической текстуры при использовании команды
demo_record
является практически целиком бесполезным, так как сделанные скриншоты не будут совмещаться друг с другом, так как угол обзора в играх серии меньше 90 градусов, из-за чего охватить всё окружение шестью скриншотами не является возможным. На практике это означает, что границы сделанных частей кубической карты не будут совпадать при наложении друг на друга. Исключением является «S.T.A.L.K.E.R.: Тень Чернобыля» версии 1.0002, где можно использовать командуfov
для изменения угла обзора.
Примечания[]
- ↑ Эта функция в сочетании с особыми настройками погоды использовалась разработчиками при создания карт местности локаций.
- ↑ В сочетании с видом от второго или третьего лица эту функцию можно использовать для управления персонажем с фиксированного вида камеры, чем пользовались разработчики для записи трейлеров.
- ↑ Содержимое консоли и так сохраняется в .log-файл при завершении игры, однако может неверно работать при аварийном завершении игры ввиду вылета.
- ↑ «S.T.A.L.K.E.R.: Чистое Небо»: gamedata/scripts/bind_stalker.script (архив configs.db|xpatch_01.db|xpatch_03–10.db|xpatch_03_steam.db), функция
actor_binder:load()
. - ↑ «S.T.A.L.K.E.R.: Чистое Небо»: gamedata/scripts/xr_effects.script (архив configs.db|xpatch_01.db|xpatch_03–10.db|xpatch_03_steam.db), функция
autosave_game()
.