XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Другие игры (только чтение)> Half-Life 2
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Результаты опроса: Как вам статья?
Отлично! Научился создавать карты! 9 64.29%
Норм, нового для себя толком не узнал 3 21.43%
А зачем она вообще нужна? Тут и так всё понятно 2 14.29%
Голосовавшие: 14. Вы еще не голосовали в этом опросе

 
Wolfeg
oldfag
offline
Опыт: 23,207
Активность:
Создание карт для CS: Source
Я заметил тут тока статью про создание карт для халвы, а вот про кс нет, вот и решил поделится своими знаниями, ибо контер я знаю наизусть :D

Введение


Процесс создания карт для сорс аналогичен и для кс 1.6, так что если и для 1.6 хотите создать, то эта статья вам тоже поможет.

В сорс просто некоторые названия объектов изменены, другие триггеры и объекты взятые из халвы.

Намного проще создавать карту на основе другой. Вы должны определится, будет это карта с бомбой или с заложниками. Игра сама определяет каков тип карты, а делает это она с помощью объектов, которые вы расставите на карте. А именно если вы поставите точку минирования, то террам додут C4, а контам щипчики. Иногда требуется несколько объектов. Например, если вы создаёте карту с заложниками, то помимо самих заложников, вам потребуется точка эвакуации. Название карты, а точнее приставка, зависит от типа карты, если это карта с бомбой, то дожлно быть перед названием de_ ,а если с заложниками, то cs_ , а если у вас немного другой тип, то используйте общепринятые приставки, или если такого типа нет, то придумайте свой.

Настройка Редактора



Если у вас уже есть Hammer World Editor, настроенный для работы с Half-Life 2, то вам надо его перенастроить для Counter-Strike: Source. Для этого зайдите в настройки программы "Tools->Options", на закладке Game Configurations нажмите кнопку Edit. В появившемся окне нажмите Add и впишите название игры, которую вы собираетесь редактировать, а именно CS: Source, затем подтвердите выбор. В окне настроек все параметры автоматически обнулятся, чтобы вы могли настроить редактор для работы с новой игрой. В разделе Game Data Files нажмите кнопку Add и укажите путь к файлу объектов для Counter-Strike: Source. В списках Default PointEntity Class и Default SolidEntity Class укажите, например, классы info_player_counterterrorist и func_buyzone. В строке Game Executable Directory укажите путь к папке с игрой. В строке Mod Directory — путь к папке cstrike, а в строке Game Directory — путь к hl2. В последней строке укажите адрес, где вы собираетесь хранить неоткомпилированные карты. На закладке Build Programs укажите пути файлов для vvis.exe, vbsp.exe и vrad.exe.

Когда всё готово, можно начинать создавать карту.

Основы



Для начала обязательно нужно добавить объекты, без которых карта не попрёт, а именно места для появления игроков и зоны закупки для обеих команд. также надо добавить спан поинты игроков, желательно чтобы их было по 16 с каждой стороны, ибо это максимум игроков.

При помощи инструмента Entity Tool (Shift+E) разместите на базах по 16 этих самых спаун поинтов. Для этого используйте классы info_player_counterterrorist и info_player_terrorist. Старайтесь не ставить места появления игроков слишком близко, иначе после респауна они могут просто застрять. Обратите внимание на то, что вы можете указывать угол поворота игрока в настройках точки респауна, а то будет не очень приятно, если игрок появится лицом к стене.

Теперь создадим зону для закупки. Создайте браш, охватывающий все точки респауна одной команды, не обращая внимание на то, что он может пересекать стены и выходить за границу карты. Выделите созданный браш и нажмите кнопку ToEntity, чтобы присвоить ему класс func_buyzone. В настройках обязательно укажите параметр Team, который определяет, игроки какой команды могут покупать снаряжение в этой зоне. Повторите операцию для другой базы.

Теперь игроки смогут появляться у себя на базах и покупать оружие. Мы не указали определенного сценария, но на карте уже можно играть. Сохраните ее под именем mp_ваше_название и откомпилируйте (F9).

Можете запустить карту в игре и протестировать ее на ботах, пути для которых генерируются автоматически при запуске незнакомой карты. Файл навигации сохраняется в папку maps и имеет то же название, что и карта (расширение — nav). Но это возможно только на кс 1.6, т.к. в сорс боты не умеют сканировать карты. А если вы хотите чтобы боты бегали по какому-нибудь другому пути или ещё что-нибудь, то почитайте статью про редактирование вэйпоинтов, но это тоже относится только к кс 1.6

Карта с заложниками



Теперь рассмотрим создание карт с заложниками по подробней. Для начала хорошенько продумайте несколько путей для выведения заложников, а также путей штурма контов. По правилам на карте должно находится четыре заложника, расположенных недалеко друг от друга, и зона эвакуации на базе контов (зон может быть несколько — по одной на каждый путь отхода). Наличие данных объектов необходимо для корректной работы сценария.

Откройте ранее созданную вами карту и разместите четырех заложников на базе террористов. Для этого используйте класс hostage_entity. Не забудьте развернуть заложников лицом к центру помещения. Далее создайте браш на базе спецназа, который будет указывать зону эвакуации, и обратите его в func_hostage_rescue — данный объект не требует никаких настроек. Если при размещении зоны эвакуации вам мешает зона закупки, вы можете спрятать ее при помощи кнопки Hide Selected Objects.

Теперь карта в полне готовом состоянии, в дальнейшем вы сможете наводить баланс или ещё что-нибудь. Сохраните карту под названием cs_ваше_название и откомпилируйте ее. При тестировании карты, вы можете сами убедиться, как заложники исчезнут, достигнув зоны эвакуации, и победа будет засчитана контам. Обратите внимание, что заложники используют те же пути для навигации, что и боты, то есть без сгенерированного nav-файла пленники вообще не будут двигаться.

Карта с бомбой



Теперь разберём как нужно сделать карту с бомбой. По правилам должно быть две точки, которые требуется уничтожить, но для обучения нам хватит и одной. Для корректной работы сценария достаточно создать только зону минирования, но мы также воспользуемся некоторыми дополнительными возможностями.

Откройте карту созданную вами в самом начале и создайте небольшой браш, обозначив зону, в которой террористы смогут использовать взрывчатку. Приведите браш к классу func_bomb_target. В принципе, этого уже достаточно для правильной работы карты, но мы пойдем немного дальше. Создайте точечный объект info_map_parameters. В его настройках существует только один параметр, который позволяет задать радиус поражения бомбы относительно центра зоны минирования. Для нашей карты оптимальное значение — 256 юнитов.

Создайте несколько объектов в зоне минирования, которые будут взрыватся вместе с бомбой и превратите их в класс func_breakable. В настройках укажите имя bomb01_trg01. В параметрах prop_data поставьте значение соответствуещее типу объекта, а в Material Type тип материала. Повторите эту операцию для всех объектов, меняя имя на bomb01_trg02 и bomb01_trg03. Далее зайдите в настройки зоны минирования и перейдите на закладку Outputs. Нажмите кнопку Add и определите параметры следующим образом: My output named — BombExplode, Targets entities named — bomb01_trg01, Via this input — Break, After a delay in seconds of — 0.2. Повторите это действие столько раз, сколько объектов, подставляя имя следующего объекта и увеличивая временной интервал на 0,2 сек.

Результат будет следующим: как только бомба срабатывает, происходит взрыв, который убивает всех игроков в пределах центрального помещения, затем с небольшим интервалом последовательно разрушаются все объекты. Также можно разбросать груду предметов, которые будут самостоятельно разлетаться в стороны от взрывной волны. Сохраните карту под названием de_ваше_название и откомпилируйте ее.

Обзор карты при выборе команды



Когда вы только подключаетесь к игре, в меню выбора команды показывается карта с различных ракурсов, которые определены создателями карты при помощи камер. Если на карте не указана ни одна камера, то ракурс будет выбран относительно самого первого места появления игрока. далее мы разберём как это делется.

Ракурс задается при помощи двух точечных объектов. Первая точка указывает, где будет находиться камера, а вторая — куда она будет направлена. На практике это работает следующим образом: в качестве первой точки создайте объект point_viewcontrol в том месте, где будут расположены глаза наблюдателя. Создайте вторую точку, воспользовавшись классом info_target. Теперь зайдите в настройки второй точки и укажите имя camera01_trg. В настройках же первой точки укажите имя camera01 и задайте параметру Entity to Look At значение camera01_trg. Можно запускать игру и тестировать результат работы.

Обратите внимание, что вы можете создать несколько камер, вид между которыми будет переключаться автоматически через определенный промежуток времени.

Заключение



Вот вы и прошли курс молодого картографа CS и можете создать вполне отличную карту.

Статья была основана на статье из Игромании, когда-то давно прочтенной мной.

Отредактировано MENToss, 10.11.2006 в 20:00.
Старый 14.09.2006, 13:06
dk

offline
Опыт: 60,293
Активность:
ИМХО эта статья лучше
Это конечно более понятна новичкам, но по информации не сравнится.
Старый 14.09.2006, 14:26
Wolfeg
oldfag
offline
Опыт: 23,207
Активность:
упс, чё-то не заметил ту тему. ну да лан. зато обучаться хорошо, всё просто и понятно.
Старый 14.09.2006, 14:45
Pozitron

offline
Опыт: 736
Активность:
Статья ТЕМА. Зачот. Как раз для ламов.Все понятно и ничего замутного.
Старый 30.10.2006, 07:37
Smile008
Улыбочку....
offline
Опыт: 1,086
Активность:
Интересно-на кого это рассчитано? по-моему чтобы это понять достаточно просто в контру поиграть.......
Старый 08.11.2006, 12:41
Zerker
G Unit
offline
Опыт: 25,120
Активность:
MENToss молодец! Та статья чисто про 1.6, а вот эта ещё и про Source описывает. Молоток!
Старый 08.11.2006, 13:24
entomolog

offline
Опыт: 67
Активность:
Мне эта статья очень помогла ! После неё, то что написано во второй статье (упомянутой выше) сразу всё стало понятно ! Всем новичкам рекомендую сначала прочитать эту статью !
Старый 22.07.2007, 13:15

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 00:10.