Редактор warcraft 3 способности
Для начала откроем редактор и нажмем F6.Спустя короткое время откроется редактор обьектов.Откроем отдел способности.Для начала подумаем,какую способность нам надо.Допустим нам нужно что бы при атаке герой(воин,предмет) имел шанс превратить в животное(Сглаз).Для этого мы выбираем Файл->Создать нестандартную способность.Далее переходим в раздел(Герой,воин,предмет) предмет и выбираем способность Сфера Замедления.Далее мы создаем ту активную способность,которую хотим превратить в пассивную(но к сожалению в пассивной форме работают только те способности,для задействия которых нужна цель(Например Сглаз,Замедление)).Теперь перейдем к нашей Сфере замедления.Переименовываем ее,если используется для героев или воинов(если для предмета-ненужно).Далее нам нужно решить для кого будет предназначена способность(Герой,предмет,воин) для этого изменяем свойство Относится к(Герой,воин,предмет).Если нам нужно к предмету(допустим чтоб пассивно вылетала молния(К примеру предмет Maelstorm(DotA)) то ставим в свойстве Относится к Предмету->Да.Ну если к герою ставим Относится к Герою->Да.Если же для воина то в обоих пунтах ставим нет.Теперь снова перейдем к сфере.В ее свойстве Данные Способность эффекта и ставим нашу активную способность.И ниже выбираете шансы на применение способности.
1) Изображение: Если галка стоит, то в игре у юнита появится изображение, по которому можно кликать. Для абилок, которые нужно активировать этот параметр - обязателен. Местоположение иконки можно настроить в параметре "Графика: Положение кнопки: Используется (Х)" и "Графика: Положение кнопки: Используется (Y)", а иконку можно настроить в "Графика - Пиктограмма: Используется". Если галка не стоит, иконки абилки у юнита не будет, но ее можно колдовать триггерно. Если изображение есть, то его можно активировать щелчком на "Горячую клавишу", настраиваемую в "Текст - горячая клавиша используется"
2) Изображение указателя цели. Если установить эту галку, то сам еще понадобится установить "Характеристики: Область воздействия" на не-нулевую величину. (например, 200). Когда вы будете прицеливаться заклинанием, на карте будет круг такого радиуса, которого вы установили в "Характеристики: Область воздействия". Круг будет выглядеть, как например при заклинании "Огненный столб": Когда целишся им, видна область воздействия. Если этой галки нет, то прицеливать заклинание нужно будет обычным варкрафтским курсором (как например когда целишся заклинанием "Волна силы")
3) Материальное заклинание: при установленной галка "Изображение указателя цел" и области воздействия, равной 0, будет исчезать указатель цели, если не установлена эта галка.
5) Только ручное применение. Этот параметр определяет как будет использоватся заклинание если отдать приказ сразу группе юнитов с этой способностью. Если эта галка стоит, то способность использует только один из группы, если нет - то сразу вся группа.
Если тип цели - "Нет" то эта абилка будет срабатывать сразу при щелчке на ней, (например "Божественный щит"), если тип цели - другой, то заклинанием нужно будет прицелится. Если тип цели - "Боевая единица", то целится можно только в любого юнита, ести тип - "Точка", то целится можно куда угодно, но целью будет считаться точка (например - "Волна силы"), а если тип - "Точка или боевая единица", то если целишся в боевую единицу то будет считатся каст на нее, если нет - считатся каст в точку. Пример - способность "Точка сбора", определяющая куда побежит юнит, родившийся в бараках. Если указать на точку то бегать будет в точку, а если на юнита - то за юнитом.
На какие цели можно колдовать, можно выбрать в "Харкатеристики - разрешенные цели"
Это для создания способностей типа "channelling". Когда абилка кастуется, то она будет длиться не больше чем указанное время.
Если стоит "Да", то пока идет время, указанное в предыдущем параметре, юнит ничего не может сделать (даже отменить заклинание). Если стоит "Нет", то во время использования способности юниту можно отдать приказ делать что-либо, но это будет считаться отменой использования этой способности. Пример - "Похищение жизни" - пока похищаешь двигаться не можешь, любое движение - разрыв заклинания.
Когда колдуете заклинание, на цель будет периодически накладываться спецеффект. Установите этот параметр, чтобы указать, как часто он будет накладываться. Например если вы установите спецэффект - какой-нибудь взрыв и этот параметр на 3, то пока вы колдуете заклинание, каждые 3 секунды на цель накладывается взрыв. Цели, конечное, ничего от этого не будет, что это будет делать, нужно писать триггерами.
При касте способности на мага будет 1 раз наложен эффект, обозначеный в "Графика - Маг".
На цель эффект накладывается периодически, с периодом обозначеным в "Данные: Длительность графики". Установите значение 0, чтобы эффект наложился 1 раз (при касте).
Если ваша цель - юнит, то наложеный спецэффект берется из "Графика - цель", если точка - то берется из "Графика - Эффект". Куда будет приложен эффект для мага (над головой, к руке и.т.п), настраивается в "Графика - точки приложения заклинания 1" (и "точки приложения заклинания 2"). Куда будет приложен эффект для цели выбирается в "Графика - воздействие на цель 1" (и до 6)
Теперь схема действия этой абилки (как это все работает):
- Если параметр "Тип Цели" не равен "Нет", то герой выбирает куда кастовать
- Если параметр "Изображение указателя цели" включен, то будет отображен круг каста, радиусом, установленном в "Характеристики - область воздействия"
- Герой бежит к цели, на расстояние, указанное в "Характеристики - радиус действия"
Вызывается триггер "Юнит начинает направлять способность
- Проходит время, указанное в "Характеристики - время подготовки заклинания"
- У героя тратится мана, указанная в "Характеристики - Затрачиваемая мана"
Вызывается триггер "Юнит начинает применять способность
- Начинается перезарядка, указанная в "Характеристики - перезарядка"
(Примечание: Да-да, перезарядка начинается именно здесь. То есть пока способность будет "Доколдовываться", перезарядка уже идет.
Вызывается триггер "Юнит приводит способность в действие
- На кастере отображается спецэффект, указанный в "Графика - Маг"
- Если цель - точка, то на ней каждые "Данные - длительность графики" секунд отображается спецэффект "Графика - Эффект"
- Если цель - юнит, то на ней каждые "Данные - длительность графики" секунд отображается спецэффект "Графика - Цель"
- ЛИБО проходит время, указанное в "Данные - Следовать в течении времени", ЛИБО игрок отменяет заклинание до того, как пройдет время
Вызывается триггер "Юнит прекращает применение способности"
ЕСЛИ игрок не отменял заклинания (то есть прошло время), то:
Вызывается триггер "Юнит завершает применение способности"
В абилке плохо то, что я не нашел, как сделать анимацию полета чего-либо к цели (анимация дальнего боя), и не нашел эффект молнии.
Если будет интересно, могу сделать карту с иллюстрацией самых важных пунктов статьи.
Возьмем за основу способность "Удар грома" или любую другую активную способность без указания цели, также следует знать, что на основе одного и того же заклинания не стоит делать все нестандартные способности, так как они имеют один и тот же ID приказа (в этом нам бы помогло заклинание "Канал",но о нем в следующей статье), назовем эту способность "Случайность".
Для проверки этого заклинания убираем у него затраты маны и перезарядку(ставим 0), еще можно убрать урон и длительность ,если надо конечно же.
Далее создадим способность на основе "Пронзающая смерть (враг)" , также убираем затраты и перезарядку, по желанию регулируем урон и длительность.
Еще создадим способность на основе "Полиморф (враг)" убираем затраты и перезарядку, а также в целях убираем "Враги", "Нейтральные" и "Не герои", регулируем длительность(если надо).
Теперь требуется создать героя и дать ему нашу способность "Случайность", также создать дамми-юнита, дадим ему нами созданные способности "Полиморф" и "Пронзающая смерть", уберем возможность атаки, а также уберем модель, для этого прописываем в поле "Графика- Файл модели" значение ".mdl" и не забываем убрать тень и потребление пищи.
Все на этом работа в РО закончена, переходим к следующей части.
Первым делом удаляем триггер с инициализацией ,он нам ни к чему.Создадим триггер и назовем его "Cast"
Событием ставим
"Боевая единица - Unit Приводит способность в действие"
это и будет приводить его в действие, он будет срабатывать каждый раз ,когда кто-то применит способность, а для того, чтобы он срабатывал только когда надо, Условием ставим
Ability being cast равно Случайность
В итоге получается такой триггер
В Действия первым делом нужно присвоить реальной переменной случайное значение, для того ,чтобы её создать нужно нажать кнопку в виде икса или нажать сочетание клавиш "Ctrl+B", нажмем на зеленый икс или на Ctrl+N, видим окно настройки переменной, дадим переменной название "RandomReal" и поставим тип "Реальная", также можно использовать тип "Целочисленная". Все! Переменная создана, теперь нужно присвоить ей значение, для этого добавляем действие, "Set Variable" Указываем туда нашу переменную и приравниваем ее к
Математика- Random Number- Random real number between 0.00 to 100.00
- 1 это собственно количество создаваемых юнитов
- 2 это тип юнита
- 3 это игрок ,которому будут принадлежать юниты,
- "Owner of (Triggering unit)" это функция ,которая возвращает значение того кому принадлежит юнит активировавший триггер
- 4 это точка где будет создаваться юнит
- "Position of Triggering unit" - точка позиции юнита включившего триггер
- "offset by 100.00" это расстояние сдвига от "Position of Triggering unit"
- "towards ((Real(Cycle))x60)degrees) " - это направление сдвига, оно будет зависеть от переменной Cycle
- 5 это поворот создаваемого юнита
Приступаем ко второму эффекту, он намного проще и не требует циклов,
В Иначе Добавляем еще один
"If / Then / Else, Multiple Functions"
Если-УсловияRandomReal больше 50
RandomReal меньше или равно 90
При таких условиях будет 40% шанс превратится в овцу и 10% шанс на то, что ничего не произойдет
То-Действия
Боевая единица- Create 1 ДаммиЮнит for (Owner of (Triggering unit)) at (Position of (Triggering unit )) facing Стандартная ориентация зданий degrees
Боевая единица - Issue order targeting a point - Order (Last created unit) to Волшебница(Альянс)-Полиморф (Triggering unit)
Вот и все первый триггер завершен, хоть и не до конца.
Приступаем ко второму триггеру, ведь нужно же убрать дамми-юнитов для этого пишем такой триггер
". Еще в редакторе карт для Starcraft'а можно было изменять многие параметры юнитов. Но модифицированный морпех всегда оставался лишь морпехом, а для создания полноценного юнита нужно было пользоваться внешними программами (а потом получить проблемы с им
Редактор: Warcraft III World Editor — Unit Editor
Где взять: Устанавливается вместе с игрой
Возможности: Ограничены лишь вашей фантазией
Сложность освоения: Средняя
Документация: Журнал "Игромания"
После второй, завершающей статьи цикла о создании карт для WCIII в редакцию пришло множество писем с просьбами изучить и другие, помимо непосредственно "картографии", тонкости редактора. Вы просили — мы услышали. В данной статье мы рассмотрим создание юнитов.
Умелое использование
Не надо забывать, что кроме обычных юнитов существуют еще герои и "специальные" юниты (встречающиеся в одиночной игре), а также здания (и вы можете сделать новое здание так же, как и юнит). Герои и сингловые юниты никаких особых отличий в параметрах не имеют. У зданий же существует дополнительный параметр Trained Units , который отвечает за то, какие юниты можно в данном здании заказать.
Чтобы создать новый юнит, выберите в меню File пункт Create Custom Unit . В появившемся окне вам нужно будет выбрать базовый юнит, который будет подвергаться изменению, и ввести его имя. Созданный юнит появится в самом низу списка, в разделе Custom Units . Остается лишь перекроить все его параметры по своему усмотрению. Чтобы новый вояка был доступен к постройке в игре, не забудьте добавить его в параметр Trained Units какого-нибудь здания.
Имейте в виду, что новоиспеченный юнит будет принадлежать той же расе в игре, которой принадлежал базовый юнит. Поэтому, если вы хотите сделать юнит для людей, но с моделью, скажем, гоблина, то модель вам придется поменять потом, соответствующим параметром, а в качестве прототипа можно смело выбрать любой "людской" юнит. Это правило действует и для зданий.
* * *
Существует множество тонкостей, которые сегодня не попали "в кадр", но они не настолько важны, чтобы тратить на них журнальную площадь. Ибо создание юнитов — процесс прежде всего творческий и от навыков владения редактором мало зависящий. Поэтому мне, прежде чем раскланяться, остается лишь пожелать вам творческих успехов.
Читайте также: