Модератор форума: staford11 |
Форум Хитрости Пиратских серверов Читы для WoW Использование Lua скриптов. |
Использование Lua скриптов. |
Lua unlocker - снимает блокировку с функций, которые Метелица посчитала слишком жирными и приносящими очень много пользы игрокам. Расширяет возможности макросов и аддонов.
1. Gagarin v1.7 - на данный момент универсальный чит. Риск быть забаненым минимален. 2. BindBP - для клиента 3.3.5. Модернизированная версия BindPad для скриптов, но и основной функционал не порезан. Описание ниже(ctrl+g - BindBP) 3. Скрипты - основное и самое вкусное. (Все примеры будут для класса ДК ибо им я когда-то играл и уже в последующем из интереса занялся скриптами) Код помещаем в аддон BindBP. Открывается он по слеш команде /bp, далее кликаем по крестику, задаём имя и иконку, нажимаем "ок" и у нас появится основное окно в которое нужно вписывать скрипт. Для последующего редактирования нужно будет кликать левой клавишей мышки по иконке "макроса" т.к. правая задаёт бинд. Бинд на скрипт во избежание "палева" лучше не ставить т.к. всё содержимое улетит в чат. Запускать нужно 1 раз, вошли в игру запустили и забыли до тех пор, пока не перезагрузите интерфейс /reload или релогнитесь. Скрипты на автованиш и прочее со схожей механикой находятся тут - http://wowjp.net/forum/11-279993-4208421-16-1429873556 Код function Kick(self, elapsed) local spell, _, _, _, _, endTime, _, _, interrupt = UnitCastingInfo("target") local enabled = GetSpellCooldown("Заморозка разума") local inRange = IsSpellInRange("Заморозка разума", "target") if spell then if interrupt == false and enabled == 0 and inRange == 1 then RunMacroText("/cast Заморозка разума") end end end CreateFrame("Frame", "KickFrame") KickFrame:SetScript("OnUpdate", Kick) Код function Dispel(self, elapsed) local inRange = IsSpellInRange("Пожирание магии", "target") local Range = IsSpellInRange("Запрет чар", "target") local enable = GetSpellCooldown(48011) local enabl = GetSpellCooldown(19647) local pl = "player" local power = UnitPower("pet", 0) if enable == 0 and power >= 390 and inRange == 1 then if UnitDebuff(pl, "Страх") or UnitDebuff(pl, "Жертвенный огонь") or UnitDebuff(pl, "Лик смерти") or UnitDebuff(pl, "Порча") or UnitDebuff(pl, "Неистовство тьмы") or UnitDebuff(pl, "Вой ужаса") or UnitDebuff(pl, "Вой ужаса") or UnitDebuff(pl, "Превращение") or UnitDebuff(pl, "Ледяные оковы") or UnitDebuff(pl, "Молот правосудия") or UnitDebuff(pl, "Покояние") or UnitDebuff(pl, "Сглаз") or UnitDebuff(pl, "Ментальный крик") or UnitDebuff(pl, "Соблазн") then CastSpellByName("Пожирание магии", "player") end end if enabl == 0 and power >= 200 and Range == 1 then if UnitCastingInfo("target") or UnitChannelInfo("target") then CastSpellByName("Запрет чар", "target") end end end CreateFrame("Frame", "DispelFrame") DispelFrame:SetScript("OnUpdate", Dispel) Код function Mucks(self, elapsed) if UnitDebuff("player","Указать гадость(дэбаф)") or UnitDebuff("player","Указать гадость(дэбаф)") then local enabled = GetItemCooldown("Медальон Орды") if enabled == 0 then RunMacroText("/use Медальон орды") end end end CreateFrame("Frame", "MucksFrame") MucksFrame:SetScript("OnUpdate", Mucks) Код function Destroy(self, elapsed) local enabled = GetSpellCooldown("Мощный удар") local rage = UnitPower("player") local inRange = IsSpellInRange("Мощный удар", "target") if UnitBuff("player","Сокрушить!") then if enabled == 0 and inRange == 1 and rage >= 15 then RunMacroText("/cast Мощный удар") end end end CreateFrame("Frame", "DestroyFrame") DestroyFrame:SetScript("OnUpdate", Destroy) Код DefPet = CreateFrame("Frame", "PetFrame", UIParent); DefPet:RegisterEvent("UNIT_HEALTH"); DefPet:SetScript("OnEvent", function(self, event, arg1, arg2, ...) if(event=="UNIT_HEALTH") then if arg1 == "pet" then local enabled = GetSpellCooldown("Сжаться") if enabled == 0 then local health = UnitHealth("pet") if health <= 5000 then CastPetAction(4) end end end end end) Код DefPet2 = CreateFrame("Frame", "PetFrame2", UIParent); DefPet2:RegisterEvent("UNIT_HEALTH"); DefPet2:SetScript("OnEvent", function(self, event, arg1, arg2, ...) if(event=="UNIT_HEALTH") then if arg1 == "target" then local enabled = GetSpellCooldown("Отгрызть") if enabled == 0 then inRange = IsSpellInRange("Отгрызть", "target") if inRange==1 then local isEnemy = UnitIsEnemy("player","target") if isEnemy == 1 then local health = UnitHealth("target") if health <= 3000 then RunMacro("кус") end end end end end end end) Макрос "кус" содержит: #showtooltip Отгрызть /petattack /cast Прыжок /cast Отгрызть Пет будет применять спел Цапнуть не опуская рагу ниже 40. т.е. в любой момент мы свободно можем применить стан. Код DefPet3 = CreateFrame("Frame", "PetFrame3", UIParent); DefPet3:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED"); DefPet3:SetScript("OnEvent", function(self, event, arg1, arg2, ...) if(event=="COMBAT_LOG_EVENT_UNFILTERED") then local enabled = GetSpellCooldown("Цапнуть") if enabled == 0 then local isEnemy = UnitIsEnemy("player","target") if isEnemy == 1 then inRange = IsSpellInRange("Цапнуть", "target") if inRange==1 then local power = UnitPower("pet","3") if power >= 80 then CastPetAction(6) end end end end end end) По макросам: (суть позаимствована у товарища DreamlØlz) Не даёт использовать Хватку Смерти в Тотем Заземления и Отражение заклинания. Если на цели есть данные бафы то используется спел Темная власть, который сбивает данные бафы. /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 Удушения - не дает использовать удушение ,если на цель бабл мастер аур , в случае если на цели тотем заземления или отражение заклинания использует таунт , после чего дает сало. /run if (not UnitBuff("target", "Эффект тотема заземления")) and (not UnitBuff("target", "Отражение заклинания")) and (not UnitBuff("target", "Мастер аур")) and (not UnitBuff("target", "Божественный щит")) then RunMacroText("/cast Удушение")end /run if UnitBuff("target", "Эффект тотема заземления") or (UnitBuff("target", "Отражение заклинания")) then RunMacroText("/cast Темная власть")end Заморозки разума - не дает использовать заморозку разума , если цель не кастует или на цели мастер аур или бабл. /run if GetSpellCooldown("Заморозка разума")==0 and IsSpellInRange("Заморозка разума","target") and (UnitCastingInfo("target") or UnitChannelInfo("target")) and (not UnitBuff("target", "Мастер аур")) and (not UnitBuff("target", "Божественный щит")) then RunMacroTex("/cast Заморозка разума") end PS: Я никому не навязываю использование запрещенный скриптов и макросов. Я понимаю что в некоторых ситуациях они только усугубят положение. Я понимаю что руки главное и ничто их не заменит. Играл на пиратке, был интерес. Результат тут. Надеюсь это кого-то заинтересует и он сделает большее хотя бы для себя. PPS: Данная информация составлена мной(DiSq) и использовалась на клиенте 3.3.5 Более того, написать скрипт Вы можете уже сами по примеру скриптов в данной теме. Вам лишь потребуется знать API часть игры и список эвентов Подробнее о BindBP - Это модернизированная версия BindPad в которой исчезла кнопка "test" и появилась кнопка "запуск" по которой запускается скрипт, бережно хранимый в базе аддона. Переименован он для работы на серверах где его заблокировали по названию. Количество символов не ограничено. Макросы с запуском через /run используем только по биндам, увы - "непокликать" Касательно серверов 1.12.х там все немного проще и сложнее одновременно, пока информации мало, но обсуждение некоторых вопросов поднялось тут |
Автокик - смотря кто и как будет предоставлять пруфы. В данном случае нам нужны будут логи боя самого игрока, не маленькое окошечко, а полная развертка стычки. Такое предоставить на всём сёркле Всё остальное - не банят за гагарина, не будет бана и за скрипты. Добавлено (25.03.2014, 00:50)
Сообщение # 5 написано 25.03.2014 в 00:50
|
Есть и другие анлокеры, они более функциональны, позволяют использовать единичный скрипт привязанный к игровому эвенту. Не запутывайте людей, всё там можно использовать. В SDM можно писать хоть километровые процедуры и даже полноценных ротационных ботов, ну и конечно же мановением руки создавать новые Frame затем крепить к ним вышеупомянутые эвенты. яркий тому пример
reverse engineering your soul... балуюсь C++, C#, SQL, LUA. Владыка 1C. Окончательно забил на emuDev
|
Не запутывайте людей, всё там можно использовать. В SDM можно писать хоть километровые процедуры и даже полноценных ротационных ботов, ну и конечно же мановением руки создавать новые Frame затем крепить к ним вышеупомянутые эвенты. яркий тому пример Да, тут виновата моя криворукость, я не перезагружал интерфейс после включения анлока луа. Исправлюсь.
Сообщение # 10 написано 04.07.2014 в 10:29
|
Не запутывайте людей, всё там можно использовать. В SDM можно писать хоть километровые процедуры и даже полноценных ротационных ботов, ну и конечно же мановением руки создавать новые Frame затем крепить к ним вышеупомянутые эвенты. яркий тому пример Извини я не понял, реально ли создавать с помощью lua новые фреймы по типу focus2 итд и писать на них простейшие макросы по типу Цитата /cast [target=focus2] |
Извини я не понял, реально ли создавать с помощью lua новые фреймы по типу focus2 итд и писать на них простейшие макросы по типу /cast [target=focus2] Не думаю что прокатит сделать каст в новый фрейм т.к. в "target=..." ты указываешь UnitID, а не фрейм Просто каст в фокус дать запросто. Код RunMacroText("/cast [target=focus] Свет небес") А вообще ранее я давал исчерпывающий пример и в этой теме о нем напомнил. Т.е. там выложен полноценный рабочий ротационный бот который функционирует чисто на встроенном в игру языке (к тому же в нем есть фрейм для перехвата событий), а также всё необходимое для его работы (аддоны для зацикливания ротации).
reverse engineering your soul... балуюсь C++, C#, SQL, LUA. Владыка 1C. Окончательно забил на emuDev
|
Тестану на 4.3.4
Разбираюсь в компиляции, и установке серверов с ядрами СMaNGoS и Trinity.
Учусь модкрафтить (DBC-Edit, Локации в Noggit, Конвертирование/редактирование моделей в 3D-Max + Blender). Интересуюсь технологиями, информатикой, физикой, и многим другим. Warlocks 'Evil Empire'
Сообщение # 16 написано 08.07.2014 в 18:06
|
В первом посте написано с какими параметрами создавать и как запускать. Так к слову, запускать нужно 1 раз после захода в игру. В общих чертах, тут создается фрейм для ловли ивента и исполнение функции после его "поимки". Конечно можно использовать отличные ивенты от COMBAT_LOG_EVENT_UNFILTERED или его же но с опред. пораметрами, это будет более правильно, но пока на этот счёт не заморачивался т.к. в боях он всегда активен и тут уже не может быть такого, что "не сработал".
Сообщение # 17 написано 08.07.2014 в 19:42
|
Правильно? если да то: Gagarin v1.5 Не снимает защиту - Lua Protection Disabler Снимает защиту Но автоматическим использованием не пахнет Мы не читатели, мы писатели. Видимо кто-то не запустил скрипт. В ином случае тут уже могу лишь рекомендовать ровнять руки. На счет гагарина разработчик сего творения высказался выше.
Сообщение # 20 написано 08.07.2014 в 20:53
|
Во первых тут надо уточнить, если в системе стоит проц не от Intel то чит работать не будет. Проверьте сначала любые другие функции чита, работают они у вас или нет.
Вот этот у меня только что отлично сработал а ещё попробуй вместо Код RunMacroText("/cast Название") сделать Код CastSpellByName("Название")
reverse engineering your soul... балуюсь C++, C#, SQL, LUA. Владыка 1C. Окончательно забил на emuDev
|
Сообщение # 23 написано 08.07.2014 в 22:31
|
Почему этот скрипт у меня не пашет, когда я прописую /sdm run Name,написало Super Duper Macro.Пишет SDM could not find a script named "Name" Это ошибка кока-это? Пишет что не найден скрипт под названием "Name", т.е. для начала надо было: 1) зайти в меню аддона через иконку в макросах 2) затем создать в аддоне новый "script" и дать ему имя, например "AutoKick" 3) Вбить в скрипт необходимый код 4) И только теперь ввести в чат 1 раз команду с именем того скрипта который только что создавали, т.е. в данном случае Код /sdm run AutoKick ЗЫ: у меня 2.4.6 версия отлично на личе работает.
reverse engineering your soul... балуюсь C++, C#, SQL, LUA. Владыка 1C. Окончательно забил на emuDev
|
Гагарин не может разблокировать Луа, для автокика, только для макросов. Использовал другой анблокер - дали бан на ат Можно же наверное тему прочитать полностью и увидеть, что я считал также до того момента когда меня поправил tobmaps. Либо снова воспользоваться его советом и использовать CastSpellByName("Название") Добавлено (10.07.2014, 01:32) а) Написать самому. б) Изложить идею для реализации тут, в доступной, простой форме, желательно со ссылками и полными названиями спелов и может быть я что-то сделаю, либо кто-то другой.
Сообщение # 29 написано 10.07.2014 в 01:32
|
| |||