И так, с чего же все обычно начинается? Все начинается с возникновения желания научиться делать карты для любимой игры (конечно же, для CS). Но не просто так, а с определенной целью. Я делю эти цели на 4 группы:
1. Создание ремейка известной карты (cs_assault, de_dust, cs_estate...) Ну, здесь все понятно. Если вы уже довольно опытный игрок и пробегали не один час на этих уровнях, то у вас естественно возникают некоторые идеи по поводу той или иной карты ("... а хорошо бы на ассаулте выкинуть к черту мост, сделать подземный ход прямо к заложникам и добавить окон в ангар..."). Все это конечно хорошо, но начинать, пожалуй, стоит не с этого. Довольно трудно поначалу сделать уровень хоть немного похожий на оригинал. Почему? Об этом немного позже...
2. Создание карты, действие которой происходит в своей школе/институте или в компьютерном клубе (в котором насижено уже ой сколько часов). Надо признаться, это тоже не самая лучшая идея. Да, конечно, идея сделать карту de_oko_za_oko, где главной целью терроров было бы взорвать кабинет_директора/деканат_института или cs_ee_zvali_nikita, где контры должны вытащить техничку, запертую в WC, безусловно интересна. Но сделать такую карту тоже очень и очень не просто. Вернее сделать то можно, но сходство с реальным объектом будет минимально ввиду отсутствия каких либо навыков в маппинге. Но ведь это сходство и является главной фишкой карты, без которой она теряет 80% интересности. Но когда появится опыт (а опыт появляется, как правило, тогда, когда начинаешь четко понимать, что ту или иную идею сможешь реализовать, а другую - нет), то можно вернуться к этому замыслу и сделать все на высшем уровне. Да сделать так, что на этой карте будет интересно играть не только учащимся этой школы/института или посетителям компьютерного клуба, а и тем, кто эти заведения ни разу не видел.
3. Создание карты, которая лишена всякого сценария и представляет собой арену для боя. Обычно эти карты не балуют игрока командной игрой и уж тем более какими-либо графическими красотами. Игровой процесс представляет из себя жесткий дезматч. В большинстве случаев это - карты типа OneRoom (одна большая комната с деталями в виде ящиков, перегородок и т.п). Реже встречается разновидность этих типов карт - "арена с фичами и приколами". Ну, например, пол карты - двигающиеся платформы. Или вся разборка происходит в воде, а игроки должны успеть скупиться, пока падают. Или в стены вмонтированы огромные вентиляторы... Надо сказать, что для того, чтобы сделать такую карту, глубоких познаний и навыков в маппинге не требуется. Достаточно лишь мысленно представлять себе эту карту. С создания подобных карт большинство и начинают.
4. Создание новой карты с сюжетом.
Довольно редко кто старается сразу сделать карту со смыслом и сюжетом (пункт 4), пусть даже и заезженным. В основном, все проходят через один из первых трех пунктов. Просто созданные ремейки/арены/школы редко получаются удачными. И это понятно - ведь в процессе создания этих карт происходит освоение редактора, основных приемов. Более того, эти карты чаще всего остаются незаконченными. Просто автор понимает, что лучше сделать что-то новое. Он чувствует в себе силы. Так потихоньку приходит опыт... Ну, здравствуй, четвертый пункт!
Что же дальше? А дальше, какую бы цель мы не избрали, нам нужно как-нибудь начинать воплощать в жизнь то, что мы задумали. В этом нам поможет специальный редактор карт. Этих редакторов есть несколько. Мне известны WorldCraft (Valve's Hammer Editor), QuArK, QERadiant. Для создания карт под Half-Life и его модификаций (чем CS собственно и является) больше всего подходит первый - Valve's Hammer Editor, далее VHE. Другие редакторы тоже вполне работоспособны, но использовать VHE стоит хотя бы потому, что в интернете все хелпы по созданию карт (их еще называют туториалами или туторами - от англ. tutorials) рассчитаны именно на этот редактор.
OK. Редактор скачан и проинсталлирован. Далее его нужно настроить для работы. Это не трудно. Если лень читать встроенный хелп на английском, то можно найти в ру-уа-нете статью по настройке редактора. Вот одна из них.
...Редактор настроен. Все готово для работы. Уже не терпится приступить к созданию будущего шедевра. Запускаем редактор, выбираем в меню File пункт New и ...запускается какое-то непонятное окно, разбитое на четыре маленьких окошечка. Все черное, какие-то решетки... - полный бред! "А где же контейнер как на ассаулте? А как мне сделать дом? И как тут ваще можно что-то сделать?! И что это за лампочка слева на панели?..." Да уж, не все оказалось так просто, особенно если раньше не видел 3DMax, LightWave и т.п. Но не стоит отчаиваться. На самом деле все довольно просто. Надо только почитать нужный туториал, где рассказывается про браш и элементы интерфейса редактора, и все прояснится.
Прочитали? Попробовали? Я же говорил, что это не трудно. А теперь приступим к созданию карты. Ставим на пустое место первый браш и сохраняем карту. Зачем? Если в сети произойдет скачок напряжения, а у вас нет источника бесперебойного питания, или бабушка выдернет штекер компьютера из розетки для того, чтобы включить стиральную машину или пылесос, то весь ваш труд просто исчезнет - очень обидно, особенно если работа долго не сохранялась. Не забывайте почаще нажимать Ctrl+S! Так вот, сохраняем карту: нажимаем эту комбинацию клавиш, или выбираем пункт в меню и ... опа, выскакивает до боли знакомое окно с просьбой ввести имя сохраняемого файла. Как, разве вы еще не придумали название для карты? Тогда поговорим немного об этом.
Я думаю, что название карты - одна из важнейших составляющих карты. Сами посудите: что первее всего увидит игрок? Не скриншот, не саму карту, а именно ее название. Будь то окно выбора карт для запуска сервера или хранилище карт в интернете, игрок всегда в первую очередь видит название карты. Поэтому к выбору названия карты стоит подходить серьезно. Здесь тоже есть несколько путей:
1. Тематическое название. Хорошо если вы делаете карту с определенной тематикой. Подобрать название к такой карте обычно довольно легко. Если это древний заброшенный город, то хорошо подойдет название de_ancient_town или взятое из NeedForSpeed сs_celtic_ruins и т.п. Если вы делаете карту с текстурами из cs_italy, то можно взять глобус Италии и выбрать подходящий итальянский городок для названия - de_torino, cs_neapol... В общем, что тут говорить? Тут и так все ясно.
2. Карта-ремейк. Тут тоже все просто. Пишем оригинальное название карты и приделываем какой-нибудь кусок. Так получились cs_assault_upc, сs_assault2k, cs_delta_assault. Можно лишь посоветовать писать оригинальное название впереди, а свой довесок в конце. Это для того, чтобы все карты одного семейства находились в списке рядом. Удачных вам cs_assault_water и de_aztec_v_more_krovi...
3. Карта-арена, без темы и сюжета. Ну, здесь можно задействовать всю свою фантазию. Попытайтесь придумать как можно более яркое, необычное и запоминающееся название. Не следует использовать скучные слова типа box, killer, death, и т.п. Лучше пусть это будет de_porvi_vseh_nafig или cs_i_love_ak47. Желательно, конечно, чтобы название как можно больше подходило к нутру карты.
4. Карта распространенного типа. Да, я говорю о mansion'ах, villa'х им подобных картах. Тут дать какой-то совет трудно. Естественно, вы можете использовать cs_best_mansion или de_villa2003, но вызовет ли интерес такое название? Зацепит ли оно глаз игрока, бороздящего просторы инета в поисках новой интересной карты? В общем, уверен, вы придумаете что-нибудь интересное. Думаю, что название cs_ghosthouse вполне подойдет. Надо будет только вставить на карту пару леденящих душу звуков, развесить паутину и использовать текстуры с гнилым деревом. Ну а de_proklyaty_stary_dom - самое центровое название для ру-уа-нета.
В любом случае, какое название вы ни выбрали, очень желательно удостовериться, не существует ли в природе карта с подобным именем. Для этого нужно зайти на самые большие хранилища карт в интернете (www.jolt.co.uk, www.daddeln.de) и задать поиск с придуманным названием. Если уровней с похожими именами не найдется, то можно вздохнуть с облегчением и приняться за работу.
Итак, название выбрано. А если не выбрано, то назовите как-нибудь (например, mymap), потом будет видно. Теперь начинаем класть браши. Ставим одну стену, потом вторую... стоп. А какого размера они будут на готовом уровне? Меня это сначала тоже очень озадачило. Вам очень повезло, так как уже есть очень хорошая статья "размеренные размеры", которую написал маппер Yarko. А когда я учился, такой статьи еще не было. Но я довольно быстро сообразил, что удобнее всего отталкиваться от размеров игрока. Если у вас нет halflife-cs_expert.fgd, то настоятельно рекомендую вам его скачать, т.к. после его установки респаун игрока с кубика меняется на картинку (спрайт) (привычное изображение контра). Теперь о размере того или иного объекта на карте, будь то стена, ящик, дверной проем или что-то еще, можно судить относительно размера игрока, что довольно удобно. Что касается меня, то ваш покорный слуга всегда начинает создание карты с того, что ставит респаун игрока.
По началу довольно трудно соблюсти пропорции. И уж тем более трудно сразу браться за создание карты-ремейка, поскольку там пропорции важны как ни где. Но со временем привыкаешь, узнаешь стандартные размеры стен, и выдержка нужных пропорций перестает быть проблемой.
При создании первой карты забудьте о новых текстурах. И без них найдется много работы. Нужно ведь будет узнать, как сделать дверь, воду, дерево, свет и т.п. Также можете забыть о hint-брашах, vis-блоках и других не нужных для начинания вещах. Стоит, пожалуй, знать только о том, что нужно избегать огромных комнат с кучей мелких деталей. Потом вы поймете почему. А пока не забивайте голову подобной ерундой.
Дальше каждый создает свой уровень по-своему. У каждого свой стиль. И это хорошо, ведь благодаря этому и получаются в итоге разные и непохожие друг на друга карты. Но что делать, если что-то не получается? Лучше всего постараться разобраться самому. Поищите в интернете какие-нибудь туторы по этому поводу. Поищите ответ на форумах. Если туторы не помогли, и вы убедились, что на форумах подобная проблема не обсуждалась, то можете спросить об этом на тех же форумах в разделах "помощь" или "новички". Вам обязательно помогут. А если не помогут, а начнут "смеяться", то это всего лишь означает, что это уже заезженная тема, которая всех очень достала. Поэтому еще раз повторю: смотрите внимательно, не говорили ли об этой проблеме ранее.
Карта более-менее закончена. Компилируется нормально. Все работает. И вам естественно хочется поделиться плодами своей работы с остальными. Перед тем, как показывать карту друзьям, и уж тем более на форумах (тем более на мапперских), обязательно ее нужно протестировать. Самый лучший вариант - боты. Для ботов, ясен пень, нужны вейпоинты (waypoints - пути, по которым бегают боты). Если уж вы освоили редактор и сделали карту, то разобраться в том, как делаются вейпоинты, вам не составит никакого труда. Я в этом уверен. Есть хорошая статья по созданию вейпов, в которой все предельно ясно. К тому же наличие путей для PODBot'а в архиве с картой добавляет ей прилично очков при просмотре. Ведь игрок сможет не только посмотреть уровень, а и опробовать его в деле (для этого же вы создавали карту, в конце концов). Но вернемся к тестированию... Вейпоинты готовы. Первым делом, я думаю, стоит проверить, нормально ли игроки появляются на карте. Как? Очень просто. Стартуем карту, выбираем режим spectator и впускаем на уровень ботов. Запускаем ровно столько ботов, сколько у вас точек появления игроков (respawn'ов). И если некоторые из подопытных дохнут сразу в начале раунда, то это значит, что вы слишком близко друг к другу поставили респауны. А если игроки застревают в полу или в стенах при появлении, значит, нужно точки появления игроков поставить подальше от этих стен, или поднять чуть выше над полом... Хорошо для проверки баланса запустить ботов и дать им поиграть самим. И если вейпы сделаны нормально, и боты нигде не цепляются, то обратите внимание на счет. Если у одной из команд слишком большой перевес в счете, то об этом стоит задуматься. Посмотрите, в каком месте встречаются команды, и почему у одной из них такой перевес. Попытайтесь это исправить. После такого тестирования карта уже будет намного лучше. Тогда можно и показать...
Лучше всего запаковывать карты в zip-архив. Это оптимальный вариант для интернета. Ни в коем случае не создавайте самораспаковывающихся exe-архивов. Они обычно вызывают недоверие со стороны игроков. "Мало ли какой там вирус может быть", - поэтому используйте всегда zip. Положите туда саму карту, вейпоинты, ну и можно маленький текстовый файл с таким названием: mapname.txt. Где mapname - имя вашей карты. В этом текстовике можете написать название карты, имя автора карты, e-mail автора карты и т.п. Писать нужно обязательно английскими буквами. Поскольку русский текст будет виден только обладателям русифицированных версий CS, коих, поверьте, очень мало. Остальные же увидят набор закорючек.
Запаковали? Ну и отлично! Теперь надо выложить карту где-нибудь в интернете. Это нужно для того, чтобы вы могли дать ссылку на скачивание на форуме (или друзьям). Есть много бесплатных хостов. Найдите подходящий, зарегистрируйтесь там и получите свой сайт. Теперь осталось только закачать туда свой zip-файл с картой.
Теперь, когда карта создана, дополнена вейпоинтами, протестирована, правильно запакована и благополучно выложена в интернет, можно отправиться на один из форумов и представить там свою работу. Но будьте готовы к тому, что ваша карта может вызвать критику. Критиковать могут все подряд. Но если вы протестировали карту перед этим, то вероятность гневной критики резко снижается. А если уж это и произошло, то примите к сведению все замечания и постарайтесь все исправить. В конце концов, критика, пусть даже гневная и неприятная, намного лучше, чем когда тебя не замечают вовсе...
Ну вот. Первые шаги сделаны. Теперь вы - маппер. У вас за плечом есть карта, а может уже и не одна. А если нет, так чего же вы ждете?! Это же так прекрасно - создавать свои миры!