L4D2 Дизайн уровня/Карты Scavenge
Если вы добавляете поддержку режима сбора к существующей карте или создаете карту только для сбора, вам нужно будет включить каждый из следующих элементов:
- «Безопасная» стартовая область
- Генератор (или другое топливо-потребляющее устройство) с местом заливания для очков подсчета очков и индикацией состояния
- Спавнер газовых баллоннов, оружия и предметов, размещенные на вашей карте
- Объект info_director с выделением выходов
Давайте рассмотрим их более подробно:
Начальная область
Оставшиеся в живых начинаются с совпадений в положениях, указанных объектом info_survivor_position , поэтому вам нужно будет поместить 4 из них и указать scavenge
в записи Game Mode.
Начальная область должна быть представлена в вашей карте nav mesh, которая сохраняется в файле .NAV. Самый простой способ сделать это - разместить объект func_nav_attribute_region в вашем .VMF. Это применит соответствующий атрибут контрольной точки к навигационной сетке при ее анализе.
Затем вам нужно поместить видимый пограничный маркер, который выжившие видят в начале каждого раунда. Начните с создания твердого тела, которое покрывает область старта, присвойте ему материал no draw и сделайте его полым 'Tools> Make Hollow'. Это превращает твердое тело в шесть меньших тел изображающих стенки первого. Теперь удалите верх и низ, оставив четыре боковых стены.
На четырех внутренних поверхностях примените материал "effects/scavenge_boundary
". Теперь граница должна быть видимой, но нам также необходимо сделать ее не твердой. Выберите 4 боковые граничные кисти и сделайте их объектом func_brush .
По свойствам установите твердость на "Never Solid". Это указывает на то, что они не влияют на столкновение в игре. Поскольку нам нужно удалить границу при начале матча, нам нужно указать ее целевое имя. Стандартом для карт Valve является "brush_scavenge_boundary
"
Осталось только добавить набор info_game_event_proxy для создания события с именем "explain_scavenge_leave_area
".
Генератор
Поместим генератор и связанную с ним логику.
Новая функциональность экземпляра делает это очень просто. Просто создайте новый func_instance и укажите его на
Steam\steamapps\common\left 4 dead 2\sdk_content\mapsrc\instance\scavenge_generator.vmf
Это включено в инструменты разработки L4D2 и содержит полнофункциональный генератор, включающий светящуюся мишень, а также огни, которые мигают зеленым, желтым и красным цветом в зависимости от оставшегося времени.
Конечно, генератор не обязательно должен быть в одном экземпляре, вы можете копировать и вставлять или делать сборку, если хотите.
Канистры, оружие и предметы
Стандартный уровень сбора имеет 16 канистр, разбросанных по арене. Вы можете указать эти местоположения, разместив объекты weapon_scavenge_item_spawn .
Стандарт для карт сбора состоит в том, чтобы оружие и предметы были всегда заспавнены, поэтому лучше всего использовать
объекты спавна оружия при их размещении. Если ваша карта поддерживает другие игровые модели, вы захотите создать оружие и предметы с помощью point_template , которое активируется сущностью info_gamemode , когда оно обнаружит, что карта была запущена в режиме сбора.
В то же время любые weapon_spawn и weapon_item_spawn , которые есть в других режимах и могут работать неправильно. Лучше всего их удалять всякий раз, когда карта загружается в режиме сбора, используя info_gamemode
.
info_director
Последний шаг - добавить некоторые выходы из info_director .
Так как на карте может быть только один info_director, и другие геймоды полагаются на него, вам, возможно, придется поместить его в основной .VMF, а не в экземпляр сбора.
Круглый старт камеры
Хорошим решение является добавление движущейся камеры, когда начинается раунд. Это можно сделать, создав пару объектов point_viewcontrol_multiplayer и координируя их с env_fade . См. карту для примера:
Steam\steamapps\common\left 4 dead 2\sdk_content\DeadLine2\mapsrc\l4d_deadline02_scavenge.vmf
Тестирование режима сбор
Чтобы загрузить карту в режиме сбор, используйте следующие команды консоли:
mp_gamemode scavenge (Does not function in l4d2)
map <your .BSP map filename> scavenge (This is the right usage)
Это полезный ярлык, чтобы избежать необходимости проходить через главное меню каждый раз или если вы еще не создали свое дополнение. Аналогичным образом вы можете изменить режим игры "coop
", "versus
", and "survival
", если вы тестируете карту с несколькими -gamemode.
Во время нормальной игры сервер сбора будет отключен через короткое время, если недостаточно человеческих игроков. Когда вы разрабатываете и тестируете свои карты сбора, вам нужно отключить это с помощью консоли:
sv_cheats 1
sb_all_bot_team 1
jointeam infected
z_spawn charger
sb_all_bot_team
предотвращает тайм-аут, если есть команда с только ботами.
Если вы тестируете свою карту из лобби и хотите начать игру только с одним игроком, используйте эту команду:
ui_lobby_start_enabled 1
Это включит кнопку 'Start Game' в многопользовательских играх (Scavenge and Versus), даже если есть только один Человек.