среда, 30 марта 2011 г.

Макросы для чайников. Часть вторая

Продолжаю публикацию гайда по макросам комрада Душесоса. 

Душесос 18 окт 2010, 05:07


Повторение пройденного: примеры веселых небоевых макросов
/укус 
/крик Я сегодня злой!

Использует на цель эмоцию "укус" и кричит о том, что вы сегодня злой.

/s Не выспался...  /sleep

Сообщаем, что не выспались и засыпаем.

Как видите, я объединил две различные команды в один макрос и тем облегчил "отыгрыш". Уже фаново, но пока не очень полезно. Тем не менее, побалуйтесь с этим, такие простые макросы дают кучу понимания того, как вся эта бодяга работает. Напишите свой собственный макрос с эмоцией, с сообщением в гилдчат, в рейдчат, с криком. Потренируйте логику. Попробуйте объединить несколько эмоций в один макрос, посмотрите, что вышло.

(Для тех, кто не знает названия каналов, приведу очень кратко список команд, отправляющих сообщение в нужный чат, думаю, уже назрело:
/y - крикнуть
/s - сказать
/g - гильдия
/1 ... /n - номер чата (торговый, оборона, общий и т. д.)
/w <ник> - приватное сообщение
/p - чат группы, не работает, если вы не в группе
/ra - чат рейда, не работает, если вы не в рейде
/rw - объявление рейду, доступно тем, у кого есть ассист в рейде, сообщение выскакивает посередь экрана с характерным звуком)


(Обратите внимание, что команды можно использовать как русскоязычные, так и англоязычные. И даже можно смешивать их в одном макросе, от этого ничего не поломается. Чего не скажешь о названиях способностей, они должны быть написаны ровно так, как в вашей книге заклинаний. Это знание вам пригодится позже.)

II. Знакомство с Факерами.
Команды заклинаний.

Здесь мы познакомимся с основными командами, которые делают макросы столь полезными.

A) Встречайте: команда /cast, она же /закл.
Команда /cast позволяет выполнять заклинания по их именам из вашей книги заклинаний (или из книги заклинаний вашего питомца). Простейший пример использования я уже приводил:

/cast Гроза

То есть синтаксис прост: после команды вы пишете название заклинания, которое нужно произнести. Кнопка с таким макросом ведет себя полностью аналогично тому, как если бы вынесли на панель заклинание из своей книги.
"ЗАЧЕМ?!!!" - скажете вы. Если аналогично. И вот тут-то мы вспоминаем, что можем комбинировать в макросе несколько команд и все встает на свои места. Вот вам пример резкого "поумнения" заклинания за счет того, что мы положили его в макрос:
/cast Гнев деревьев  /p Ставлю в корни %t! Кто собъет, тот танк!

Этот макрос не только поставит в корни вашу цель, но и сообщит в чат группы, что вы сделали это. Вы предупредили, с вас взятки гладки.

(%t - это специальное обозначение вашей цели. Игра сама подставит на место этих символов имя цели и в чате появится что-то вроде "Ставлю в корни Смертокрыл! Кто собъет, тот танк!" другое такое специальное обозначение: %f - ваш фокус.)

Приведу сразу еще несколько аналогичных примеров оповещения товарищей:

/cast Возрождение  /rw Душесов кастит БР, цель %t, похильте и побафайте!
и

/закл Ритуал душ  /rа Помогите поднять унитаз


(Как я уже писал, команда /cast требовательна к написанию имени заклинания вплоть до больших букв, пробелов и двоеточий. Чтобы команда выполнила заклинание, необходимо правильно написать его имя, ровно как в книге. Лучший способ ввести имя заклинания - открыть книгу заклинаний во время написания макроса. Далее нужно поместить курсор в место, где нужно вставить заклинание, и зажав shift, кликнуть на заклинание в книге. Заклинание будет вставлено автоматически. Причем, сразу вместе с командой /закл, если дело происходит в новой строке. Это удобно, попробуйте.)

Думаю, вы поймали идею. Напишите макрос на свой шакл/овцу сами и едем дальше.

B) Другая, очень похожая на /cast команда - команда /use. Она применяется для использования предметов вашего инвентаря или экипировки. Синтаксис команды тот же:

/use Губительный клинок всадника  /s О! Тыкаффки...

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

А вот более полезный пример использования команды /use. Сова сорвала агро и, помимо "молиться на хила" хочет сделать что-то еще для своего спасения. В такой стиуации здорово одной кнопкой съесть локовский камень и врубить дубовую кожу:

/закл Дубовая кожа  /use Камень здоровья из скверны

Или нам сдали БЛ и надо бы заюзать триньку и выпить хастпот. Напишите такой макрос сами. ;)

(Важно упомянуть, что, в принципе, если вы напишете /cast Губительный клинок всадника, то игра разберется, что вы имели ввиду и корректно использует предмет. То есть, фактически, команда /use является избыточной, предметы можно "кастить" так же, как и заклинания. Это упрощает написание сложных макросов с точки зрения синтаксиса, но путает тех, кто их пишет, особенно на первых порах.

Вторая важная ремарка - если предмет должен быть экипирован для использования, а предмет лежит в сумке, то игра сообщит об этом и вы сможете информировано покусать локти, поскольку эффекта ожидаемого не получите.)


До сих пор я хитро обходил в макросах одно существенное ограничение, но дальше это не возможно. Настал момент вас с ним познакомить. Ограничение называется ГКД.
Большинство заклинаний вызывает глобальное время восстановления, в течение которого вы не сможете использовать другое заклинание. По этой причине наивно написанный макрос вида

/cast Рой насекомых  /cast Лунный огонь

удивит вас своим "неадекватным поведением". Рой насекомых скастится, а вот Лунный огонь - нет. И вы получите сообщение о том, что заклинание пока не может быть использовано. Это происходит потому, что макрос выполняется целиком и сразу, так что игра пытается запустить одновременно оба заклинания, но обламывается, поскольку ГКД не дает выполнить второй каст. По этой причине макросы, состоящие из нескольких заклинаний в столбик, не работают. Исключение составляют только заклинания, не вызывающие ГКД, такие как Горение души чернокнижников, Природная стремительность друидов и другие подобные "спецэффекты". Ну и использование предметов ГКД не подвержено, именно поэтому мы так вольготно объединяли камень и дубовую кожу в предыдущем примере.

То есть, еще раз:
Рабочий макрос -

/cast Природная стремительность  /cast Покровительство природы

Нерабочий макрос -
/cast Омоложение  /cast Покровительство природы


C) "Тю", - скажете вы, - "Я только разогнался, хотел сложить всю свою мега ротацию в одну кнопку, а тут такой облом..." Не переживайте. Ротацию в одну кнопку загнать все-таки можно (если еще есть классы, у которых есть "ротация"). Делается это специальной командой, которая вместо "столбика заклинаний" делает "строчку заклинаний". Знакомьтесь: /castsequence. Она позволяет выстроить "очередь" из заклинаний. При первом нажатии на кнопку макроса будет произнесено первое заклинание, при втором - второе, при третьем - третье... и так далее. Вот как это выглядит:
/castsequence Лунный огонь, Рой насекомых, Гнев

Опять же, простой синтаксис, после команды мы указываем через запятую те заклинания, которые должны составлять последовательность. Мы можем спамить эту кнопку, получая последовательно огонь, мух, гнев и снова огонь.

Приведенный пример глуп, вы не захотите иметь такую последовательность, вы захотите Гнев после Гнева до тех пор, пока не придет пора обновить огонь и мух. То же самое происходит со всеми классами. Разработчики сделали все для того, чтобы вы не могли спамить одну кнопку и респект им за это. Тем не менее, команда может иметь применение для соблюдения "открывающей последовательности" заклинаний, а еще она хороша в использовании более сложных конструкций, макросов типа "спаммбл", до которых мы когда-нибудь доберемся.

Так или иначе, вот пример вполне жизнеспособного использования команды "самой по себе" для совиного АоЕ (если у вас есть глиф на Тайфун)
/castsequence reset=combat Тайфун, Гроза, Гроза, Гроза

Что такое reset=combat? Это правильный вопрос. Дело в том, что если вы вышли из боя, КД на тайфун у вас откатился, а последовательность застряла где-то на второй Грозе. А вы хотите теперь Тайфун, он же откатился пока вы топали от пака к паку. Вот для того, чтобы сбрасывать последовательность в начало, и существует модификатор reset для данной команды.
Он вставляется между самой командой и перечнем заклинаний в последовательности и может иметь следующие значения (через символ "/" можно задать сразу несколько условий, любое из которых сбросит последовательность):
- reset=target - сброс последовательности при смене цели
- reset=combat - при выходе из боя
- reset=shift - при нажатии на кнопку макроса с зажатым shift
- reset=alt - то же для alt
- reset=ctrl - то же для ctrl
- resrt=n - число секунд. Если вы не жмете на кнопке n секунд, последовательность сбрасывается в начало.
То есть в самом общем случае команда выглядит так:

/castsequence reset=10/shift/target Заклинание, Другое заклинание, Шмотка, Тринька, Что-то еще

Да, в последовательность можно вставить использование предметов, поскольку, как я писал выше, использования предметов - такие же "заклинания" с точки зрения игры, как и заклинания в книге.

D) И для полноты картины познакомлю вас с еще одной командой, имеющей отношение к применению заклинаний. Это команда /castrandom. Она используется для применения случайного заклинания. Аналогичная ей команда - /userandom, использующая случайный предмет из списка. Единственное, сколько нибудь разумное использование команды, я вижу только в призыве случайного маунта, или питомца. Возможно, вы придумаете что-то более интересное и поделитесь со мной. Синтаксис такой же как у /castsequence, только список будет выполняться не последовательно, а случайным образом.
/castrandom Тундровый мамонт путешественника, Конь погибели, Небесный скакун, Большой кодо хмельного фестиваля

Собственно, этим команды для применения заклинаний и исчерпываются. Но далеко не исчерпываются возможности макросов. Пока переваривайте полученную информацию и балуйтесь, а в следующий раз я научу вас новым хитрым трюкам.



6 комментариев:

  1. Отлично, пока все общеизвестно, но все равно с нетерпением ждем продолжения. Может научишь наконец линковать профы в трейд? ;)

    ОтветитьУдалить
  2. Вот это я и сам не умею, может Душ умеет - он умный!

    ОтветитьУдалить
  3. /script CastSpellByName("Алхимия");
    SendChatMessage("Фласки: "..GetTradeSkillListLink(),"CHANNEL",nil,
    GetChannelName("Торговля: Город"));
    CloseTradeSkill();

    Это скриптовые команды, в моем гайде этого нет, ибо это несколько за рамками собственно макросописания, это уже почти программирование на LUA. Может быть, пока нет. :)

    Надеюсь, я правильно понял задачу.

    ОтветитьУдалить
  4. Вопрос)
    Как написать макрос, что бы перс крикнул и линканул предмет+ пару слов)
    Типо -рывок,во время рывка кричит - предмет(при нажатии показывает), да поможет мне в бою !!!
    Ну что-то вроде этого)

    ОтветитьУдалить
  5. А в чем проблема? Крик не вызывает ГКД, так что нет никакой проблемы -
    /абилка
    /крик (линк на предмет) да поможет мне
    Ну, линк вставить как обычно - шифт-клик вроде...

    ОтветитьУдалить
  6. А можешь сделать макрос, чтоб линковал в чат профу, но название в чате видилось не [Начертание], а тот текст, что ты ввел в макросе, например [Лучшие символы здесь]?

    ОтветитьУдалить

Related Posts Plugin for WordPress, Blogger...