CS:S Моя первая карта урок 3
Гостям скачивать запрещено
Просмотров: 1471
Комментариев: 1
Рейтинг: 0.0 Добавил: Гость
Дата добавления: 20.04.2024
Читать больше про CS: Source Маппинг


Моя первая карта

1. Ко второму уроку.


На предыдущем уроке я говорил об аккуратности, что все вертексы должны располагаться строго по координатной сетке Хаммера. Однако после создания "коробки" нашей карты, с помощью префаба Хаммера, можно наблюдать, что не все вертексы расположены так см. рис.1. Выделите их и сдвиньте в перекрестия координатной сетки:

1). переходим в окно проекции: front y/z

2). выделяем мышкой стороны коробки (рис. 2)

3). выделение (рис. 3)

4). нажимаем на главной панели управления кнопку Vertex Tool () или жмём сочетание клавиш Ctrl+V (рис. 4)

5). выделяем мышкой группу вертексов (рис. 5)

6) нажимаем на любой из появившихся красных квадратиков (выделенный вертекс) левой кнопкой мыши и не отпуская её тянем его в перекрестие координатной сетки (рис. 6)

То же самое проделайте в окне проекции side x/z! Естественно, что вертексы одной стороны браша (находящиеся на одной линии) должны быть тоже выровнены по координатной сетке.


Кто не сдвинул или у кого не получилось - сдвиньте их (вертексы) до того как будете читать дальше... Это очень кропотливая и трудоёмкая работа двигать вертексы, требует от маппера большой аккуратности и усидчивости. Но вся эта работа не пропадёт даром и Вам воздастся сторицей от будущих игроков на Вашей карте!


2. Покупаем оружие и боеприпасы.

Когда начинается игра или новый раунд, Вы жмёте кнопочку "В" (по умолчанию в настройках CSS, на открытие меню покупки оружия, установлена клавиша - В) и покупаете оружие. Для того чтобы на Вашей карте тоже можно было покупать оружие нам понадобится так называемая func_buyzone - зона покупки оружия. Для этого в местах, где расположены команды необходимо: создать большой браш, его размеры и будут той самой зоной покупки оружия. Браш должен находиться на месте рождения команды.



Последовательность действий приведена и пронумерована на рисунке выше: 1. выбор объекта, 2. выбор средства для создания объекта, 3. сама отрисовка объекта, 4. выбор текстуры для объекта, 5. применение текстуры к объекту, 6. перевод объекта в энтитию.

1. В главной панели инструментов выбираем Block Tool (Shift+B) и рисуем на карте браш, размеры как Вам нравятся! Но прежде чем рисовать новый браш обратите внимание на панель работы с новыми объектами и выбора типа объекта (на рис. выше выделена синим цветом (1)) Необходимо в ней выбрать категорию: Primitives и в качестве создаваемого объекта: block, для того, чтобы вы смогли нарисовать браш, а не очередной префаб коробки карты или чего-то другого. На нарисованном объекте жмём правой кнопкой мыши и выбираем Create object - объект браш - создан!

2. После создания браша, его необходимо превратить в триггер func_buyzone - зоны покупки оружия. (Триггер - устройство, в нашем случае невидимый объект, при активации которого или воздействии на него, происходит то или иное событие - играет звук, включается или выключается свет, едет или останавливается лифт и многое другое...). Но до этого покройте его текструрой Trigger. Для этого в панели работы с текстурами (на рис выше обведена зелёным цветом (4)) нажмите на кнопку Browse - откроется окно выбора текстур. Внизу открывшегося окна, в редакторе фильтров Filter напишите: trigger, появятся текстуры в имени которых присутствует слово trigger, нам нужна жёлтенькая текстура с надписью по середине TRIGGER. Кликнем на ней два раза мышкой...



Нажимаем в главной панели инструментов на кнопку Applay Current Texture, на рисунке выше обведена фиолетовым цветом (5). Тем самым применяем текущую текстуру к объекту.

3. Для того чтобы наш браш стал по настоящему функциональным необходимо его перевести в энтитию. Нажимаем на кнопку toEntity на рисунке выше обведена оранжевым цветом (справа вверху(6)). При нажатии на неё, выделенный объект, переводится в категорию энтитий и открывается окно настроек энтити-функций этого объекта:




По умолчанию объект переводится в энтитию - func_detail, а нам нужна: func_buyzone, для этого нажимаем на вкладку Class (1) и выбираем из списка всевозможных энтитей - func_buyzone (2), затем на вновь появившемся свойстве "зоны покупки оружия" - Team Number (int) (выбор команды) выбираем ту команду для которой делали зону покупки оружия (4) и жмём на Applay (5). Всё - зона покупки для одной из команд создана! Осталось проделать тоже самое для второй команды...

Команды игроков: для того чтобы Вы могли играть на карте не один и игроки "рождались" не в одном месте, необходимо добавить ещё игроков на карту. Можно скопировать уже созданного игрока и вставить на карту (выделить объект, нажать Ctrl+C - копировать, Ctrl-V - вставить), а можно создавать точечные этити-объекты с помощью специального средства: Entity Creation Tool, которое располагается на главной панели инструментов:Внимание: таким способом можно создавать только точечные объекты, например func_buyzone уже не создать т.к. зона покупки оружия имеет неопределённые размеры. И так, как же создать точечный объект - энтитю, к коим и относятся наши игроки:

Нажимаем на кнопку Entity Creation Tool (), и на панели работы с новыми объектами и выбора типа объекта выбираем вкладку Categories, а в ней пункт - Entities, во вкладке Objects выбираем тип энтити - info_player_terrorist. С помощью мыши и зелёных курсоров выравниваем местоположение вновь создаваемой энтити в различных проекциях (местоположение можно будет потом изменить). Жмём правую кнопку мыши и выбираем пункт меню (он там всегда один) - Create Object. При необходимости объект можно подвигать в нужную сторону или вверх-вниз.


Выше описанным способом создадим по шесть игроков в команде, разместив их возле друг-друга, но так, чтобы они не соприкасались между собой и были приподняты от пола минимум на 8 юнитов (можно и выше, но не слишком высоко...). Размещайте их так, чтобы они все находились в зоне покупки оружия, при необходимости зону покупки оружия можно расширить. Теперь можно играть 6 на 6 игроков...


3. Закладка бомбы.

Одна из самых важных и интересных тем, но не самая сложная, это закладка бомбы или спасение заложников. Сделать это очень легко, сложнее придумать сюжет карты и довести его до финального релиза... А поскольку мы с Вами идём от простого к более сложному, нам просто необходимо знать как это сделать! Итак создав две команды можно уже бы подумать над тем какая у нас будет карта: DE - закладка бомбы или CS - спасение заложников.

Лирическое отступление: какие ещё бывают карты по своему типу:

- DM - Deathmatch (вошёл в игру - убили - тут же родился заново и снова в бой, игра без начала и конца... сплошная мясорубка...) Команде присуждаются очки когда все противники убиты, что случается крайне редко, при большом количестве игроков.

- FY - Тот же самый Deathmatch, это супер маленькая карта, четыре коробки (скалы), вокруг которых бегают игроки плюс оружие всех видов на респаунах команд. Карта полностью симметричная, что, возможно, и отличает этот тип карт от DM, также как и отсутствие точек покупки оружия.

- KA - Knife Arena (на ножах). Не все стандартные карты приспособлены к игре на ножах (они слишком большие). В таких ситуациях помогают специальные Knife Arena карты.

- PA - Prepared Assault (также Pistol Arena) это почти что-то вроде Knife Arena, но только на пистолетах. Всё точно так же, только вместо ножей игрокам выдаются пистолеты.

- HE - Игрокам выдаются только гранаты

- AS - VIP assasination. Террористы должны уничтожить VIP заложника (одного из игроков противоположной команды), а VIP должен добраться до места спасения.

- ES - побег террористов (Escape). Необходимо пробежать из одного конца карты в другой достигнув точки спасения без потерь.

- AIM - Это вид карт, где на земле разбросано разное оружие одного или разного типа.

- ZM - Zombie Mod. Концепция карт состоит в том, что игрок имеет только нож и не имеет права на покупки, и, если его убивают, он переходит на сторону зомби.

- AWP - Игра ведётся на снайперских винтовках AWP.

- WH или SPAM - Чаще всего это ремейки популярных карт (de_dust, de_dust2, de_train и так далее). Главная особенность - прозрачные стены.

- SURF - Карты, координально отличающиеся от классического стиля присутствием на них так называемых "серфилок" — очень вытянутых стен, расположенных под углом ≈60 градусов. Последнее время приобретает большую популярность из-за своей оригинальности, так как на этих картах надо не только уметь метко стрелять, но и хорошо кататься.



Итак давайте будем делать место закладки бомбы:

1. Создадим в середине карты небольшой браш, размер которого и будет размером зоны закладки бомбы, например как у меня:


2. Используя копку toEntity (об этой кнопке смотри выше), превратим браш в энтити-объект: func_bomb_target:



3. Жмём кнопку Applay - и всё бомбплейс готов! Не забудьте покрасить браш в текстуру TRIGGER. При старте игры (после компиляции карты) у террористов появляется бомба, а у контр-террористов - возможность её разминировать! Это будет бомбсплей - А! Для полноты эфеекта необходимо добавить ещё два небольших штриха на карту, а именно: рисунок где будет происходить закладка и обыграть кого будет поражать взрыв и как далеко распространится "взрывная волна" наносящая урон игрокам. Начнём со второго: info_map_parameters.

- Жмём кнопку Entity Creation Tool, которая располагается на главной панели инструментов: , выбираем в панели создания новых объектов Categories - Entities, Objects - info_map_parameters. Жмём правую кнопу мыши и выбираем Create Object. Открываем свойства созданного объекта и выставляем следующие значения, жмём кнопку Applay и наслаждаемся взрывом.


Теперь нарисуем стандартный значок бомбплейса на месте установки бомбы. Для этого нам потребуется текстура самого значка: в панели работы с текстурами нажмите на кнопку Browse - откроется окно выбора текстур. Внизу открывшегося окна, в редакторе фильтров Filter напишите: target, появятся текстуры в имени которых присутствует слово target, нам нужна красная текстура с подписью внизу: decals/target или decals/{target. Для выбора текстуры кликнем на ней два раза мышкой...


Затем используя кнопку: Apply Decals (Shift+D), из главной панели инструментов (),наносим декаль (декаль - текстура с прозрачным фоном) на пол в центре места закладки бомбы, радуемся, компилируем карту (F9) и проверяем работает или нет...


4. Спасаем заложников.

1. На карте, создаём один точечный энтити объект, на панели работы с новыми объектами и выбора типа объекта во вкладке Objects пишем: hostage_entity. Жмём правой кнопкой мыши - выбираем Create Object, всё, первый заложник готов! Выравниваем его местоположение на карте также как и других игроков (террористов и полицейских). Кликнем в проекции Camera на заложнике и откроем его свойства, нас интересует одно свойство - это Skin заложника. Их всего четыре и выбираются они как показано на рисунке ниже:


В такой же последовательности добавим ещё одного заложника (по желанию можно и ещё двух).

2. Теперь необходимо создать место куда будем выводить заложников, так называемая "зона спасения" - Hostage Rescue. На карте создаём новый браш в противоположной стороне от заложников. Покрываем его текстурой TRIGGER, создаём из него, при помощи кнопки toEntity энтити-объект типа: func_hostage_rescue, жмём кнопку Applay и вуаля - всё готово! Хотя ещё нет, надо обозначить место, зону спасения аналогично тому как накладывали декаль на пол для обозначения места закладки бомбы. Делаем всё точно также за исключением выбора текстуры, в фильтре пишем rescue, выбираем текстуру для декали и наносим её на пол в месте спасения заложников. Вот теперь всё! Компилируем (F9), проверяем и радуемся!

И самое главное, чтобы заложники бежали за Вами в игре, необходимо создать файл навигации. Он необходим для навигации путей ботов и заложников. Файл этот создаётся автоматически при его отсутствии. Для этого после запуска игры в консоли наберите bot_add_ct или bot_add_t начнётся создание файла, по окончании его создания игра перезапустится и вот теперь уже можно и ботов включать и спасать заложников!


Результаты...


Скачать исходную карту урока


Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.