Вспомогательные системы отладки
XashXT имеет различные системы отладки, которые призваны облегчить жизнь левел-дизайнеру. Как правило, тот или иной механизм включается через консольную переменную или команду, однако иногда отладка включается для конкретной энтити при помощи специального спаунфлага (см. описание энтить: новых или модифицированных стандартных).
Ниже будут приведены именно консольные переменные и команды, а также их назначение.
Примечание: не пытайтесь использовать данные команды и переменные как часть геймплея — большинство из них перестанет работать в режиме пользователя.
Консольные переменные
phys_debug | Включает визуализацию коллизий для физического движка PhysX. |
phys_qdebug | На данный момент просто рисует центры у func_door_rotating. |
p_speeds | Выводит информацию о текущем состоянии физического движка PhysX и объектах на сцене. |
r_speeds | Принимает значения от 1 до 9. Выводит различную информацию о состоянии рендерера. |
r_showtextures | Принимает значения от 1 до 14. Показывает различные загруженные текстуры, группируя их по опредленному признаку. |
sv_novis | Выключает отсечение энтить по PVS на сервере, дабы отличить его от клиентского отсечения видимости. |
r_novis | Выключает отсечение энтить по PVS на клиенте. Обычно влияет только на мировые полигоны, поскольку энтити отсекаются на сервере. |
r_lockpvs | Блокирует обновление PVS, чтобы левел-дизайнер мог увидеть дальность прорисовки. |
r_lightmap | Рисует лайтмапы без диффузных текстур. |
gl_wireframe | Включает отрисовку разбиения полигонов на блоки. |
r_drawentities | По умолчанию значение равно 1. В режимах от 2 до 6 рисует кости, хитбоксы и т. д. |
gl_renderer | По умолчанию равен 1. Переключение в ноль позволяет задействовать рендерер игрового движка и сравнить полученную картинку. |
showtriggers | Показывает триггеры на карте. Работает только после рестарта уровня. |
Консольные команды
edicts_info | Выводит краткую информацию по эдиктам. |
entity_info | Выводит подробную информацию по энтитям. |
entpatch | Создаёт дамп скриптового файла с описанием энтить, который может быть отредактирован вручную. В дальнейшем движок будет грузить именно его, вместо встроенных энтить. |
fire | Позволяет активировать любую энтить прямо по взгляду игрока, либо активировать энтить, явно указав её имя как аргумент команды. |
impulse 103 | Выводит информацию о состоянии AI монстра. |
impulse 104 | Выводит информацию о состоянии глобальных энтить (состояние которых можно модифицировать при помощи env_global). |
impulse 106 | Выводит информацию о состоянии обычных энтить (имя, глобальное имя, модель, родитель). |
impulse 107 | Выводит имя текстуры по взгляду игрока. |
impulse 203 | Удаляет объект с карты (кроме мира и игроков, конечно). |
showtriggers_toggle | Альтернатива квару showtriggers. В отличие от него показывает триггеры, не требуя рестарта карты. Однако большинство современных компиляторов (ZHLT, VHLT) имеют в своём коде оптимизацию, благодаря которой все триггеры, покрытые текстурой AAATRIGGER, удаляются, оставаляя только физический хулл, но не оставляя видимый. Чтобы избежать такого поведения, вам следует компилить карту с параметром командной строки |