Решение проблем при разработке карт

From Valve Developer Community
Jump to: navigation, search
English

Проблемы с компиляцией

Слишком долгая компиляция
Если у вас большая или сложная карта, убедитесь, что вы правильно используете func_detail. См. Управление видимостью и время компиляции.
Окно компиляции пишет про утечку памяти
Не волнуйтесь, это не ошибка. Продолжайте.
При компилировании возникает ошибка
См. Список ошибок компиляции с пояснениями, или зайдите на сайт Interlopers.net
VRAD падает при компилировании освещения HDR (только Эпизод 1)
См. VRAD HDR Crash Fix.

Проблемы в игре

Чёрные модели
Это происходит, когда у вас на карте есть 3D-скайбокс, но нет light_environment.
Также это случается если значение color для энтити установлено на 0 0 0.
Третья причина — это если браш под моделью либо не освещён, либо покрыт не отображаемой текстурой, например, tools/sky.
Чёрные брашевые энтити
Это может быть вызвано повреждённой энтитей. Пересоздайте энтитю, щелкнув Move To world, затем Tie to entity в меню Tools, или с помощью кнопок на панели инструментов New Objects.
Другой причиной, общей при портировании карт, является значение color, установленное на 0 0 0, которое отлично работает в Goldsource, но отображается во всех рендер-режимах в Source.
Когда я тестирую карту, на неё заходят люди из интернета
По-умолчанию, во время тестирования карты ваш компьютер становится сервером, к которому могут присоединяться случайные игроки. Чтобы этого избежать, до загрузки карты введите в консоли sv_lan 1. (Wrong: by default listen server is server over the LAN)
Всё слишком яркое (без полутонов или теней)
Вероятно, у вас утечка. Или же вы отключили этап расчёта освещённости в окне Compile Options.
После того, как вы включили опцию расчёта освещения, в консоли введите mat_fullbright 0.
Динамические тени (тени от игроков или prop_physics) появляются там, где их не должно быть
Это ошибка отрисовки из-за особенностей расчёта теней. Зачастую она мешает игровому процессу, т. к. выдаёт игрока, когда он думает, что спрятался. Поэтому, создайте энтитю info_no_dynamic_shadow, и с помощью кнопки Pick выберите пропускающую тень поверхность.
Отражения выглядят странно или слишком яркие
Проверьте, достаточно ли поставили кубмапов, введите в консоли buildcubemaps, затем смените карту на другую, и снова загрузите эту. Иногда новые кубмапы выглядят неправильно, пока не перезагрузите карту.
Вода невидима сверху, но правильно выглядит снизу
Такое иногда случается, пока не построены кубмапы. (Введите в консоли buildcubemaps.) Также, это происходит, если пропущены этапы компиляции видимости и освещения. Фаза компиляции видимости будет работать неправильно, если у вас есть утечка.
Невидимые проп-модели
Параметр расстояния End Fade настроен так, что модель исчезает вблизи. Иногда он меняется случайно при перемещении энтить моделей. Чтобы избежать этого, оставляйте кнопку "helpers" выключенной на всё время, пока это нужно (кнопка-переключатель находится справа на панели инструментов и выглядит как каркасная сфера).
Также, некоторые пропы могут быть использованы только в качестве определённых типов, иначе будут удалены движком при загрузке карты. Например, есть столы, которые работают только как физические модели, а есть пропы, которые работают только как динамические.
Во время перемещения по карте некоторые текстуры становятся чёрными или необычными (часто мигают на любом расстоянии от них)
Обычно это вызвано использованием текстуры модели (vertex lit generic). Геометрия мира может использовать только шейдеры "lightmapped generic". Проверьте полное имя текстуры и убедитесь, что оно не начинается с 'models/'. Как правило, есть такая же текстура в другом месте, которая будет работать правильно. В качестве превентивной меры следует исключить каталог моделей из списка материалов Хаммера (перейдите к закладке tools-options-materials и добавьте каталог "models" в "Material directory exclusion list"). Это также позволит Хаммеру запускаться быстрее.
Лестница не работает
Убедитесь, что энтитя лестницы не прикасается ни к чему-либо твёрдому. Она должна быть как минимум на одну единицу дальше от всех поверхностей. Внимательно прочтите инструкцию по созданию лестниц. В Half-Life 2 и Counter-Strike: Source лестницы работают различно.
Создание кубмапов вызывает падение игры и выдаёт сообщение об ошибке памяти
Убедитесь, что разрешение экрана в игре не меньше 800x600. Это также может произойти в широкоформатном режиме.
В игре Консоль спамит сообщением "warning Vis decompression overrun"
Попробуйте снизить количество листьев на карте
Это также может быть вызвано ошибкой компиляции, например, ошибкой vbsp Face List Count >= OVERLAY_BSP_FACE_COUNT, избыточной геометрией в 3D-скайбоксе, или деформированными поверхностями. Vis Decompression Overrun
Ваша карта не запускается и консоль выдаёт ошибку
Когда вы запускаете карту из Хаммера, выскакивает просто главное меню... Когда вы видите в консоли сообщение 'Host_EndGame: Map coordinate extents are too large!!'… Вам нужно проверить карту на наличие ошибок. В редакторе Хаммер нажмите Alt+P , и исправьте большинство из них. Кроме тех, которые говорят 'Entity (prop_static) has unused keyvalue "spawnflags"' (а в CounterStrike 'There is no player start.')
Также помните, что имя карты не должно содержать пробелов. Если будут пробелы, TF2 не сможет найти карту.

Проблемы карт Counter-Strike:Source

Заложники не двигаются
Для работы, заложникам нужна навигационная сетка. (Раньше для этого использовались узлы, но сегодня они устарели).
После своей загрузки карта говорит "Both Teams are Full".
Вам нужны на карте обе энтити: info_player_counterterrorist и info_player_terrorist. Информацию о необходимых энтитях см. в Counter-Strike: Source Level Creation. Также проверьте консоль: если она сообщает о повреждённых точках возрождения, попробуйте поднять их повыше, поскольку они могут пересекаться с поверхностью. Это нормально, когда они немного подвешены в воздухе. Выберите спауны, Ctrl+M, Move, Z: 2-6