Игрострой
Там, где бродят протоссы
Создание мультиплеерных карт для StarCraft 2
Вместе с первой кампанией StarCraft 2 поставляется редактор карт под кодовым названием Galaxy Editor (официальное наименование — StarCraft II Editor ), возможности которого поистине безграничны. Традиционная скирмиш-карта или классический сценарий по уничтожению вражеской базы — лишь самое простое, что можно сделать в Galaxy Editor.
Ручеек фанатских дополнений потихоньку набирает силу и через несколько месяцев (в этом можно не сомневаться) превратится в бурный поток. Одни воссоздают на движке StarCraft 2 мини-игры типа тетриса, «Змейки», «Пакмена» и им подобных. Другие пытаются соорудить игры других жанров — шутеры, гоночные аркады и тиры. Третьи с головой погружаются в разработку полномасштабных аддонов.
Обойти вниманием столь мощный инструмент мы, разумеется, не могли. Сегодня мы познакомим вас с StarCraft II Editor и расскажем, как создать в нем мультиплеерную карту.
У стартовой черты
Начнем знакомство с изучения внутреннего устройства редактора. Запустив приложение StarCraft II Editor.exe , прописавшееся в корневом каталоге с установленной игрой, и введя в окошко Вход в Battle.net данные своей учетной записи в Battle.net , вы увидите, что большую часть рабочей области программы занимает окно 3D-вида, в котором и производится создание и редактирование карт.
Сверху находится основная панель инструментов, на которой расположены кнопки для создания, открытия и сохранения документа, активации различных режимов работы и не только. В левой части StarCraft II Editor помещена мини-карта и так называемая контекстная панель инструментов, содержимое которой меняется в зависимости от используемого в данный момент режима редактирования. Наконец, в нижней области приложения находится строка состояния.
Буквально несколько слов об основах навигации в окне визуализации. Перемещение камеры по карте производится посредством курсорных стрелок или с помощью мыши с зажатой правой кнопкой. Масштабируется картинка колесиком мыши. А для поворота или изменения угла наклона камеры необходимо, удерживая клавишу Ctrl , передвинуть мышь с зажатой правой кнопкой влево/вправо или вверх/вниз в горизонтальной плоскости.
Чтобы создать новую скирмиш-карту, выполните команду Файл/Создать (альтернатива — комбинация клавиш Ctrl+N ). В появившемся окне выберите из раскрывающихся списков Тип документа и Библиотеки пункты Карта и Бой (Liberty) соответственно. Затем определите размер игровой площадки, выбрав наиболее подходящие значения из списков с говорящими названиями Ширина и Высота.
Из раскрывающегося списка Набор текстур выберите любую группу текстур, изображения из которой вы будете использовать для покраски ландшафта. Если хотите добавить на карту возвышенности и низменности, поставьте флажок напротив метки Добавить случайную высоту и перемещением бегунков отрегулируйте параметры Сила и Разброс.
Также вы можете изменить базовую высоту поверхности над уровнем моря, вписав нужное цифровое значение в поле Базовая высота. Когда закончите с настройкой параметров, нажмите кнопку OK.
Архитектура и архитектоника
Перед нами плоская, как блин (или случайным образом «зашумленная»), поверхность. Самое время придать нашей заготовке рельеф. Давайте воздвигнем на карте ряд высоких горных цепей, небольших плоскогорий и уступов, обозначим несколько скалистых ущелий, а также выкопаем пару-тройку оврагов и котлованов для озер.
Первым делом задействуйте режим редактирования ландшафта. Сделать это можно двумя способами — нажав кнопку Поверхность с изображением горного хребта на панели инструментов в верхней части программы (девятая от начала) или же воспользовавшись горячей клавишей T.
На контекстной панели в левой части редактора активируйте кисть Высота (кнопка с изображением холма, третья в самом верхнем ряду). Чтобы сформировать возвышенность, щелкните по кнопке Увеличить под меткой Действие (самая первая в блоке), настройте основные параметры кисти ( Амплитуда — максимальная высота неровности, Размер — радиус захвата, Скорость изменения — сила выдавливания, Форма и Стиль ), после чего переместитесь в окно 3D-вида и пройдитесь мышкой с зажатой левой кнопкой по поверхности уровня.
Поскольку работа с остальными модификаторами осуществляется аналогичным образом, рассмотрим лишь функции каждого из них. Инструмент Уменьшить , которому соответствует вторая кнопка из группы Действие , заточен под создание разного рода низменностей — ущелий и оврагов, русел рек и котлованов озер, траншей, простых ям, ухабов и рытвин. За ним следует крайне полезный терраформер Стандартизовать , который служит для выравнивания высоты местности. Предпоследний инструмент — Шум — применяется, когда нужно выполнить так называемое «зашумление» поверхности, то есть добавить на карту чередующиеся случайным образом мелкие возвышенности и углубления. Завершает цепочку модификатор Сгладить , главная функция которого — размывать резко выраженные угловатые поверхности.
Однако это далеко не все. Еще несколько интересных терраформеров откроется вам при выборе кисти типа Уступ на инструментальной панели контекстно-зависимой панели редактора (четвертая кнопка от начала). Первые три из них нужны для формирования и редактирования уступов. Инструмент Увеличить высоту уступа (ему соответствует первая кнопка в блоке Действие ) позволяет создавать естественные и искусственные уступы. Модификатор Уменьшить высоту уступа (второй) предназначен для удаления горизонтальных слоев горных пород. Инструмент Уступ такой же высоты (третий) служит для расширения границ уже существующего уступа.
Четвертый и пятый терраформеры ( Добавить склон и Убрать склон ) используются для создания и удаления склонов на краях уступов. Комбинируя все описанные выше инструменты, можно сделать красивую и разнообразную карту.
Под покрас
Ландшафт сформирован, но он совершенно однотонный. Нанесем текстуры на полученную поверхность. Начнем с заливки игровой территории каким-то одним видом текстур. Не покидая режима редактирования Поверхность , на контекстной панели щелкните по первой кнопке из группы Кисть — Текстура. После этого активируйте самый последний инструмент из блока Действие — Заливка текстурой.
Выберите наиболее подходящий тайл под меткой Тип (на все той же контекстной панели) и щелкните по любому месту на карте левой кнопкой мышки. Вы увидите, что выбранный вами материал будет клонирован по всей поверхности. Чтобы нанести текстуру лишь на определенный участок карты, вооружитесь инструментом Добавить текстуру (первая кнопка, принадлежащая к группе Действие ), выберите нужную текстуру из местной микробиблиотеки ( Тип ), отрегулируйте основные параметры кисти ( Прозрачность , Размер — радиус захвата кисти, Скорость изменения — сила действия, Форма — круг, квадрат, ромб, Стиль ), перейдите в окно 3D-вида и протащите мышь с зажатой левой кнопкой по тому фрагменту ландшафта, который хотите затекстурировать.
Если в процессе работы вам понадобится удалить (стереть) добавленный на карту текстурный слой, воспользуйтесь инструментом Удалить текстуру из группы Действие (ему соответствует вторая кнопка от начала). Только учтите, что представленный в редакторе ластик позволяет счищать с поверхности не более одного текстурного слоя.
Необходимо выровнять (стандартизовать) прозрачность всех нанесенных на уровень текстурных слоев? Тоже не проблема. Активируете инструмент Стандартизовать в блоке Действие на контекстной панели в левой части редактора, задаете требуемый уровень прозрачности (один для всех материалов), перебираетесь в окно визуализации и проходитесь мышкой с зажатой левой клавишей по уже затекстурированным областям с неоднородной степенью прозрачности.
Когда возникает необходимость заменить материал определенного текстурного слоя (например, мелкую каменную кладку на крупную), выручает инструмент Заменить текстуру из блока Действие. Буквально несколько слов о том, как он работает. Выбираете исходную (что заменяем) и конечную (чем заменяем) текстуры из соответствующих наборов под меткой Тип на контекстной панели, настраиваете параметры кисти (строго по желанию), отыскиваете в окне 3D-вида текстурный слой, содержащий исходный тайл, и начинаете возить мышью по коврику. Делаете это до тех пор, пока все участки подопытного слоя не будут обернуты новой текстурой. Не бойтесь задеть соседний слой: вся прелесть «заменителя» как раз и состоит в том, что он не позволяет выйти за рамки слоев с подлежащим замене материалом.
Взгляд через микроскоп
По окончании малярных работ самое время добавить на уровень несколько дорог и водных плоскостей. Сперва давайте заполним жидкостью котлованы и рвы. В верхней части контекстной панели редактора выберите предпоследнюю кисть — Вода. Щелкните по кнопке Добавить воду под пунктом Действие , выберите наиболее подходящий тип водной поверхности и кликните левой кнопкой мыши по точке на карте, где хотите создать водную плоскость размером с одну клетку игрового поля.
Чтобы удалить ненужную водную поверхность, воспользуйтесь инструментом Удалить воду из блока Действие. Можете поэкспериментировать с настройкой параметров выбранного «водяного» шаблона — изменить цвет воды, ее прозрачность, искажения, отражаемость, включить затенение. Для этого нужно нажать кнопку Редактировать настройки воды на контекстной панели и в появившемся окне с заголовком Значения объекта и бегунками переопределить значения характеристик.
Переходим к дорожному строительству. На контекстной панели в левой части редактора активируйте кисть Дорога (кнопка с изображением синей изогнутой стрелки, вторая от начала). Перейдите в окно 3D-вида и обозначьте последовательными одиночными щелчками левой кнопки мышки контрольные отметки, по которым пройдет дорожное полотно (точнее говоря, его секции). Чтобы завершить создание дороги, нажмите клавишу Esc.
Посторонним В
На некоторых картах необходимо ограничить или вообще запретить перемещение юнитов по некоторым областям, блокировать строительство на определенных участках или, напротив, сделать ряд исключений из правил — например, разрешить взбираться наземным боевым единицам на отвесные уступы.
На этот случай в редакторе предусмотрен специальный режим Проходимость , который вызывается горячей клавишей H (или щелчком мыши по кнопке с изображением изогнутой стрелки цвета морской волны на панели инструментов в верхней части приложения, пятнадцатой от начала).
Чтобы добавить проходимость/непроходимость для игровых клеток, на контекстной панели задействуйте кисть Нарисовать зону с изображением изогнутой синей стрелки (самая первая), активируйте кнопку Добавить проходимость из группы Действие (первая из двух), выберите нужный тип ограничителя ( Нет прохода / Наземный проход / Строительство невозможно ) в соответствующем поле, определите радиус захвата кисти, переместив на желаемую позицию бегунок под комментарием Размер. При необходимости измените форму кисти, кликнув по кнопке с изображением одной из трех приглянувшихся фигур из блока Форма.
После этого перейдите в окно 3D-вида и пройдитесь мышкой с зажатой левой кнопкой по тем участкам, на которых хотите разрешить/запретить перемещение юнитов или блокировать строительство. Если даже допустите ошибку, то всегда сможете снять установленные ограничения. Делается это по аналогии с добавлением участков проходимости. Щелкаете по кнопке Убрать проходимость , принадлежащей к блоку Действие , снова задаете тип проходимости ( Нет прохода / Наземный проход / Строительство невозможно ), настраиваете параметры кисти, после чего перебираетесь в окно визуализации и обводите маркированные территории установленного на контекстной панели типа — выделение с областей мгновенно снимается.
Еще вы можете обозначить на карте так называемые бесполетные зоны — области, в пределах которых воздушные единицы будут блокированы. Для этого нужно выбрать на контекстной панели из группы Кисть инструмент Бесполетные зоны (ему соответствует кнопка с изображением зеленого летательного аппарата, заключенного в перечеркнутый оранжевый круг) и последовательными щелчками левой кнопки мыши добавить на уровень нужное число контрольных отметок, в радиусе действия которых любые полеты будут запрещены (воздушные юниты будут огибать такие области).
Еще один полезный инструмент из категории ограничителей скрывается под кнопкой Динамическое ограничение из группы Кисть на контекстной панели (второй от начала). Он позволяет отметить на карте точки, на уровне высот которых проходимость для всей поверхности будет заблокирована. Если вы, скажем, водрузите такой невидимый вспомогательный объект-пустышку на гладкий уступ, то ни одна боевая единица (хоть ваша, хоть вражеская) ни при каких условиях не сможет взобраться на него и тем более перемещаться по его поверхности.
Пробный запуск
Далее по плану — добавление на карту начальных позиций для игроков (именно на их месте в игре материализуются базы противоборствующих сторон). Чтобы создать стартовую точку, переключитесь в режим редактирования Точки , который вызывается клавишей P (или щелчком левой кнопки мыши по кнопке с изображением стрелки «якорного» типа на панели инструментов, двенадцатой от начала), на контекстной панели в левой части редактора активируйте второй инструмент из блока Добавить точку — Начальная позиция и обозначьте щелчками левой кнопки мыши несколько начальных позиций (по числу игроков). Отмена инструмента осуществляется клавишей Esc.
Самые нетерпеливые уже могут опробовать карту в игре. Для этого достаточно выполнить команду Файл/Пробный запуск или же воспользоваться комбинацией клавиш Ctrl+F9. Редактор тут же запустит StarCraft 2 и подгрузит в него наш уровень.
Когда загрузка завершится, вы увидите на экране сообщение о том, что вы победили. Ошибка? Вовсе нет, просто мы с вами пока не указали, за кого будет играть компьютер, а следовательно, и бороться на данный момент попросту не с кем. Если вам не терпится проверить свою карту на предмет дизайнерских ляпов, смело жмите кнопку Вернуться в игру и смотрите, что же у вас такое получилось. В противном случае покиньте игру и разверните редактор, в котором нам предстоит довести карту до ума.
Искусственный интеллект
Первое, что нам с вами сейчас нужно сделать, — ввести в игру компьютер, задействовать искусственный интеллект. Или, проще говоря, закрепить ПК за одной из стартовых отметок. Если вы не собираетесь делать скирмиш-карту с прицелом на полноценные сетевые баталии, то никакие параметры настраивать не нужно: ведь в таком случае все слоты будут распределены между реальными соперниками. А вот для полноценного тестирования таких карт в режиме офлайн придется воспользоваться специальными загрузчиками вроде sc2ALLin1 ( Offline StarCraft 2 RETAIL Launcher ), Lazy Launch и им подобными.
Чтобы выделить один из слотов под ИИ, проследуйте в меню Карта и выберите в нем пункт Параметры игроков… В открывшемся окошке во вкладке Игроки кликните в табличке со списком игроков пятнадцатую запись ( Враждебный ). Приступаем к переопределению основных параметров игрока. Главное, что нам здесь нужно сделать, — выбрать из раскрывающихся списков Управление и ИИ значения Компьютер и (по умолчанию) соответственно. Этого будет вполне достаточно.
Также вы можете изменить имя соперника, введя произвольное буквосочетание в поле Имя , задать цвет, которым будут окрашены все вражеские юниты на мини-карте (атрибут Цвет ), указать, за какую расу будет играть компьютер (характеристика Раса ), привязать редактируемого игрока к одной из добавленных на карту стартовых точек (параметр Нач. позиция ) и даже выбрать нужную эмблему из списка (атрибут Эмблема ).
Декоратор
Мы вышли на финишную прямую. Последний этап работы — добавление различных объектов (декораций, боевых единиц и ресурсов) на карту. Для начала давайте украсим игровую территорию элементами окружения — растительностью, строениями, оградами и прочей бутафорией.
Переключитесь в режим работы с декорациями с помощью клавиши D (или нажмите кнопку с изображением тропического дерева на инструментальной панели, одиннадцатую от начала). Выберите из выпадающих списков на контекстной панели в левой части программы нужные группы объектов для отображения, выделите произвольный элемент из местной библиотеки, перейдите в окно 3D-вида и щелкните левой кнопкой мыши по тому месту на карте, куда хотите добавить объект. Отмена инструмента — клавиша Esc.
Чтобы переместить объект, ухватитесь за него левой кнопкой мышки и, не отпуская ее, передвиньте мышь. Требуется приподнять или опустить модельку? Выделяете элемент на сцене щелчком левой кнопки мыши и регулируете высоту объекта клавишами Page Up и Page Down. Поворот выделенной на карте конструкции осуществляется при помощи клавиш * (90 градусов по часовой стрелке), / (90 градусов против часовой стрелки) и . (180 градусов) на цифровом блоке клавиатуры.
Для удаления объекта со сцены щелкните по нему левой кнопкой мышки и нажмите клавишу Delete. Чтобы создать точную копию объекта, выделите его на карте и скопируйте в буфер при помощи комбинации клавиш Ctrl+C , а затем поместите дубль на карту, используя комбинацию клавиш Ctrl+V.
Аналогичным образом на карте расставляются юниты. Отличия только в режиме редактирования, который называется Боевые единицы (включается клавишей U ), и наборе списков на контекстной панели. Активировав режим работы с боевыми единицами, вы увидите в левой части программы аккурат под мини-картой четыре выпадающих списка (по два в каждой строке). Из первого вы должны выбрать игрока, которому будет принадлежать выбранная боевая единица, из второго — тип игры (в нашем случае Схватка ), из третьего — одну из рас, объекты относящиеся к которой требуется отобразить, и, наконец, из четвертого — категорию объектов (в библиотеку будут подгружены только относящиеся к данному типу элементы). И еще один важный момент — точнее, подсказка: все игровые ресурсы разработчики почему-то отнесли к боевым единицам и определили их в категорию Ресурс , среди элементов окружения вы их не найдете.
Когда закончите с добавлением объектов и шлифовкой, сохраните карту командой Файл/Сохранить как. В принципе, все. Можно загружать уровень и играть. Для этого вы можете воспользоваться уже знакомой отладочной командой Пробный запуск из меню Файл или перетащить сохраненный на жестком диске файл проекта ( название_работы.SC2Map ) на исполняемый файл StarCraft II.exe, расположенный в корневом каталоге с установленной игрой.
Если тема редактирования StarCraft 2 вам интересна, ждем ваших писем с вопросами, а возможно — и с пожеланиями, какие еще статьи про SC2-редактор вы хотели бы увидеть на страницах нашего журнала.