Посібник з макросів
Бажаєте дізнатися відповідь на своє запитання якнайшвидше? Завітайте до каналу #russian на нашому Discord-сервері.
Скріншоти, що містять елементи інтерфейсу, за загальним правилом видаляються відразу. Це ж стосується і скріншотів, отриманих за допомогою переглядача моделей або вікна вибору персонажа.
Wowhead Client - Це невелика програма, за допомогою якої ми підтримуємо базу даних у актуальному стані. Користувачі Wowhead Client мають доступ до додаткових інструментів на сайті.
Дві основні цілі Wowhead Client:
Він встановлює та оновлює аддон Wowhead Looter, який збирає дані, поки ви граєте! Він завантажує зібрані дані Wowhead, допомагаючи підтримувати базу даних в актуальному стані!Ви також можете використовувати Wowhead Client, щоб переглядати вивчені рецепти, виконані завдання, зібрані їздові тварини та супутники та отримані звання!
Що таке макросів?
1. Частина 1: Основи макросів
1.1. Що таке макрос?
1.2. Як створити макрос?
1.3. Як використовувати заклинання?
1.3.1. Використання заклинань без перемикання
1.3.2. Зауваження про імена заклинань та їх рівні
1.4. Як використовувати предмети чи тринкети?
1.5. Множинні дії за одне клацання мишею
1.6. Призначення цілей та вибір об'єктів
1.6.1. /targer, /targetexact
1.6.2. Інші команди для прицілювання
1.6.2.5. /targetlastenemy, /targetlastfriend
1.6.2.6. /targetenemy, /targetfriend
1.6.2.7. /targetparty, /targetraid
1.7. Як керувати своїм вихованцем (pet)
1.7.3. /petpassive, /petdefensive, /petaggressive
1.7.4. /petautocaston, /petautocastoff, /petautocasttoggle
1.8.Управління реакцією у відповідь кнопок і знаком питання (?) за допомогою #show
1.9. Інші консольні команди
1.9.1. Одягання предметів
1.9.2. Послідовності заклинань та предметів
1.9.3. Випадкові заклинання та предмети
1.9.5. Маніпулювання панеллю дій
1.9.6. Видалення баффів
1.9.8. Переривання заклинань
1.9.9. Передчасне переривання макросів
1.9.11. Збереження цілей для подальших потреб
1.9.12. Симулювання натискання клавіш
1.10. Просунуті скрипти
1.10.1. Чого не можуть скрипти
1.10.2. Що таке скрипт?
Частина 1: Основи макросів
1.1. Що таке макрос?
Макрос це, простіше кажучи, список консольних команд. Я впевнений, що ви знайомі з деякими з них:
/say (/s)
/whisper (/w, /talk, /t)
/emote (/e, /em, /me)
/dance
І для вас ПВП-гравців, я не можу забути про /spit
З макросами, ми можемо не тільки використовувати команди як кнопки дій, але ми також можемо використовувати ці команди одночасно. Кожна з унікальних команд починається з нового рядка і пишеться так само, як і у вікні чату. Наприклад, якщо ви хотіли мати макрос, що вигукує "Танцюють всі!" і потім початківець ваш танець, ви би записали це так:
/y Танцюють всі!
/dance
Повний список консольних команд можна знайти за адресою http://www.wowwiki.com/List_of_Slash_Commands однак на даний момент деякі з команд, що додалися в патчі 2.0, ще не додані туди. WoWWiki, чудове джерело додаткової інформації про макроси, особливо за скриптами з використанням команди /run (про яку ми ще поговоримо далі).
Заздалегідь хочу помітити, що макроси завжди виконуються повністю.Це означає, що якщо ви натиснули кнопку, макрос виконує кожну команду від початку до кінця, перед тим як повернути контроль грі. Ця особливість має два важливі моменти. По-перше, якщо ви напишіть макрос, що вимагає тривалого виконання (наприклад, /run for i=1, 100000000 do end), гра повисне весь час, поки виконується макрос.
По-друге, і що ще важливіше, немає жодного способу дочекатися кінця макросу, не вішаючи гру. Цей факт стане очевиднішим, коли ми почнемо розбиратися з командою /cast і їй подібними. Деякі аддони можуть надавати спосіб відстроченого виконання команд, але вони можуть використовуватися лише у разі «щадних» функція на кшталт спілкування, емоцій та посилки команд іншим аддонам (хоча одягання зброї під час бою теж дозволено).
1.2. Як створити макрос?
Для початку відкрийте вікно макросів. Ви можете це зробити, відкривши основне меню і вибравши пункт Macros, або ж набравши команду /macro (/m) у вікні чату. У верхній частині вікна, ви бачите 2 закладки: General Macros (Загальні макроси) та Ваше ім'я Specific Macros (Спеціальні макроси для цього персонажа). Загальні макроси зберігаються окремо для кожного облікового запису і доступні всім вашим персонажам. Спеціальні макроси, виходячи з їхньої назви, доступні тільки тому персонажу, у профілі якого вони створені. Відразу під закладками знаходиться таблиця з 18 осередками, де відображаються макроси. Нижче панель, що відображає поточний вибраний макрос із кнопкою Change Name/Icon (Змінити Ім'я/Іконку). Ще нижче – поле для редагування, де ви, власне, і вводите макрос. І в самому кінці, можна побачити кнопки, які, певен, не вимагають роз'яснення.
Щоб створити макрос, натисніть кнопку New внизу вікна.Це призведе до появи іншого вікна, де можна вибрати іконку для нового макросу і ввести його ім'я. Якщо вибрати іконку зі знаком питання (?), WoW сам автоматично підбере іконку, відповідно до вмінь або предметів, що використовуються в цьому макросі. Коли ви вибрали іконку та ім'я для нового макросу, натисніть кнопку Okay.
Декілька зауважень: Ви можете керувати, яка іконка відображатиметься замість знака питання за допомогою команди #show. Хоча і допустимо називати макроси однаково, краще уникати таких ситуацій, оскільки функції аддонів або деякі макро-команди звертаються до макросів на ім'я, що може призвести до некоректної роботи однойменних макросів. Ви також можете додавати іконки користувача до списку (читайте Частину 3).
Ви напевно помітили, що іконка макросу, яку ви вибрали, додалася в таблицю з 18 осередків, про яку згадувалося раніше (ще на іконці відображається її ім'я - стільки символів, скільки міститься). Створений новий макрос буде автоматично обраний, так що саме час його записати. Клацніть на полі редагування та починайте вводити.
Примітка: Макрос не може бути довшим за 255 символів. Ходять чутки, це обмеження існує тому, що колись макроси зберігатимуться на сервері. Поки цього не сталося, читайте Частину 3, щоб дізнатися, як зберігати макроси на кількох комп'ютерах. Також існують аддони, що розширюють можливості зберігання макросів, використовуючи безпечні шаблони.
Коли закінчили вводити макрос, просто перетягніть іконку з таблиці і помістіть на вашу панель дій. Макрос автоматично зберігається в момент використання або коли закривається вікно макросів. Клацніть кнопкою, і вуа-ля готовий ваш макрос!
1.3.Як використовувати заклинання?
Під час природного ігрового процесу ви навряд чи вводите безліч консольних команд, настільки корисних, щоб написати з них макрос. Звичайно, іноді макроси для емоцій можуть зробити рольовий відіграш цікавішим, але все ж таки… Має бути щось більше, на що годяться макроси…
Так і є. Ознайомтеся з командою /cast – найчастіше використовуваною командою в макросах. Команда /cast дозволяє виконувати заклинання за їхніми іменами з вашої книги заклинань (або книги заклинань вашого вихованця). Найпростіший приклад:
/cast Shadow Word: Pain
Цей макрос прочитає на поточну мету заклинання Shadow Word: Pain найвищого рангу. Макрос поведеться також, якби ви перетягнули на це ж місце заклинання SW: P з вашої книги заклинань. Панель дій розпізнає код заклинання та покаже час кулдауна та діапазон дії на його іконці. Більше того, якщо ви вибрали як іконку питання, про що згадувалося раніше, панель дій навіть покаже іконку SW:P.
"Хм, хм ..." - подумаєте ви. Чому просто не покласти потрібне заклинання на панель дії? Ось тут, поєднання кількох команд буде дуже доречним, і це те, що робить макроси корисними. Уявіть, що ви маг і хотіли б повідомляти вашу партію, коли перетворюєте когось на вівцю. Нічого простіше - просто вставте ваше заклинання і повідомлення /p в макрос. Взагалі, існує і найкращий спосіб зробити макрос для цієї мети, як наприклад, мій аддон CCWarn (http://www.wowinterface.com/downloads/info6826-CCWarn.html), настільки безсовісним способом рекламується в цей момент. Але розуміння механізмів використання макросів – це простий і доступний приклад.
/cast Polymorph
/p Перетворюю на вівцю %t! Хто порушить, той танкує!
Зауваження: оскільки макрос виконується весь відразу, команда /p буде виконана під час початку читання заклинання, не дбаючи про те, чи вибрана коректна мета або заклинання Polymorph на кулдауна.
Це означає, що ці команди можна розмістити у будь-якому порядку, і результат буде однаковий. Якщо ж ви хочете сказати що-небудь після закінчення читання заклинання, вам буде потрібна допомога аддону, такого як AfterCast, http://www.wowinterface.com/downloads/info4167-AfterCast.html. AfterCast створює завдання на виконанні команд після того, як ви прочитаєте заклинання (з відомими умовами, про які йшлося в 1.1 Що таке макрос). Приклад:
/aftercast /p Click the portal для отримання %t's lazy butt over here
/cast Ritual of Summoning
1.3.1. Використання заклинань без перемикання
Як згадувалося вище, команда /cast поводиться так само, якби ви перетягнули потрібне заклинання на панель дій. Це означає, що вміння, що перемикаються, будуть включатися і вимикати щоразу при виконанні макросу. Якщо ви хочете, щоб макрос завжди включав заклинання, без перемикань, додайте знак вигуку (!) перед ім'ям заклинання. Ось приклад макросу, який намагатиметься активувати Auto Shot незалежно від того, стріляєте ви вже чи ні.
Використовуючи цю можливість та команду /castsequence (ми ще розповімо про неї докладніше), можна написати макрос для мисливців:
/castsequence reset=target Steady Shot, !Auto Shot
1.3.2. Зауваження про імена заклинань та їх рівні
Команда /cast дуже вимоглива до імені заклинання. Щоб вдало виконати заклинання, необхідно правильно написати його ім'я, правильно використовувати роздільники, прогалини тощо.Найкращий спосіб гарантовано ввести ім'я заклинання це відкрити книгу заклинань і вчасно написання макросу помістити курсор у місце де потрібно вставити заклинання, і затиснувши shift натиснути на заклинання в книзі. Заклинання та його ранг будуть правильно вставлені, як у наступному прикладі:
/cast Shadow Word: Pain(Rank 5)
Можна не ризикуючи видалити (Rank 5) з макросу, і тоді він автоматично вибере найвищий ранг заклинання – звичайно, якщо ви так забажаєте; але є достатньо ситуацій, коли виграшно використовувати певний ранг заклинання (наприклад, як особливе координування заклинання Banish у варлока). Але будьте обережні. Деякі заклинання з дужками у їхніх іменах вимагають особливої уваги. Ось приклад - якщо вставляти через shift-клик заклинання друїда Faerie Fire, то отримаємо таке:
/cast Faerie Fire (Feral)(Rank 2)
Якщо видалити кінцеве (Rank 2), внутрішні механізми заплутаються з частиною (Feral), подумавши, що це ранг заклинання і не спрацює. Щоб усе працювало, як треба, необхідно змінити макрос так:
/cast Faerie Fire (Feral)()
Порожні дужки обробляються як ранг, оскільки перебувають у кінці запису. І оскільки вони порожні, інтерпретатор команд вибере найвищий ранг заклинання для прочитання. Ви також можете використовувати інші заклинання з дужками, але пам'ятайте про обмеження в 255 символів. На жаль, розмір макросу досі проблема.
1.4. Як використовувати предмети чи тринкети
Просто: як і заклинання. Команда для використання об'єкта (як деякі могли здогадатися) це - /use. Як і у випадку з /cast, у найпростішій формі вона використовує як параметр ім'я предмета, який ви хочете використати.
/use Green Mechanostrider
Є ще інші форми використання команди /use:
Такий спосіб дозволяє використовувати предмет у потрібному осередку. Для повного списку номерів осередків дивіться http://www.wowwiki.com/InventorySlotId. Ось приклад:
Ця команда використовує тринкет із верхнього осередку.
Як видно, ця форма дозволяє використовувати предмет у потрібній комірці будь-якої сумки. Скажімо, ви зберігаєте їжу для вашого вихованця в першому осередку першої сумки. Тепер ви можете написати простий макрос для годування:
/cast Feed Pet
/use 0 1
Сумки пронумеровані від 0 до 4, починаючи зліва (незмінний рюкзак завжди має номер 0), комірки нумеруються починаючи з 1 зліва направо, зверху донизу (так само, як ви читаєте ці рядки).
1 2 3 4
5 6 7 8
…
або
1 2
3 4 5 6
7 8 9 10
…
Щоб уникнути плутанини, скажу вам, що команди /cast та /use це те саме. /cast може використовувати предмети, а /use може читати заклинання. Як можна було помітити, це не дуже корисно для простих макросів. Однак, коли ви почнете працювати з опціями макросів та їх послідовностями, ви будете задоволені можливістю змішувати заклинання та предмети однією командою.
1.5. Множинні дії за одне клацання мишею
У загальних випадках, ви не можете використовувати в макросах більше одного заклинання за натисканням мишки. Більшість заклинань та деякі предмети призводять до спрацьовування так званого глобального кулдауна (ГК), який не дає робити багато дій за один раз. Навіть якщо заклинання не буде виконано, воно призведе до спрацьовування глобального кулдауна і не дасть здійснитися наступним командам /cast у макросі. Це не було проблемою до патчу 2.0, тому можна зустріти досі макроси виду:
/cast Overpower
/cast Execute
/cast Mortal Strike
/cast Sunder Armor
Такі макроси не працюють.Як тільки Owerpower не спрацює, гра заблокує виконання всіх наступних заклинань, навіть незважаючи на те, що глобальний кулдаун не спрацював.
Але є й трохи добрих новин. Певні заклинання можуть виконуватися одночасно єдиним макросом. Всі миттєві заклинання, що не запускають ГК, можуть супроводжуватися іншим заклинанням («Next Melee» вміння на кшталт Heroic Strike також потрапляють до цієї категорії). Підказка при наведенні на заклинання, чи скаже воно миттєвим, але щоб дізнатися, чи спрацьовує ЦК, потрібно спочатку використовувати його і подивитися на результат. Ось приклад:
/use Talisman of Ephemeral Power
/cast Arcane Power
/cast Presence of Mind
/cast Pyroblast
1.6. Призначення цілей та вибір об'єктів
Прицілювання ще одна часто використовується можливість макросів. Досягається вона застосуванням спеціальних консольних команд, що змінюють вашу мету, або під час використання опції макросів [targer=], тих команд, які це допускають. Коли ви використовуєте макро-опції, ви дійсно читаєте заклинання по меті безпосередньо, без зміни поточної мети. Опції макросів ми розглянемо дуже детально в Частині 3. Зараз же повернемося до аналізу команд для прицілювання.
Найбільш проста команда прицілювання це /target. Використовувати її також просто:
/target вибирає мету за найближчим збігом, що означає - якщо я стоятиму біля вас, і ви виконаєте /target Cog, а поруч ні кого з таким ім'ям не виявиться, макрос вибере метою мене. Це може бути як плюсом, так і мінусом у конкретних ситуаціях. На жаль, ця команда також вибирає невідповідні цілі (на кшталт трупів). Це робить макроси з прицілюванням менш корисними, ніж здається.
/target Blackwing Mage
/cast Curse of Agony
Якщо поряд не виявиться цих Blackwing Mage, макрос може вибрати мету когось із вашого рейду, з літерами B та L в імені. Хоча вони і в безпеці від вашого прокляття, це все одно збиває з пантелику. Щоб виручити із таких ситуацій, патч 2.3 ввів команду /targetexact.
/targetexact Blackwing Mage
/cast Curse of Agony
Цей макрос буде працювати як і очікується, хоча метою може бути щось несуттєве за 100 ярдів від вас.
Крім імені мети, ви можете додавати також ID мети. ID мети це спосіб визначити конкретного персонажа, монстра, NPC тощо. Наприклад, ви можете звертатися до вашої поточної мети за ID «target» (зрозуміло, що це не найкорисніше для обговорюваної команди в цей момент). Ваш персонаж доступний за ID "player", а якщо у вас є вихованець - його ID "pet". Можна дописувати слово "target" в кінці будь-якого ID, щоб отримати мету, на яку прицілений цей ID. З цього приводу є жарт про Кевіна Бейкон, який зробив макрос:
Посилання http://www.wowwiki.com/UnitId містить список усіх дозволених ID цілей.
1.6.2. Інші команди для прицілювання
Ось короткий огляд інших команд для прицілювання:
Сама по собі, команда /assist встановлює за мету мету вашої мети (плутано, але сподіваюся зрозуміло). Якщо ви націлені на мене, а я націлений на Iriel, /assist переключить вашу ціль на Iriel. Можна також вказати ім'я цілі або ID для команди /assist, щоб змінити ціль на те, куди націлений вказаний у параметрах об'єкт:
/assist Cogwheel
Існує опція інтерфейсу, що автоматично перемикає вас в режим атаки, після зміни мети /assist.
/cleartarget
Скидає ціль.
/targetlasttarget
Ця команда має на меті вашу попередню мету. Якщо до цього у вас не було мети, нічого не станеться.
/targetlastenemy, /targetlastfriend
Ці команди діють схожим на команду /targetlasttarget чином, але вибирають метою останнього ворога або останню дружню мету.
/targetenemy, /targetfriend
Ці команди змінюють ціль на такі за їх типом. /targetenemy ідентично натискання кнопки TAB, а /targetfriend те саме, що натискання ctrl-TAB (при налаштуваннях клавіатури за замовчуванням). Можна також додати параметр «1», який перемикає цілі у зворотному порядку (як натискання shift-TAB у разі команди /targetenemy 1)
Примітка: ці команди можна використовувати в макросі лише один раз.
/targetparty, /targetraid
Переключення цілей по найближчих членах рейду чи партії. Як і /targetenemy, можна додавати до параметрів 1, щоб звернути порядок перемикання цілей.
1.7. Як керувати своїм вихованцем (pet)
Як було розказано у розділі про використання заклинань, можна використовувати вміння вашого вихованця за їхніми іменами за допомогою команди /cast. Одного разу, Blizzard були змушені змінити ім'я вміння елементалю у магів з Frost Nova на Freeze, оскільки неможливо було використовувати її в макросах. Кожен, хто має вихованець, знає, що це далеко не вичерпний список можливостей керувати своїм вихованцем. На щастя, низка патчів з виходом Burning Crusade внесла цілу купу команд для управління вихованцями:
/petattack
Посилає вашого вихованця у бій на вашу поточну мету. Можна в параметрах вказати ім'я цілі або її ID, і вихованець атакуватиме цю ціль.
/petfollow
Наказує вихованцю слідувати за вами, скасовуючи атаку якщо є необхідність.
/petpassive, /petdefensive, /petaggressive
Перемикає режим реагування у вашого вихованця, на кшталт кнопок на його панелі дій.
/petautocaston, /petautocastoff, /petautocasttoggle
Ці команди управляють автоматичним використанням умінь у вашого вихованця. Перша команда завжди включає авто-використання, друга завжди вимикає, третя – перемикає. Приклад:
1.8. Управління реакцією у відповідь кнопок і знаком питання (?) за допомогою #show
За умовчанням, WoW використовує перше заклинання або предмет, що використовується в макросі, для відображення кулдауна, радіусу дії або доступності цієї кнопки, а також для вибору іконки, якщо ви використовували питання під час створення макросу. Візьмемо наш макрос із багатьма заклинаннями, наведений раніше:
/use Talisman of Ephemeral Power
/cast Arcane Power
/cast Presence of Mind
/cast Pyroblast
У разі цього макросу WoW вибирає Arcane Power для відображення даних про макрос. Насправді це навряд чи те, що вам потрібно. Ключовою точкою цього заклинання є виконання Pyroblast. Перші рядки існують як прелюдія, щоб зробити Pyroblast більш ефективним. Щоб кнопка з макросом виглядала і поводилася як перше заклинання Pyroblast, потрібно додати на початку макросу наступний рядок:
Якщо ви використовували знак питання в якості іконки макросу, кнопка набуде вигляду Pyroblast без будь-яких ваших зусиль. Параметри для #show (у нашому випадку Pyroblast) працюють так само, як команди /cast та /use. Можна використовувати ім'я заклинання, ім'я предмета, ID предмета (item:12345), комірку інвентарю, або сумку та номер комірки в ній.
Схожою на #show є опція #showtooltip. Зазвичай, коли ви наводите мишечку поверх макросу на панелі дій, підказка відображає ім'я цього макросу. Користування від цього мало (особливо, якщо використовувати аддон TheoryCraft, що дає детальну інформацію в підказках про заклинання).#showtooltip дозволяє призначити заклинання, яке відображатиметься у вигляді підказки при наведенні на макрос, як і з опцією #show. Якщо ви використовуєте #showtooltip, немає потреби використовувати #show.
Якщо ви задоволені тим заклинанням, яке вибрав WoW для відображення до макросу, можна використовувати #showtooltip без параметрів, щоб заощадити трохи місця. WoW відображатиме заклинання/предмет, що він підібрав для макросу, але ще й показуватиме підказку для нього.
Прошу помітити: на відміну від консольних команд, #show і #showtooltip повинні бути обов'язково написані в нижньому буквеному регістрі.
1.9. Інші консольні команди
Тепер, коли ви отримали основний базис знань, я хотів би стисло розглянути інші консольні команди, доступні для ваших потреб. Деякі з них можуть здатися дещо безглуздими на перший погляд, але коли ви скомбінуєте їх з макро-опціями описаних у Частині 2, можна буде робити багато цікавих фінтів.
1.9.1. Одягання предметів
Існує дві команди для одягання предметів: /equip та /equipslot. /equip просто використовує ім'я предмета і одягає його в слот за замовчуванням, начебто ви клацнули по предмету правою кнопкою у вашій сумці (тобто одноручна зброя буде одягнена в основну руку). /equipslot використовує в параметрі ID комірки (для подробиць читай (http://www.wowwiki.com/InventorySlotId) та ім'я предмета та одягає його у вказану комірку. Приклади:
Одягає зброю в комірку за замовчуванням:
/equip Honed Voidaxe
Одягає тринкет у нижній тринкет-слот:
/equipslot 14 Carrot on a Stick
Примітка: Аддони можуть використовувати функціонал з одягання предметів безпосередньо навіть під час бою.Той самий механізм доступний для команд одягання з використанням аддонів на зразок AfterCast або Chronos Якщо аддон спершу перевіряє безпеку команди, у вас можуть виникнути проблеми;
1.9.2. Послідовності заклинань та предметів.
Багато разів ви будете використовувати серії заклинань або якихось предметів у визначеному порядку практично на кожному монстрі, з якими будете вести бій. . Тут використовуються ті ж правила, що і при /cast і /use. комбінації назв заклинань, імен предметів, осередків сумок та інвентарю Кожний раз, виконуючи макрос, він активує поточний предмет або заклинання. .Коли макрос досягне останньої позиції у списку, він почне виконувати послідовність спочатку.
/castsequence Immolate, Corruption, Curse of Agony, Siphon Life
Цей макрос може використовувати варлоками в якості відчиняючої атаки. Зауважте, якщо Immolate не спрацює з якоїсь причини (немає мани, поза діапазоном дії, ви заглушені і так далі), послідовність залишиться в цій точці. використовувати /castsequence для спаму подібного макросу:
/castsequence Overpower, Execute, Mortal Strike
Перед списком заклинань, можна також вказувати умову для скидання, послідовність, що починає, до того як воно досягне кінця.Загальний синтаксис для умов скидання наступний:
Де n – число секунд. Ви можете вказувати будь-яку кількість умов, розділених косими рисами «/». Секунди використовуються як таймаут для команди. Щоразу під час виконання послідовність скидає таймер. Якщо макрос був використаний вами протягом заданого часу, послідовність почнеться заново. Це дуже важлива відмінність, тому що таймер скидання неможливо використовувати, щоб підрахувати час кулдаунів. target скидає послідовність при зміні цілей; combat – якщо ви виходите з режиму бою; shift, alt та crtl – скидають, якщо ви активуєте макрос із затисканням однієї з цих кнопок. Приклад:
/castsequence reset=10/shift Spell 1, Інші Spell, Some Item
Якщо використовувати знак питання як іконку макросу, WoW автоматично змінюватиме її відповідно до поточного елемента послідовності. Якщо перед /castsequence вставити команди /cast або /use, вони конфліктуватимуть і на даний момент немає способу звернути увагу WoW саме на послідовність.
1.9.3. Випадкові заклинання та предмети
Одним із найчастіших запитів на цьому форумі – макрос, який використовує випадковий маунт. Це дуже просто, завдяки доданим командам /castrandom та /userandom. Як і у випадку /castsequence, /castrandom та /userandom використовує у параметрах список заклинань та/або предметів, розділених комами та вибирає випадковий елемент зі списку при виконанні команди. Приклад:
/castrandom Swift Green Mechanostrider, Black Battlestrider, Summon Dreadsteed
Є дві команди, що спеціально існують для атаки за метою: /startattack і /stopattack, що починає або припиняє атаку. Команда /startattack також використовує параметр як імені або ID для атаки заданої мети. Приклад:
Якщо потрібен макрос, який поводиться так само, як і вміння Attack (тобто перемикає атаку, а не тільки початківець або припиняє її), можна робити це так:
1.9.5. Маніпулювання панеллю дій
Є дві команди, що дозволяють перемикати сторінки панелі дій: /changeactionbar та /swapactionbar. /changeactionbar використовує параметр одне число і завжди перемикає панель на цю сторінку. Одним із можливих застосувань – емуляція позицій-стансів (stances) у хантерів, за рахунок пари макросів виду:
/cast Aspect of the Hawk
/changeactionbar 1
/cast Aspect of the Monkey
/changeactionbar 2
/swapactionbar використовує параметрами два номери сторінок і перемикає між ними під час кожного виконання. Якщо у вас активна інша сторінка панелі дій, команда змінить її на першу із двох.
1.9.6. Видалення баффів
Команда / cancelaura дозволяє видаляти непотрібні баффи. Наприклад, так може знімати бафф у макросі за допомогою такої команди:
/Cancelaura Blessing of Salvation
За винятком воїнів, будь-який клас зі стансами (stances) (друїди, присти з Shadowform та інші) можуть використовувати команду /cancelform щоб виходити з поточної форми. Отже, можна робити щось на кшталт:
/cancelform
/use Super Healing Potion
1.9.8. Переривання заклинань
/stopcasting, як можна здогадатися, використовується для переривання заклинання під час його використання. Це корисно для створення макросу скасування, що перериває будь-які дії, які ви виконуєте в даний момент, для чогось більш важливого. Мій варлок, наприклад, користується таким макросом:
/stopcasting
/cast Shadowburn
1.9.10. Передчасне переривання макросів
/stopmacro одна з тих команд, марних власними силами, за винятком тих випадків коли використовується разом із опціями макросами.Її основне використання – створення «провальної» логіки, що запобігає виконанню макросу при спрацьовуванні певних умов. Для прикладу дивіться розділ "Використання фокусу" в кінці Частини 2.
Ну що тут ще сказати…
1.9.12. Збереження цілей для подальших потреб
Команда /focus дозволяє зберігати ціль, щоб повернутися до неї пізніше. Наприклад, скажімо ваш лідер рейду дає вказівку перетворити мету на вівцю. Насамперед, виберіть монстра, і введіть /focus. Тепер скористайтесь макросом, щоб прочитати заклинання на фокусну ціль.
/target focus
/cast Polymorph
/targetlasttarget
Зауважу, що це не найефективніший спосіб використати можливості фокусу. Читайте «Використання фокусу» в Частині 2 для більш глибокого аналізу цієї механіки.
1.9.13. Симуляція натискання кнопок
Команда /click бере назву кнопки і діє так само, як якщо ви натиснули цю кнопку мишкою. За умовчанням вона поводиться як ліве клацання, але можна вказувати команді інші кнопки. Є кілька способів визначити ім'я елемента, що вас цікавить:
Ви можете скористатися аддоном. Деякі аддони, включаючи MoveAnything, показують ім'я елемента під курсором миші.
Можна переглянути програмний код UI для потрібного елемента. Це підходить людям, які знаються на програмуванні аддонів.
Можна призначити на клавішу наступний макрос та активувати його під час наведення курсору мишки на потрібний елемент:
/run local f = GetMouseFocus(); if f then DEFAULT_CHAT_FRAME:AddMessage(f:GetName()) end
/click можна застосовувати у багатьох випадках. Ви можете пов'язувати численні макроси за допомогою симуляції клацань миші за іншими макросами. Наприклад, у вас є досить довгий макрос, довший за обмеження в 255 символів.Помістіть скільки влізе в перший макрос, дописавши наприкінці наступний рядок
Решту коду помістіть у новий макрос, який потім вставте в MultiBarRightButton1 (перша кнопка правої вертикальної панелі дій).
Можна робити такі речі, які зазвичай не доступні в макросах або вимагають складних скриптів на Lua. Ось приклад макросу, який автоматично викуповує та підтверджує викуп на лоті аукціону (переконайтеся, що вибрали потрібний лот; усі випадково невірні покупки будуть на вашому совісті):
/click BrowseBuyoutButton
/click StaticPopup1Button1
Вершина використання – це складні розгалуження за допомогою /click, які будуть розглянуті у Частині 2.
1.10. Просунуті скрипти
1.10.1. Чого не можуть скрипти
Скрипти дуже потужний інструмент, що дозволяє приймати складні рішення на основі якихось критеріїв. Через цю міць, Blizzard обмежив тип дозволених речей, щоб заборонити макросам та аддонам виконувати дії, які має виконувати сам гравець. Я починаю цей розділ з обмежень, щоб у вас не було невиправданих надій. Хоча скрипти корисні багато в чому, ви не можете використовувати їх, щоб читати заклинання, застосовувати предмети, змінювати сторінки панелей дій або впливати на вашу мету. Ви обмежені набором безпечних команд, вже описаних нами вище.
1.10.2. Що таке скрипт?
WoW UI контролюється кодом написаним скриптовою мовою Lua. Можна скористатися перевагою скриптової системи в макросах за допомогою команди /run або /script (але /run дозволяє заощадити пару символів). Весь скрипт повинен бути в одному рядку, але можна мати безліч команд /run в одному макросі.
Повний курс Lua та програмування, безумовно, поза цим керівництвом.
Blizzard надає безліч функцій (звані API), які можуть використовувати Lua скрипти, щоб контролювати UI. Ви можете переглянути API та інші можливості системи UI за посиланням http://www.wowwiki.com/Interface_Customization (якщо ви почнете писати скрипти та аддони, то виявите WoWWiki незамінним ресурсом у цій справі). Я не можу відкрити вам всі деталі оточення UI, тому просто наведу приклад одного з моїх улюблених скриптів.
Наступний макрос (його я поклав в основу мого аддона CCWarn), прошепче всім у вашому рейді прохання змінити ціль, якщо вона збігається з вашою. Це допоможе їм уникнути збивання з монстра стану вівці, що накладає цей макрос.
/cast Polymorph
/run for i=1,GetNumRaidMembers()-1 до місцевого u,t="raid". ,"WHISPER",nil,UnitName(u))end end
Є дві причини, через які все виглядає вкрай заплутаним. Перша – обмеження 255 символів; вам часто доведеться «зрізати кути» щоб засунути ваш макрос у цю межу. Друга – необхідно щоб весь скрипт знаходився на одному рядку. За більш ідеальних умов цей скрипт міг би виглядати так:
for i = 1, GetNumRaidMembers() - 1 do
if UnitIsUnit(unit..”target”, “target”) then
SendChatMessage("Change targets! Trying to sheep...", "WHISPER", nil, UnitName(unit))
