StarCraft 2: 3. Работа с модулями

Обзор возможностей редактора StarCraft II
Весь второй раздел данной статьи был посвящён модулю рабочего поля карты.
Теперь же давайте рассмотрим другие модули, позволяющие редактировать остальные аспекты карты.

3.1. Триггеры

Триггеры – это набор алгоритмов, определяющих правила игры на данной карте (условия побед/поражения, задания), а также задающие сценарий событий (кинематики, внутриигровые события) и т.д.
Этот набор состоит из нескольких составляющих.
Во-первых, это непосредственно сами триггеры (1).
Триггеры состоят из:
событий - они определяют, в каком случае запуститься алгоритм действий, описанный в триггере. Например, событие "инициализация карты" означает, что ваш триггер запуститься сразу после загрузки карты. Если, кончено, будут выполняться также и условия запуска триггера;
условий - дополнительная проверка перед запуском триггера, например, если в событии указывается, что ключевым событием является использование юнитом определённой способности, то в условиях дополнительно указывается, что данный юнит ещё и должен принадлежать определённому игроку;
локальных переменных - это переменные, которые действуют только внутри данного триггера и другие триггеры их не видят.
С помощью этих переменных можно организовывать циклы действий или обмениваться данными между действиями. Задаются локальные переменные отдельно в начале триггера. Константа является частным случаем переменной;
действий - то, что будет происходить после того, как произойдёт событие и будут выполнены условия запуска данного триггера. Например, создание юнита или наоборот, его удаление, или приказ юниту совершить какие-то действия.
Сами действия могут также содержать дополнительные условия, при которых данное действие будет совершаться;
комментариев - текстовые строки, которые вставляются между действиями и в которых можно записать, что должно делать идущее после подсказки действие.
Для удобства дальнейшего редактирования, триггеры можно группировать по папкам и добавлять комментарии, поясняющие для чего нужны те или иные триггеры.
Вы также можете создать свои собственные условия (2), действия (3) и функции (4).
Задав их алгоритм, входные и выходные данные вы сможете потом использовать их в любых триггерах своей карты (они появятся в соответствующих списках выбора).
Кроме самих триггеров существует также ещё кое-что, что помогает работе триггеров.
Предустановки (5).
В качестве значений переменных или же параметров некоторых действий можно задать изначально заложенные варианты значений данных параметров (встроенные предустановки). Однако, если вы создали собственную функцию или действие, а также в некоторых других случаях вам может понадобиться знание, которого нет в встроенных предустановках. В этом случае вы можете создать собственную предустановку. Задаёте её имя, тип данных и возможные значения этих данных. После этого вы сможете присваивать эти значения внутри любых триггеров.
Записи (6).
По сути своей, записи – это набор переменных. То есть, при создании записи, вы указываете её имя, и указываете, какие переменные она содержит. В этом отношении запись похожа на переменную типа массив. Массив также содержит множество значений, однако, отличаются они в следующем: 1) у массива одно название и несколько значений, у записи же несколько названий переменных и у каждой из них своё значение 2) все значения, содержащиеся в массиве – одного типа, а в записи все переменные могут быть разных типов.
Глобальные переменные (7).
Единственное отличие глобальных переменных от локальных переменных состоит в том, что они задаются не внутри триггера и могут использоваться любым триггером.
Триггеры содержат 75 видов событий, 6 видов условий и свыше 1100 действий. Благодаря этому можно сделать практически всё что угодно (например, систему диалогов о которой можно прочитать в статье. Однако, если найдётся замысел, который вы бы хотели осуществить, но триггеры этого не позволяют, или же позволяют, но при этом получается громоздкая и неудобная конструкция, вполне возможно, что вам тогда может помочь скриптовый язык Galaxy. В отличие от триггеров, на Galaxy надо писать как на языке программирования, однако в некоторых случаях только он может помочь создать эффективно работающую карту. Узнать больше и даже создать свой первый код на Galaxy вы можете, прочитав соответствующие статьи: 1, 2 ().

3.2. Редактор данных

Редактор данных позволяет вам редактировать практически всё, что существует в игре. Это не только юниты, дудады, способности, эффекты, апгрейды, но и также расы (подробнее про расы в соответствующей статье), ресурсы, интерфейс, межмиссионные диалоги, свет и многое другое. Всего имеется 48 наименований того, что вы можете редактировать. Однако, следует учесть, что многие данные имеют модульную структуру. Это значит, что некоторые их аспекты задаются путём добавления в них других данных, также доступных к редактированию как отдельный объект. Для лучшего понимания этого принципа давайте рассмотрим юнитов.
В левой верхней части экрана можно выбрать тип данных, которые вы хотите редактировать. После этого появится список данных выбранного типа. Если выбрать тип данных - юниты, то можно увидтеть, что юниты содержат целый набор других данных: способности, актёры, поведения, эффекты, модели, спсоб передвижения, требования, звуки, апгрейды, оружие, подтверждения. Благодаря этой модульности создание гибридов является достаточно простым делом. Можно взять за основу одного юнита, заменить у него, допустим, оружие на оружие другого юнита (а не заново прописывать то, что уже есть), заменить портрет, некоторые эффекты. Вы можете дать нескольким юнитам одинаковое оружие, а потом выбрать тип данных оружие и отредактировать его. При этом у всех юнитов, которым вы дали данный вид оружия автоматически произойдут те же изменения. Если вам это не нужно, то можно создать копию оружия и тогда изменения в оригинале не повлияют на копию. Таким же образом можно изменять и другие аспекты юнита. Для того, чтобы лучше понять процесс создания и редактирования юнитов, советую почитать соответствующую статью (обратите внимание на комментарии к статье) и уже упоминавшиеся статьи про создание героев: 1, 2. Про создание умений можно почитать 1, 2.
Интересным моментом являет то, что дудады не выделены в отдельную категорию данных. Они состоят только из актера, и искать их надо соответственно среди актёров.
Поскольку редактор данных является сложной и объёмной темой, данному вопросу посвящён отдельный проект - учебник редактора данных. Со временем он будет пополняться новым разделами, но уже на данный момент есть, что почитать.

3.3. Модуль редактирования текста

Недокументированные возможности редактирования текста, которыми пользовались многие картоделы ещё со времён первого Старкрафта, теперь стали более официальными и даже немного расширились. Теперь можно не только изменять цвет шрифта, но даже задавать градиент и вставлять картинку (правда, картинка должна содержаться либо в архиве карты, либо в архиве мода, который указан как Dependencies для данной карты).
Однако, есть и некоторые неудобства, связанные с тем, как всё это надо непосредственно задавать. Дело в том, что инструменты редактирования позволяющие воспользоваться данными возможностями есть не во всех полях ввода текста (например, их нет в кратком описании карты). Зато все расширенные возможности по редактированию текста есть в специальном модуле – редакторе текста.
Для того, чтобы создать необычный текст там, где вам нужно можно воспользоваться одним из следующих путей.
  1. Сперва набрать обычный текст там, где он собственно и прописывается (например, всё в том же кратком описании карты – map/map info).
Затем, найти набранный текст в модуле редактирования текста и уже в нём отформатировать его так, как вам нравится.
  1. Набрать нужный текст в редакторе текста, отформатировать как вам надо, затем отметить галочкой пункт «display as raw text», скопировать получившийся текст и вставить его в нужное вам текстовое поле.

3.4. Импорт

Менеджер импорта/экспорта файлов не представляет из себя ничего особо сложного. С помощью него вы можете добавлять (меню Data/Import files) в карту любые файлы, а также извлекать, перемещать, удалять их. Если отметить галочкой опцию show reserved то вы увидите какие файлы автоматически уже добавлены в карту редактором. Эти файлы создаются при редактировании карты и отображают те изменения, которые вы внесли в неё (по сравнению с пустой картой). Здесь же можно посмотреть путь, по которому находится нужный вам импортированный файл, а для некоторых файлов можно даже посмотреть содержимое самого файла (например, текстового или графического).

3.5. Менеджер обзора содержимого

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

Просмотров: 3 475

Это сообщение удалено
Elhanter #2 - 9 лет назад 2
По поводу редактирования текста, то что всех этих настроек нигде кроме редактора текстов нет - неправда.
Так же в любом написании теста где-ли бо вручную действуют в основном правила варкрафта правда немного подредактированная, например изменение цвета врукописную по стандартной системе RGB выглядит так:
<c val="FF8000">Текст</c>
Prot #3 - 9 лет назад 2
Про то, что правила не действуют в других местах я не писал. Они действую, но задать их можно либо только по-старинке, путём написания вручную всех этих c val="FF8000 и т.д., либо можно воспользоваться редактором текста.
Насчёт интсрументов редактирования, да они оказывается есть ещё кое-где. Но всё-таки не везде. Сейчас подправлю статью.
Это сообщение удалено