что такое скрипты в вов
Click-wow.ru
Наверняка многие игроки не раз сталкивались с необходимостью выполнять множество однообразных действий в игре. Давайте подумаем, что можно с этим сделать.
На самом деле разработчики это предусмотрели и добавили в игровой движок возможность избавиться от такого рода работы, для этого нужно использовать скрипты для wow. Проблема в том, что не все игроки знают об этом, в данной статье мне хотелось бы рассказать о наиболее популярных скриптах для wow.
Список скриптов для wow
Первым таким подарком от разработчиков является скрипт, который поможет обменять абсолютно любое количество баджей в один клик. Итак приступим.
Создайте макрос (команда /macro ) и впишите туда следующее (без кавычек):
» /script local function buy (n,q) for i=1,100 do if n==GetMerchantItemInfo(i) then BuyMerchantItem(i,q) end end end buy («Emblem of Heroism»,140) «
В последних скобочках мы вписываем название вашей эмблемки и количество без ошибок, язык эмблемки зависит от того, какой у вас клиент.
2) Сломался рекаунт? Он больше не отображает правильную информацию про ДПС и ХПс? Рекаунт одним словом работает не правильно? Скрипт для ремонта рекаунта ниже.
По схеме описанной выше сделайте новый макрос. Напоминаю, что макросы из общего списка макросов (тавтология во как) можно вытаскивать на панельки, это очень удобно. Пишем без кавычек.
3) Скрипт на добавление игроков в гильдию. Не нужно им злоупотреблять.
» /script n=GetNumWhoResults(); i=1; while(i «
4) Существует необходимость линкануть предмет в макрос?
5) Скрипт на выход из группы
6) Полная перезагрузка интерфейса без релога
7) Скрипт для отдаления камеры от персонажа или его ездового (летающего) животного.
» /console cameraDistanceMaxFactor 3.4 «
Оговорюсь, но его нужно использовать вновь после релога или входа в игру.
8) Скрипт для отмены дуэли вов:
9) На пиратках часто бывает так, после того, как вы стали призраком, подбегаете к телу а реснуться нельзя, этот скрипт должен помочь.
11) Не редко может помочь хилу на арене. Берем напарника в таргет.
» /target «имя» (без кавычек)
12) Выбор цели цели.
Так же макросы могут помочь и в управлении петами ваших персонажей.
13) Наиболее популярные команды для петов.
а) Ваш пет атакует ваш таргет.
б) Пет просто бегает за вами.
в) Ваш пет застынет на месте и не будет ничего делать
г) Бывают ситуации, когда панель управления питомцем пропадает, в частности я сталкивался с этим во время игры за своего варлока и ДК. Исправить это можно скриптом ниже.
14) А этот скрипт автоматически изучает все недостающие спеллы у тренера.
/ run LoadAddOn»Blizzard_TrainerUI» f=ClassTrainerTrainButton f.e = 0 if f:GetScript»OnUpdate» then f:SetScript(«OnUpdate», nil)else f:SetScript(«OnUpdate», function(f,e) f.e=f.e+e if f.e>.01 then f.e=0 f:Click() end end)end
15) Довольно-таки забавный макрос, часто им пользовался. Если у вас есть множество маунтов и хочется внести в игру разнообразие вписываем в начале макроса команду, а затем перечисляем маунтов (заклинаний, вещей). Теперь вы тоже знаете макрос на вызов случайного маунта.
16) Макрос Спешиваться.
17) Кастует спелл, указанный в макросе. Например:
/target SolBadGuy
/castsequence reset=5 Молитва духа, Молитва стойкости, Молитва защита от темной магии.
19) Возвращаем себе первоначальный облик. Неважно кто вы дру, шп, вар или еще кто-нибудь.
World of Warcraft: одна строка кода, чтобы потерять все
Интерфейс WoW (например, строка меню, окно чата и другие 2D графические элементы) и также дополнения написаны на языке Lua. Обе стороны строки — RemoveExtraSpaces и также RunScript — легальные функции и часть WoW Lua API. Но введение этой строки кода в диалоговом окне изменяет поведение интерфейса WoW.
Что делает эта команда на самом деле?
/run — команда для интерпретации следующего текста как сценария Lua.
RemoveExtraSpaces — встроенная функция, которая удаляет ненужные пробелы из текста.
RunScript — функция, которая выполняет текст в качестве кода Lua (аналогично команде /run )
Чем это опасно?
Неосторожный игрок вводит в своем диалоговом окне вредоносную строку кода, потому что его убедили слова нападавшего. Но вместо того, чтобы получить редкие предметы, он становится жертвой.
Ничего не подозревающий игрок собирается отправить вредоносную строку кода
Злоумышленник отправляет сообщение в чате жертве
Полученное сообщение интерпретируется как Lua код и затем выполняется
То, что было показано выше, является довольно безвредным примером этой уязвимости, доказательства концепции. Но на самом деле — это означает, что злоумышленник теперь может удаленно контролировать интерфейс жертвы. Это очень похоже на поведение троянов, которые изображают из себя что-то полезное и затем выполняют свою вредоносную функцию. В реальном случае, вместо того, чтобы создавать сообщения с текстом «Test», злоумышленники запускает другой сценарий, пример которого будет приведен ниже.
Временное скрытие и сохранение команды
После того как жертва открыла бэкдор в свой интерфейс, злоумышленник отправляет следующее сообщение:
Атакующий устанавливает новый канал передачи данных
В случае, если команда была выполнена, сообщение, которое показано выше, не будет видно жертве, но будет выполнено немедленно. Тот факт, что функция чата больше не работает может показаться подозрительным и жертва, возможно, попробует перезапустить игру. Злоумышленник действует достаточно быстро, чтобы решить эту проблему. Отправив команду, показанную выше, которая устанавливает новый канал связи, они снова восстанавливают нормальную работу чата не вызывая подозрений.
Для того, чтобы понять цель этой команды, нужно знать что в WoW есть возможность общаться с помощью скрытого канала (локально и удаленно). Этот канал установлен через использование событий “CHAT_MSG_ADDON”.
Сценарий создает фрейм (строка 2), к которому можно установить различные свойства. Сценарий регистрирует события CHAT_MSG_ADDON с конкретным префиксом (строка 6 и 25). Только тот, кто знает выбранный префикс, может тайно управлять интерфейсом жертвы. Это все равно что пароль для бэкдор.
Каждый раз, когда угнанный интерфейс получает CHAT_MSG_ADDON, событие с секретным префиксом, код будет выполняться тихо и без ведома жертвы.
Вывод: пока злоумышленник не решит Вам показать, что происходит, Вы, к сожалению, про это не узнаете.
Даже при том, что речь идет о дополнениях, которые могут связаться через скрытый канал, у жертвы не обязательно должны быть установлены дополнения, чтобы атаки прошла успешно.
Какой вред может быть причинен?
В виду того, что злоумышленник будет иметь полный доступ к интерфейсу жертвы, он может собрать полную информацию про него. Но взломщик не сможет собрать какую-либо подробную информацию о других игроках. В WoW игроки имеют возможность делится/продавать предметы друг другу. Если злоумышленник знает местонахождение персонажа жертвы и находится в пределах досягаемости, он может удаленно открыть окно торговли и передать себе золото, предметы и все, что можно передать. Практически ограбить жертву.
Описанный сценарий демонстрирует социальную атаку на ряду с технической. Теперь хакер может с помощью жертвы отправлять убедительные сообщение ее друзьям, коллегам и другим игрокам, с которыми тесно общается персонаж, тем самым увеличивая количество захваченных персонажей.
Как можно себя защитить?
Ответ простой и очевидный: не нужно вводить такого рода команду или любую другую, которая будет предложена даже Вам давнишним другом.
В данном примере мы говорили об атакующем персонаже в игре, кто принадлежал к популярной гильдии. Но по факту он не принадлежал к этой гильдии. Он выбрал известную гильдию и скопировал имя, заменив “L” на “I”. Возможно, Вы уже знакомы с такими методом фишинг-атак.
Кроме того, будьте осторожны при загрузке дополнений используйте защищенные и популярные веб-сайты, сохраните свои дополнения, чтобы их можно было в любой момент заменить. Возможно, что некоторые из этих обновлений могут уже содержать вредоносный код. Подобная проблема была замечена в 2014, когда так называемый “ElvUI Backdoor” был обнаружен в одном из дополнений.
Сам глюк может быть исправлено только Blizzard. Они должны убедиться, что перезапись такой функции будет невозможен в дальнейшем. Blizzard уже выпустили предварительный релиз для предстоящего дополнения «Legion». В данном дополнении они учли обсуждаемый тут сценарий и добавили предупреждение перед отправкой сообщения, которое содержит вредоносный характер.
Выбор “Yes” отключает сообщение навсегда, даже перезапуск не вернет его – по этой причине вопрос нельзя считать решенным. Чтобы повторно активировать данное сообщение, нужно вручную удалить одну строку кода в конфиг-файле.
Что такое скрипты в вов
Код помещаем в аддон BindBP. Открывается он по слеш команде /bp, далее кликаем по крестику, задаём имя и иконку, нажимаем «ок» и у нас появится основное окно в которое нужно вписывать скрипт. Для последующего редактирования нужно будет кликать левой клавишей мышки по иконке «макроса» т.к. правая задаёт бинд. Бинд на скрипт во избежание «палева» лучше не ставить т.к. всё содержимое улетит в чат.
Запускать нужно 1 раз, вошли в игру запустили и забыли до тех пор, пока не перезагрузите интерфейс /reload или релогнитесь.
Не даёт использовать Хватку Смерти в Тотем Заземления и Отражение заклинания. Если на цели есть данные бафы то используется спел Темная власть, который сбивает данные бафы.
/run if (not UnitBuff(«target», «Отражение заклинания»)) and (not UnitBuff(«target», «Эффект тотема заземления»)) then RunMacroText(«/cast Хватка смерти») end
/run if UnitBuff(«target», «Отражение заклинания») or UnitBuff(«target», «Эффект тотема заземления») then RunMacroText(«/cast Темная власть») end
Для Ледяных оков
/run if (not UnitBuff(«target», «Эффект тотема заземления»)) and (not UnitBuff(«target», «Отражение заклинания»)) then RunMacroText(«/cast Ледяные оковы»)end
/run if UnitBuff(«target», «Эффект тотема заземления») or (UnitBuff(«target», «Отражение заклинания»)) then RunMacroText(«/cast Темная власть»)end
Для Лика смерти
/run if (not UnitBuff(«target», «Эффект тотема заземления»)) and (not UnitBuff(«target», «Отражение заклинания»)) then RunMacroText(«/cast Лик смерти») end
/run if UnitBuff(«target»,»Отражение заклинания») or UnitBuff(«target»,»Эффект тотема заземления») then RunMacroText(«/cast Темная власть») end
PS: Я никому не навязываю использование запрещенный скриптов и макросов. Я понимаю что в некоторых ситуациях они только усугубят положение. Я понимаю что руки главное и ничто их не заменит.
Играл на пиратке, был интерес. Результат тут. Надеюсь это кого-то заинтересует и он сделает большее хотя бы для себя.
PPS: Данная информация составлена мной(DiSq) и использовалась на клиенте 3.3.5
Создаем скрипт автокик+авторотация для WoW, без программирования
В этой статье я расскажу как создать простой миничит, который будет кикать хила на арене, поддерживать дебафы на цели и проводить ротацию. Для этого вам не понадобится учить языки программирования, а описанное в статье вы сможете использовать в других играх.
Чего в этой статье нет: программирования, инжектов, работы с памятью.
Что в ней есть: картинки и примеры.
Скрипты\читы получают из игры информацию о состоянии (condition) и исходя из нее совершают действие (action). «Взрослые» читы читают кондишн из памяти игры и обеспечивают функционал, недоступный человеку. Для этого надо написать “инжект”, который обойдет защиту.
Нам это не подходит, будем брать кондишен из wowAPI (https://wowwiki.fandom.com/wiki/World_of_Warcraft_API) с которым работает интерфейс близард и аддоны. Идеальным вариантом было бы написать свой аддон, но в этой статье нет программирования, поэтому воспользуемся аддоном «викаура», предназначенным для отображения на экране статуса умений\бафов (и не только). Он будет обеспечивать сбор кондишена из игры.
За экшн будет отвечать программа AutoHotkey, позволяющая делать как простые скриптики, так и целые программы.
Осталось обеспечить передачу информации из аддона в автохоткей максимально простым способом. Со стороны аддона мы используем его прямой функционал, заставим его мигать цветными квадратиками, а со стороны автохоткея — воспользуемся функцией «PixelGetColor» которая определяет цвет нужного пикселя.
В качестве примера будем юзать безымянного охотника в специализации выживание. Охотник выбран не случайно, он обладает одним дебафом (ядом), киком, и короткой ротацией из двух скилов. Но поверьте, этим скриптом вы сможете реализовать любой класс, даже пальцеломателя энхшамана.
Настроим передачу информации из вова в скрипт, сделаем в викауре черный фон для наших сигналов.
1. Название текстуры tiktok (это зеленый квадрат цвета 0x00FF00)
2. По умолчанию текстура создается немного прозрачной, поэтому переходим в «цвет» и вытягиваем ползунок вверх делая ее непрозрачной. А цвет выставляем черный.
3. Режим отображения — «непрозрачность».
4. Ширина 5 и высота 100 сделана для наглядности и удобства, освоившись вы сможете сделать ее черточкой 1х3 пикселя которую никто не увидит на стриме.
Добавим еще одну текстуру, по которой скрипт будет определять что у нас в таргете враг. Создаем текстуру tiktok размером 5х5, цвет оставляем по умолчанию (зеленый). Объединяем фон и текстуру триггера енеми в одну группу.
Настраиваем наш трекер на отображение только когда в таргете енеми. В закладке «триггер» выставляем тип=статус, характеристика единицы, единица=цель, отмечаем галочкой «можно атаковать».
Весь скрипт будет состоять только из одной многократно повторяющийся функции PixelGetColor.
Пишем (скрипт пишется в обычный текстовый файл, только после сохранения смените ему разрешение на *.ahk) основную часть скрипта и сразу добавляем в него атаку петом установленную на «7» по триггеру енеми.
В координатах вставляем корды примерно середины нашей зеленой текстуры с триггером таргета, чтобы их узнать воспользуемся простеньким скриптом (запишите его в отдельный файл *.ahk). При нажатии «1» скрипт выдаст нам окно с координатами указателя и цветом пикселя
Теперь создадим текстуру, которая будет сообщать что на цели нет яда. Делаем такой же 5х5 tiktok выставляем его ниже нашей текстуры таргета. Заюзаем сразу 3 триггера
1. «аура-цель-дебаф» название дебафа или по id. Выставляем галочку «только свое» чтобы не тригерилось от чужих.
Обратите внимание на то, что отравленная стрела записана в тело функции таргета енеми, сначала скрипт убедится что в таргете враг, потом пошлет в атаку питомца (после неё нет return поэтому скрипт продолжит выполнение) и, убедившись, что на цели нет яда, выстрелит отравленной стрелой.
В текстуре для нашего филлера добавляем триггер по энергии как и в предыдущих, и больше ничего (так как скил не имеет кулдауна).
Добавим в скрипт пиксельсерчи для наших скилов в ротации:
Делать мы будем это через функцию фокуса https://wow.gamepedia.com/Focus_target потому что хилы на арене в 90% фокусы. Цель и фокус это разные вещи в вове.
Создаем в вове внутриигровой макрос «/cast [target= focus] Намордник» и выставляем его на панель.
В списке добавляем 2 триггера текстуры, указываем в них
1. «статус-применение заклинания-фокус» тип каста+прерываемый. Теперь текстурка будет гореть когда фокус кастует что-то. Вы также можете указать списки заклинаний и добавить туда только хилы.
Добавляем блок кика в скрипт в самый верх первым по порядку после таргета, но убедитесь что в теле кика нет «return», так как у киков нет гкд и вместе с ними одновременно можно заюзать следующий скил.
Выкладываю свой пример скрипта + готовую настройку для викауры под него. Изучайте и дорабатывайте.
Код для импорта в викауру:
Готовый скрипт настроенный под викауру выше.
В результате буквально за вечер у вас должен получится скрипт, которые прожимает идеальную ротацию поражая ваших согильдийцев в рейде, и ещё и кикает хилов на арене. Читы с таким же функционалом продаются по 15долларов\мес.
Сфера применения ограничивается вашей фантазией. Это очень простой скриптик, который позволит вам облегчить почти любую игру. Создать себе автофласк в ПОЕ, или заставить ЕЕшку в л2 бегать за вами заливать ману лечить и бафать.
Тема: Макросы/скрипты для WoW
Опции темы
Отображение
Отмена очереди заклинаний (Добавлено в 4.1)
Начиная с катаклизма, в wow внедрена система, которая компенсирует задержку между применением заклинаний. Предположим, GCD 1,5 сек. Если заспамить заклинание за 0,1-0,5 сек до его отката, то оно будет произноситься автоматически после завершения первого. Следующий макрос отменяет автоприменение при спаме, либо высокой задержке.
Перезагрузка интерфейса. Из игры не выходит. Во время перезагрузки вы находитесь в игровом мире!
Включает режим «Отошел от клавиатуры» — все люди, вам написавшие, будут уведомлены об этом соответствующей фразой. Например: /afk Ушел курить.
У макроса снизу принцип работы тот же, только включает режим «Не беспокоить».
Если у вас пропала панелька умений для питомцев, то этот скрипт для вас. Охотникам этот скрипт не подходит, только Чернокнижники и Рыцари Смерти (актуально для FUN реалма):
Макрос на автоматическое изучение профессий/обучение у тренера.
Для отмены /reload, перезайти или повторно ввести макрос:
Макрос на подтверждение сбора добычи/покупки (Нажатие кнопки «Да»). Тут аддон для автоматического принятия лута.
Использование предметов и аксессуаров.
Рисунок
Макросы на воскрешение.
Достает дух из тела, если кнопка «Покинуть тело» не активна (Выручает в 99% случаев).
Берет в цель юнит с точно указанным именем. Если имя написано неверно или юнит далеко от вас, то ваша цель не изменится.
Макрос на смену комплекта экипировки.
Манипуляции с панелями заклинаний
Существует две команды, которые позволяют изменять страницы панелей заклинаний: /changeactionbar и /swapactionbar. /changeactionbar использует в качестве значения одно число и всегда переключается на страницу с этим номером. Примером использования может быть аспекты охотника. Например:
Другое
Включает звуковые + текстовые сообщения об ошибках.
Макрос для удаления вещей белого качества.
Макрос для удаления вещей зеленого качества. Принцип такой же, что и у макроса выше.
Макрос на удаление определенных вещей. Удаляет из сумок определенный предмет.
Макрос для покупки реагентов и прочего. Как работает?! Подходим к нужному вендору, открываем страницу, где находится нужная покупка и активируем макрос. В кавычках вводить можно любой итем: Первобытный дух, Фолиант ясного разума и т.д., затем сразу же количество, в нашем случае это 10.
Отключение слежения за персонажем на которого направлено ваше потоковое заклинание:
На простом примере. Используем Исповедь, а затем Кара во время произнесения потокового заклинания. Макрос не позволяет произносить Кара, пока полностью не закончится каст Исповедь.
Выключаются все аддоны + перегружает UI (Пользовательский Интерфейс):
Перезагружает полностью все аддоны.
Макрос позволяет выйти с команды 2х2\3х3\5х5,если не получается выйти привычным способом. В основном такая проблема возникает при смене ника.
Отмена квестов из журнала.
По 1 квесту, начиная сверху:
Для охоты на рарников. Если в таргете появится нужный рарник, оповестит в пм любого игрока или даже Вас самих, саундтреком и красным текстом по середине экрана. (Можно вводить названия рарника вручную, текст сообщения пм, либо вообще его убрать.) Если в таргете нет рарника, которого ищете макросом, оповещать не будет.
*click*
Инструкция F.A.Q.
## Title: Script
## Interface: 60000
Более-менее разобравшиеся в кодах lua задаются вопросом, откуда брать код самой текстуры (например, чтобы скрыть какой-то объект в игре).
Ответ: используем макрос /fstack.
Важно : можно вставить в любой имеющийся аддон, например, Bartender4. В самом конце, между имеющимся кодом и тем, что собираемся добавить, должна быть пустая разделяющая строка.
Автоматическая отправка письма в чат. (работало на WoD, сейчас не знаю)
Каналы
Далее, просто добавляем коды в первоначально созданный аддон.
Удаление циферок со стандартных фреймов (лечение/урон):
P.S Немного побольше о функции макроса /click и /fstack
Команда /fstack открывает доступ к наименованиям панелей API интерфейса. В сочетании с /click можно добиться возможностей, о которых до этого момента могли только задумываться или искали особый аддон.
Это работает не так, как функции /run или /script, хотя в целом они практически взаимозаменяемы.
Например, чтобы отменить какой-то квест, нужно ввести /script SetAbandonQuest(); AbandonQuest(); — в этом случае отменится выбранный квест. Во втором варианте это выглядит так: /click QuestLogFrameAbandonButton /click StaticPopup1Button1. Итог будет одинаковым. Но вариант с квестами слишком заурядный и бесполезный, ведь можно нажать 3 кнопки самостоятельно и убрать кв без особых усилий. Есть фишки покруче, например в связке с другими макросами или даже скиллами на панелях. Допустим, у Вас есть макрос, но он полностью не вписывается в ограничение 255 символов (согласен, можно поставить аддон на макросы), мы сделаем еще один макрос, который дополнит предыдущий и прожмется вместе с ним, используя команду в нем /click. В зависимости от установленных аддонов строка может отличаться. Если стоит Bartender4, то выглядеть будет примерно так: /click BT4Button1, что нажмет клавишу 1. Можно использовать в рыбалке для очистки хлама, при закидывании удочки. Но не стоит этим ограничиваться, это один из самый простых способов использования возможностей данной команды.
В итоге, выставив Первый макрос на клавишу 1, второй на 2 и третий 3 мы нажимаем только одну кнопку 1, попутно открывая коробки и моллюсков, а также удаляя ненужные вещи (да-да, луциана даже вендору лень продавать).