Макрос на цикл заклинаний wow

Обновлено: 04.07.2024

Как сделать удобный макрос на последовательность заклинаний?

Часто возникают случаи, когда вы часто используете одну и ту же последовательность заклинаний (например, открываете ротацию). Для этого есть команда /castsequence. Она использует список заклинаний, разделенных запятыми. Если вы успешно использовали заклинание, то макрос переходит к следующему. Например:

/castsequence Жертвенный огонь, Порча, Бич агонии, Похищение жизни

Но есть одна проблема. Если Жертвенный огонь не был произнесен по каким-либо причинам (нехватка маны, вне зоны действия, сайленс), то макрос останется на той же точке.

Вопрос: как написать этот макрос, чтоб макрос не останавливался в этой точке, а автоматически, без дополнительного нажатия переходил к следующему заклинанию?

Можно только написать чтоб макрос возвращался к первому заклинанию, например в случае если второе заклинание не было произнесено, например так:
/castsequence reset=2 Жертвенный огонь, Порча, .
Через 2 секунды после бездействия макроса, макрос возвращается к первому заклинанию в списке макроса.
Или например так:
/castsequence reset=target Жертвенный огонь, Порча, .
Будет возвращать макрос к первому заклинанию в списке макроса каждый раз при смене цели.

". а автоматически, без дополнительного надатия переходил к следующему заклинанию?" - так не получится, данный макрос с использованием /castsequence приходится исползовать столько раз, сколько прописал спелов в макрос, если хочешь чтоб был переход к следующему заклинанию.

Макросы для ДК

очередной сборке макросов, мы поговорим о рыцаре смерти, а именно о том, как можно облегчить игру этим классом с помощью макросов. Облегчение будет независимо, что в PvE-игре, что и в PvP-игре.

Макросы не будут разделены на отдельные категории PvE и PvP, потому что они могут быть использованы в обоих случаях.

Первый макрос позволяет не задумываться о том, есть ли баф "Рунический удар" или нет. Вы просто жмете обычную атаку и при появлении этого бафа - он используется. "Основная абилка" можно поменять на свой баф, на который у вас расположена ветка талантов.


Второй макрос очень удобен и используется практически всеми ДК, знающие игру за свой класс. Он вешает все доты, которые есть у ДК за несколько кликов:


Третий макрос позволит вам притянуть противника и сразу оглушить его своим петом, если вы вкачаны в ветку "Анхоли":


Четверый макрос является спамом спелла без ГКД, потому при нескольком нажатии происходит критический урон по массе:


В общем, это четыре основных макроса, которые используются в PvP и в PvE. Если вы знаете еще нужные макросы, то напишите их в комментариях и они будут добавлены в гайд. можно поменять на свой баф, на который у вас расположена ветка талантов.


Второй макрос очень удобен и используется практически всеми ДК, знающие игру за свой класс. Он вешает все доты, которые есть у ДК за несколько кликов:


Третий макрос позволит вам притянуть противника и сразу оглушить его своим петом, если вы вкачаны в ветку


Источник: Форумы Рус21
Автор с ником: Arknarok

Может это уже где-то было, но более подробного описания я не видел еще ни где.

Итак, что нового в новом /cast. И как вообще он работает? А работает он просто:
/cast Arcane Intellect
/cast Smite(rank 3)
Если ранк спелла не указан, то будет использован наивысший доступный.
Из нового пожалуй опции. Опции позволяют повесить на один макрос кучу всего полезного. Опции указываются в квадратных скобках. Разные опции разделяются запятыми, а варианты одинаковых - слешем. Приведу пример
/cast [help] Arcane Intellect
В таком случае мы прокастуем спелл ТОЛЬКО если наша цель дружелюбна. После точки с запятой можно указать что произойдет иначе. Например
/cast [help] Arcane Intellect; Fire Blast
В таком случае мы прокастуем интеллект если цель дружелюбна и фаер бласт если нет. Доступные опции такие
[help]: дружелюбная ли цель
[harm]: является ли цель враждебной нам
[combat]: в бою ли вы
[stance: X]: в какой стойке вы находитесь. Вместо Х нужно подставить код стойки. Стойка 0 - стойка по умолчанию. Другие стойки:
Воин: 1 - боевая, 2 - защитная, 3 - берсеркер
Прист: 1 - шадуформа
Друид: 1 - медведь, 2 - тюлень, 3 - кошка, 4 - гепард, 5 - мункин или дерево
Рога: 1 - стелс
Заметка: ауры паладина не являются стойками
[stealth]: находитесь ли вы в режиме скрытности
[modifier] или [modifier: shift|alt|ctrl]: нажимаем ли мы определенную кнопку при нажатии на макрос
[equipped:<item>]: надет ли на нас определенный предмет. Об этой опции я расскажу отдельно
[target=unit]: это даже не совсем опция. По сути она меняет нашу цель на указанную, и об этой вещи я расскажу подробнее позже
[actionbar:X]: вызывается ли макрос из определенного слота на экшнбаре
[pet:name|class]: есть ли у нас пет. Можно указать имя пета (например [pet:Барсик]) или же его класс (например [pet:Cat]). Можно вообще ничего не указывать, тогда будет только проверка, есть ли у нас пет.
[mounted]: едем ли мы на лошади
[swimming]: плывем ли мы
[flying]: летим ли мы
[indoors, outdoors]: находимся ли мы в здании или снаружи соответственно
[button:X]: если макрос был нажат определенной кнопкой (про это дальше)
[channeling:spell]: если у нас идет ченелинг спелла spell. Можно не указывать spell, тогда будет проверка идет ли вообще ченелинг чего-нибудь (фест эйда , например)
[exists]: существует ли ваша цель
[dead]: мертва ли ваша цель
[party]: находится ли цель в вашей группе
[raid]: находится ли цель в вашем рейде
[group]: находитесь ли ВЫ в группе
[group:party/raid]: то же самое с указанием типа группы, тоесть можно проверить , находитесь ли вы в рейде.

Заметка: опцию легко сделать отрицательсной добавив к ней 'no-'. Например [help] проверяет, является ли цель дружелюбной, а [nohelp] - является ли цель НЕдружелюбной
Как видите, опций у нас ой как немало. Самое интересное, что в ветку "иначе" тоже можно добавить условие! Посмотрим, что можно составить.
/cast [help] Arcane Intellect; Fire Blast - как я уже скзаал, если цель дружелюбная, то кастим интеллект, а если нет - фаер бласт
/cast [help] Arcane Intellect; [nocombat] Fireball; Fire Blast - кастуем интеллект, если цель дружественная, если нет, то кастуем фаербол если мы не в бою. А если в бою, то фаер бласт. Как видите, мы уже повесили 3 спелла на одну кнопку!
/cast [help] Arcane Intellect; [harm,nocombat] Fireball; [harm,combat] Fire Blast - делает примерно тоже самое что и предыдущий, но здесь используются сразу несколько условий. Кроме того макрос не сработает никак, если выбрана нейтральная цель.
/cast [group:party] Arcane Brilliance; Arcane Intellect - используем аркан бриллианс, если мы в группе, и обычный интеллект если нет.

Теперь вы уже можете написать макрос. Но некоторые опции требуют разъяснение

Опция [equipped]

Опции [button:X] и [target=Х]

Надеюсь, вы поняли, как работает /cast. Но, порой его возможностей недостаточно. Тогда нам поможет совершенно новая команда /castsequence

/castsequence

Суть /castsequence - в том, что на одну кнопку вешается несколько заклинаний. И кастуются они по очереди. То есть по первому нажатию мы кастуем первый спелл, по второму второй и т д. После того как мы применили последний спелл, последовательность сбрасывается и в следущий раз будет применен первый спелл.

А если спелл был скастован неудачно? Например. мы прервали его, или он был на кулдауне! Что тогда?
Тогда при следущем нажатии будет пытатся скастован этот же самый спелл. И так пока он не скастуется удачно.

Ну а если скастовали удачно, а сам спелл получился неудачно? Резист например?
А это уже не важно. /castsequence обращает внимание только на факт каста.

Приведу пример
/castsequence Frost Nova, Blink - сначала используем фрост нову, а затем блинк. Заметьте, что в последовательности спеллы разделяются запятой

Это все хорошо, а если я случайно применю макрос вне боя?
Можно использовать те же опции что и для /cast. Но здесь их можно задать ТОЛЬКО для всей последовательности. Например
/castsequence [combat] Frost Nova, Blink

Это отлично, а если я передумаю и не захочу использовать блинк. Как тогда?
Для таких случаев придумана отличная штука, ресет. Ресет объявляется после опций, но перед спеллами. Приведу пример
/castsequence [combat] reset=24 Frost Nova, Blink - таким образом через 24 секунды последовательность снова начнется сначала

Не понял, тоесть через 24 секунды все, ресет?
Ну не совсем уж всё. Ресет случится только если за эти 24 секунды мы ни разу больше не трогали этот макрос.

Это все хорошо, но я варлок!
Ну и славно. Варлокам часто приходится поддерживать на враге 3 дота. Почему бы не организовать этот процесс?
/castsequence Curse of Agony, Corruption, Immolate

Отлично, но если цель сдохнет пока я докастую все это богатство?
Ресет это не обязательно время. Можно указывать другие условия. Например
/castsequence reset=combat/target Curse of Agony, Corruption, Immolate - combat означает, что когда меняется состояние "в бою/ не в бою", последовательность сбрасывается. А target указывает, что последовательность нужно сбросить, когда ты сменил цель (например надоело мучить определенную цель и ты реши помучить другую)

Это всё хорошо. но я хочу и сам сбрасывать последовательность - это можно сделать?
Да, можно использовать модификаторы. Например
/castsequence reset=combat/target/shift Curse of Agony, Corruption, Immolate - теперь если нажать на макросе с зажатым шифтом, последовательность сбросится и ты скастанешь Curse of Agony!

Ранки - вполне простая вещи. Если мы используем макрос вида
/cast Arcane Intellect(rank 1) то мы всегда будем применять интеллект первого уровня. Если опустить указание ранка, то будет применен наивысший уровень спелла.
Однако здесь есть одна тонкость. Есть такие заклинания, у которых все немного не так. Приведу пример
/cast Faerie Fire (Feral)(rank 2) - так мы кастуем феральный фэри фаер второго ранка. Но:
/cast Faerie Fire (Feral) - такой макрос работать не будет. Дело в том, что игра подумает. что вы пытаетесь указать Feral как ранк. Правильно написать так:
/cast Faerie Fire (Feral)() - вот теперь все отлично. Можно использовать пустые скобки и для других спеллов, но не забывайте что для макроса выделяется только 255 знаков!

Запланированные действия

Весьма больная тема. Тут следует понять, что ВЕСЬ макрос пытается выполнится мгновенно. Если он сложный, игра может зависнуть пока он пытается пропихнуть себя. Таким образом если мы пишем макрос вроде
/cast Polymorph
/p Sheeping %t.
То ваш персонаж сообщит об овцевании одновременно с началом каста. Если вы хотите , чтобы макрос выполнял какие-то действия с задержкой, пользуйтесь командой /in <время> <слеш-команда>. Однако вы сможете только ставить в качестве команд разговорные (/s, /rw, /p и т д), эмоции (/sleep, /kneel и т д) или команды, относящиеся к вашим аддонам. Запланировать несколько кастов с помощью /in невозможно!

Помимо этого, можно использовать команду /aftercast. Она ставится перед кастом и срабатывает после того, как вы завершили этот каст. Работает она также, как /in и имеет такие же ограничения. Пример:
/aftercast /p I've sheeped %t!
/cast Polymorph - здесь наш персонаж сообщает об овцевании уже после каста.

Много кастов и глобальный кулдаун

Тоже хитрая тема. Как уже упоминалось, макрос выполняется мгновенно. Тоесть если вы напишете чудо вроде
/cast Overpower
/cast Execute
/cast Mortal Strike
/cast Sunder Armor
то ничего у вас не выйдет. Провалится попытка выполнить Overpower, а затем игра заблокирует дальнейшее выполнение макроса, мотивируя глобальным кулдауном (хотя его на самом деле нет). Здесь обмануть игру не выйдет.

Однако есть старый приём под названием /stopcasting, который прерывает каст. После него никакого кулдауна быть не может, так что игру можно попытатся здесь провести. Но только если вы прерываете каст мгновенного спелла, которое не начинает глобальный кулдаун!
/cast Arcane Power
/stopcasting
/cast Presence of Mind
/stopcasting
/cast Pyroblast
Как видите мы прерываем 2 мгновенных спелла. На самом деле прерватьих нельзя, такчто у них есть шансы пройти.

На макрос можно повесить использование предметов. Это делается командой /use. Самое банальное вы можете сделать так
/use Green Mechanostrider - таким образом если у вас есть это чудо, то ввсё будет нормально. Как и все прочие макрокоманды, /use легко сочетается с опциями
/use [nocombat,outdoors] Green Mechanostrider
Впрочем не только этим мы живы.

/use InvSlotId

Если после /use вы указываете одно число, то игра решит что вы пытаетесь применить что-то из экипировки. Вот как игра трактует числа:
0 - боеприпасы
1 - голова
2 - шея
3 - плечи
4 - рубашка
5 - тело
6 - пояс
7 - ноги
8 - ботинки
9 - наручи
10 - перчатки
11 - кольцо 1
12 - кольцо 2
13 - тринкет 1
14 - тринкет 2
15 - плащ
16 - главная рука
17 - вторая рука
18 - стрелковое оружие
19 - табарда
20 - первая сумка (самая правая)
21 - вторая сумка
22 - третья сумка
23 - четвертая сумка (самая левая)
следущие номера пройдут только если вы находитесь в банке
от 40 до 67 - слоты в банке
от 68 до 74 - слоты для сумок в банке

/use сумка слот

Если вы указываете 2 номера после /use то вы применяете предмет в сумке. Сумки имеют номера от 0 (ваша главная сумка) до 4 (самая левая сумка). Нумерация слотов идет слева направо, сверху вниз и всегда начинается на самом верхнем ряду.

Ну а теперь небольшой сюрприз: /use может кастовать спеллы, а /cast - применять предметы! Это особенно полезно в /castsequence макросах, когда вам потребуется чередовать предметы с заклинаниями. Добавьте сюда ваши знания опций и вы теперь можете составлять отличные макросы!

Прицеливание

Как вам уже известно [target=X] при выполнении команды, позволит вам менять вашу цель для комманды. Но для полноценного прицеливания сделана полноценная команда /target. Опять же, здесь можно пойти напрямую
/target Cog - выделит ближайшего к вам Cog-а. Однако тут есть заметка. Если никакого Cog-а рядом нет, она выделит ближайшую к вам цель, независимо от того, кто это будет (да хоть труп). Такчто аккуратнее с такими макросами.

Заметка: эти определения легко комбинируются между собой. Например partypet3targettargettarget означает цель цели цели пета 3-го члена вашей группы. Вот только такие ужасы строить не советую, потомучто у вас будут сильные тормоза по ходу выполнения макроса.

Прочие команды прицеливания

/assist - аналогичен targettarget, или нажатию кнопки F. Может только применятся с выделенным дружественным юнитом или если вы указываете имя (например /assist Cog). Учтите если цель вашей цели враждебна вам то вы автоматически войдете в режим боя!
/cleartarget - сброс вашей цели
/targetlasttarget - выбирает последнюю вашу цель
/targetenemy, /targetfriend - эти команды по нажатию выбирают между врагами/друзьями. Тоесть /targetenemy аналогично нажатию TAB, а /targetfriend - нажатию CTRL-TAB. Перечисление можно инвертировать добавив после команды 1 (тоесть /targetenemy 1 работает как SHIFT-TAB)
Заметка - любую из этих команду можно использовать только 1 раз за весь макрос.
/targetparty, /targetraid - то же самое но для группы и, соответственно, рейда. Опять же, параметр 1 позволяет инвертировать последовательность.

Фокус - новинка в макросах 2.х. По сути командой /focus можно "запомнить" какую-либо цель, а потом обращатся к ней через /target focus ну или [target=focus]. К фокусу нужно привыкнуть, но потом он станет полезным.

А как снять этот фокус?
/focus [taget=none]

А как проверить, есть ли у меня фокус
Использовать в комманде опцию [taget=focus, exists] - это условие будет положительно только если у вас есть фокус.

Чтобы понять смысл фокуса, разберем такой макрос:
/focus [target=focus, noexists] [target=focus, dead] [target=focus, help]
/stopmacro [target=focus, noexists]
/cast [target=focus] Polymorph
В первой строке мы фокусируемся на цели, если одно из трёх условий верно: 1) У нас нет фокуса, 2) Наш фокус мертв, 3) Наш фокус дружелюбный.
Во второй строке мы прерываем макрос, если фокус поставить не удалось (noexists)
И в третьей строке мы кастуем полиморф на фокус. Суть в том, что после этого мы можем выделить любую цель, но нажатие на этот макрос всегда будет овцевать сфокусированную цель (пока она не умрёт, не пропадет или вы не очистите фокус)

Порой требуется поменять фокус и цель местами. Делается это так:
/cleartarget [target=target, dead]
/clearfocus [target=focus, dead]
/target focus
/cleartarget [target=focus, noexists]
/targetlasttarget
/focus target
/targetlasttarget
Первый две команды очищают фокус и цель, если они мертвы - зачем целится в мертвецов? Затем мы целимся в фокус и очищаем цель, если фокус оказался пустой или неверный. Затем мы возвращаем цель на место командой /targetlasttarget, выбираем фокусом нашу цель и снова меняем нашу цель командой /targetlasttarget.

Пет и как им управлять

Использовать заклинания пета можно через обычный /cast. Но у пета есть некоторые свои команды.
/petattack, /petfollow, /petstay, /petpassive, /petdefensive и /petaggressive - эти команды по сути относятся к кнопкам управления петом. Также есть команды /petautocaston спелл и /petautocastoff спелл, с помощью которых можно включать/выключать автокаст петом определенных спеллов.

Внешний вид макроса

Конечно, вы можете экипироватся командой /use. Но правильнее делать это командой /equip <предмет>. Кроме того, можно использовать команду /equipslot <id> <предмет> для экипировки предмета в слот. Слоты я уже когдато расписывал. Для деэкипировки можно использовать /unequip и /unequipslot соответственно. Пример:
/equipslot 14 Carrot on a Stick - так мы поместим тринкет в нижний слот.

Изменения в макросах после 2.2

Итак обзор изменений, которые мы увидим в макросах с патчем 2.2.0

- Теперь можно использовать более продвинутые опции для [modifier:X] . Помимо привычных shift, alt, ctrl добавились lshift, rshift, lctrl, rctrl, lalt, ralt, которые могут различать левые и правые шифты.
- Попытка переместить опцией цель спелла на несуществующую цель будет выдавать еррор при попытке каста. Это хорошо, так как раньше в таком случае спелл кастовался на текущую цель, что обычно заканчивалось бессмысленной потерей маны.
- Сильно переписана система динамического обновления макросов. Ожидается прирост скорости в 100 раз (по времени).
- Продвинутые макросописатели наверно порадуются тому, что имена предметов в скриптах теперь можно заменить на item:X , где Х - ид предмета. Что характерно, даже если у вас нет предмета в сумке, он будет выдернут из WDB-кэша (полезно при использовании функций вроде GetItemInfo("item:X") )
- При описании условий для исполнении макроса теперь используется только нижний регистр. Надписи вроде [Stance:1] работать больше не будут (нужно [stance:1] )
- В условие [modifier:X] добавлены еще несколько видов модифаеров. Это впрочем не очень интересно, впрочем все они должны писатся с большой буквы. Посетите форум кастомизации интерфейса для информации
- Все макросы отвечающие за "подъем" спеллов, оружия, спеллов петов и других макросов считаются "защищенными" во время боя.

Всем аддонописателям, если таковые у нас есть, следует подробнее ознакомится с изменениями, чтобы заранее подготовится к 2.2.0 . Изменения в основном включают изменения в работе с фреймами, впрочем они довольно серьезные чтобы аддоны пришлось поправлять.


Часто возникают случаи, когда вы часто используете одну и ту же последовательность заклинаний (например, открываете ротацию). Чтобы облегчить вам жизнь, была создана команда /castsequence. Она использует список заклинаний и предметов, разделенных запятыми. Каждый раз, когда вы используете макрос, он активирует текущее заклинание или предмет. Если вы успешно использовали заклинание, то макрос переходит к следующему. То есть вы должны последовательно нажимать кнопку макроса, чтобы активировать заклинания одно за другим. Как только было произнесено последнее заклинание, макрос снова переходит к началу списка. Например:

/castsequence Жертвенный огонь, Порча, Бич агонии, Похищение жизни

Спешу заметить, что если Жертвенный огонь не был произнесен по каким–либо причинам (нехватка маны, вне зоны действия, сайленс), то макрос останется на той же точке.

Перед списком заклинаний вы можете определить условия сброса последовательности, чтобы начать всё сначала. Базовый синтаксис следующий:

/castsequence reset=10/shift Заклинание 1, Другое заклинание, Любой предмет

Вы можете написать макрос, который будет использовать заклинания из двух разных наборов, которые должны использоваться вместе, но каждый отдельный набор не может быть использован одновременно с другим (например аксессуары с одним КД). Макрос примет следующий вид:

Читайте также: