Маг

Обмен опытом по созданию ротаций
uaz266
Сообщения: 235
Зарегистрирован: 12 ноя 2016, 03:30

Re: Маг

Сообщение uaz266 » 10 янв 2019, 02:02

Reqqque писал(а):
09 янв 2019, 16:09
uaz266 писал(а):
09 янв 2019, 13:15
Kopcap4g писал(а):
08 янв 2019, 05:52
вот как у меня получилось.теперь как надо.стоит-юзает шар...на ходу-юзает ожог...и глыбу кидает....теперь другая проблема.Огненный взрыв сразу два раза юзает.
Вот так нуна)))

5555.jpg

На пламя феникса не обращай внимание ,он под бурст))). Главное смотри последовательность,что за чем стоит и будет кастовать один раз"Огненный взрыв"
Обязательно все кастующие скилы ставь после макроса "Стоп кастинг" Короче скопируй и не мучайся)))

Или тебе всё сборку скинуть?
Я пробовал сделать каст взрыва разными способами и при всех вариантах иногда был дабл каст
Попробуй в настройках программы поставить галочку "Снизить нагрузку(для медленных ПК)Бот начинает реже спамить скилы, иногда это решает много проблем

Reqqque
Сообщения: 89
Зарегистрирован: 01 дек 2018, 20:28

Re: Маг

Сообщение Reqqque » 10 янв 2019, 06:34

uaz266 писал(а):
10 янв 2019, 02:02
Reqqque писал(а):
09 янв 2019, 16:09
uaz266 писал(а):
09 янв 2019, 13:15

Вот так нуна)))

5555.jpg

На пламя феникса не обращай внимание ,он под бурст))). Главное смотри последовательность,что за чем стоит и будет кастовать один раз"Огненный взрыв"
Обязательно все кастующие скилы ставь после макроса "Стоп кастинг" Короче скопируй и не мучайся)))

Или тебе всё сборку скинуть?
Я пробовал сделать каст взрыва разными способами и при всех вариантах иногда был дабл каст
Попробуй в настройках программы поставить галочку "Снизить нагрузку(для медленных ПК)Бот начинает реже спамить скилы, иногда это решает много проблем
Галочку давно поставил дабл каст с ней проходит

stormi47855
Сообщения: 210
Зарегистрирован: 25 ноя 2016, 10:13

Re: Маг

Сообщение stormi47855 » 02 мар 2019, 17:50

скиньте бфашных магов плз может под пвп кто что забабахал

stormi47855
Сообщения: 210
Зарегистрирован: 25 ноя 2016, 10:13

Re: Маг

Сообщение stormi47855 » 05 мар 2019, 09:57

народ а чарокрад ктонибуть прикрутил как вписать чтобы снимал автоматом?

Reqqque
Сообщения: 89
Зарегистрирован: 01 дек 2018, 20:28

Re: Маг

Сообщение Reqqque » 05 мар 2019, 10:41

stormi47855 писал(а):
05 мар 2019, 09:57
народ а чарокрад ктонибуть прикрутил как вписать чтобы снимал автоматом?
Той же функцией что снимает исступления

tolstiy
Сообщения: 176
Зарегистрирован: 20 окт 2016, 17:54

Re: Маг

Сообщение tolstiy » 29 авг 2019, 06:53

фаер маг 7.3
Вложения
фаер маг 7.3(без леги на екзекут).rar
(4.36 КБ) 25 скачиваний

Krrezz
Сообщения: 2
Зарегистрирован: 05 апр 2018, 15:51

Re: Маг

Сообщение Krrezz » 10 ноя 2019, 12:07

Ребят, никто ещё под лича на фаера пвп/пве не делал сборку, поделитесь?)

eminsk
Сообщения: 191
Зарегистрирован: 19 фев 2016, 17:15

Re: Маг

Сообщение eminsk » 22 ноя 2019, 10:33

фрост
фрост.rar
(18.62 КБ) 6 скачиваний

Код: Выделить всё

Talents = {{}, {}, {}, {}, {}, {}, {}}
Talents.pvp = {}

local function GetTalents()
  for tier=1,7 do
    for value=1,3 do
      Talents[tier][value] = (select(4, GetTalentInfo(tier, value, 1)))
    end
  end
  for slotN, talentID in ipairs (C_SpecializationInfo.GetAllSelectedPvpTalentIDs()) do
    Talents.pvp[talentID] = true
  end
end

local Eye = CreateFrame("Frame")
Eye:RegisterEvent("PLAYER_ENTERING_WORLD")
Eye:RegisterEvent("PLAYER_SPECIALIZATION_CHANGED")
Eye:RegisterEvent("PLAYER_TALENT_UPDATE")
Eye:SetScript("OnEvent", 
  function(self, event, ...)
    if event == "PLAYER_TALENT_UPDATE" then
      GetTalents()
    elseif event == "PLAYER_SPECIALIZATION_CHANGED" then
      GetTalents()
    elseif event == "PLAYER_ENTERING_WORLD" then
      GetTalents()
      Eye:UnregisterEvent("PLAYER_ENTERING_WORLD")
    end
  end
)

function inPvP()
  return C_PvP.IsWarModeActive() or C_PvP.IsPVPMap()
end

AzeriteSpells = {}

local function GetAzeriteSpells()
  local slotIDs = {1, 3, 5} -- Inventory slots with azerite talents
  for _,slot in ipairs(slotIDs) do
    if GetInventoryItemID("player",slot)~=nil then
      local itemLocation = ItemLocation:CreateFromEquipmentSlot(slot)
      if C_AzeriteEmpoweredItem.IsAzeriteEmpoweredItem(itemLocation) then
        local  allTierInfo = C_AzeriteEmpoweredItem.GetAllTierInfo(itemLocation)
        for _, tier in ipairs(allTierInfo) do
          for _, azeritePowerID in ipairs(tier.azeritePowerIDs) do
            if C_AzeriteEmpoweredItem.IsPowerSelected(itemLocation, azeritePowerID) then
              AzeriteSpells[C_AzeriteEmpoweredItem.GetPowerInfo(azeritePowerID).spellID]=true
            end
          end
        end
      end
    end
  end
end

local Eye = CreateFrame("Frame")
Eye:RegisterEvent("PLAYER_ENTERING_WORLD")
Eye:RegisterEvent("PLAYER_EQUIPMENT_CHANGED")
Eye:RegisterEvent("PLAYER_SPECIALIZATION_CHANGED")
Eye:RegisterEvent("AZERITE_EMPOWERED_ITEM_SELECTION_UPDATED")
Eye:SetScript("OnEvent", 
  function(self, event, ...)
    if event == "PLAYER_EQUIPMENT_CHANGED" then
      GetAzeriteSpells()
    elseif event == "AZERITE_EMPOWERED_ITEM_SELECTION_UPDATED" then
      GetAzeriteSpells()
    elseif event == "PLAYER_SPECIALIZATION_CHANGED" then
      GetAzeriteSpells()
    elseif event == "PLAYER_ENTERING_WORLD" then
      GetAzeriteSpells()
      Eye:UnregisterEvent("PLAYER_ENTERING_WORLD")
    end
  end
)

function SpellSteal()
 local i = 1
 local name, _, _, _, _, _, _, isStealable = UnitBuff("target", i)
 while name do 
  if isStealable == true then return true end
  i = i + 1;
  name, _, _, _, _, _, _, isStealable = UnitBuff("target", i)
 end
 return false
end

function kio58_p(SpellName, time)
if (IsCurrentSpell(SpellName)) then
Timers["kio58_p_"..SpellName] = time;
return true;
end
if (Timers["kio58_p_"..SpellName] ~= nil) then return false; end
return true;
end

function Blizcast()
if (UnitCanAttack("player", "mouseover") == true) and (UnitIsDeadOrGhost("mouseover") == false) then
Timers["Blizcast_Bliz"] = "2";
end
if (Timers["Blizcast_Bliz"] ~= nil) then return true; end
return false;
end
аркан
аркан.rar
(9.57 КБ) 6 скачиваний

Код: Выделить всё

Talents = {{}, {}, {}, {}, {}, {}, {}}
Talents.pvp = {}

local function GetTalents()
  for tier=1,7 do
    for value=1,3 do
      Talents[tier][value] = (select(4, GetTalentInfo(tier, value, 1)))
    end
  end
  for slotN, talentID in ipairs (C_SpecializationInfo.GetAllSelectedPvpTalentIDs()) do
    Talents.pvp[talentID] = true
  end
end

local Eye = CreateFrame("Frame")
Eye:RegisterEvent("PLAYER_ENTERING_WORLD")
Eye:RegisterEvent("PLAYER_SPECIALIZATION_CHANGED")
Eye:RegisterEvent("PLAYER_TALENT_UPDATE")
Eye:SetScript("OnEvent", 
  function(self, event, ...)
    if event == "PLAYER_TALENT_UPDATE" then
      GetTalents()
    elseif event == "PLAYER_SPECIALIZATION_CHANGED" then
      GetTalents()
    elseif event == "PLAYER_ENTERING_WORLD" then
      GetTalents()
      Eye:UnregisterEvent("PLAYER_ENTERING_WORLD")
    end
  end
)

function inPvP()
  return C_PvP.IsWarModeActive() or C_PvP.IsPVPMap()
end

function SpellSteal()
 local i = 1
 local name, _, _, _, _, _, _, isStealable = UnitBuff("target", i)
 while name do 
  if isStealable == true then return true end
  i = i + 1;
  name, _, _, _, _, _, _, isStealable = UnitBuff("target", i)
 end
 return false
end

function kio58_p(SpellName, time)
if (IsCurrentSpell(SpellName)) then
Timers["kio58_p_"..SpellName] = time;
return true;
end
if (Timers["kio58_p_"..SpellName] ~= nil) then return false; end
return true;
end

function Blizcast()
if (UnitCanAttack("player", "mouseover") == true) and (UnitIsDeadOrGhost("mouseover") == false) then
Timers["Blizcast_Bliz"] = "2";
end
if (Timers["Blizcast_Bliz"] ~= nil) then return true; end
return false;
end

function cdwgcd(type, id)
local start1, duration1, enabled1 = GetSpellCooldown(id)
local start2, duration2, enabled2 = GetItemCooldown(id)
local _, gcdMS = GetSpellBaseCooldown(5143)
local cd1 = start1 + duration1 - GetTime()
local cd2 = start2 + duration2 - GetTime()
if (type == spell and start1 > 0 and duration1 > gcdMS/1000) then return cd1 end
if (type == item and start2 > 0 and duration2 > gcdMS/1000) then return cd2 end
return 0
end


фаер
фаер.rar
(12.42 КБ) 3 скачивания

Код: Выделить всё

Talents = {{}, {}, {}, {}, {}, {}, {}}
Talents.pvp = {}

local function GetTalents()
  for tier=1,7 do
    for value=1,3 do
      Talents[tier][value] = (select(4, GetTalentInfo(tier, value, 1)))
    end
  end
  for slotN, talentID in ipairs (C_SpecializationInfo.GetAllSelectedPvpTalentIDs()) do
    Talents.pvp[talentID] = true
  end
end

local Eye = CreateFrame("Frame")
Eye:RegisterEvent("PLAYER_ENTERING_WORLD")
Eye:RegisterEvent("PLAYER_SPECIALIZATION_CHANGED")
Eye:RegisterEvent("PLAYER_TALENT_UPDATE")
Eye:SetScript("OnEvent", 
  function(self, event, ...)
    if event == "PLAYER_TALENT_UPDATE" then
      GetTalents()
    elseif event == "PLAYER_SPECIALIZATION_CHANGED" then
      GetTalents()
    elseif event == "PLAYER_ENTERING_WORLD" then
      GetTalents()
      Eye:UnregisterEvent("PLAYER_ENTERING_WORLD")
    end
  end
)

function inPvP()
  return C_PvP.IsWarModeActive() or C_PvP.IsPVPMap()
end

function SpellSteal()
 local i = 1
 local name, _, _, _, _, _, _, isStealable = UnitBuff("target", i)
 while name do 
  if isStealable == true then return true end
  i = i + 1;
  name, _, _, _, _, _, _, isStealable = UnitBuff("target", i)
 end
 return false
end

function Sfera()
 if UnitName("target")=="Взрывчатка" then return true end
 return false
end

function Poslanica()
 if UnitName("target")=="Зачарованная посланница" then return true end
 return false
end

function kio58_p(SpellName)
if (IsCurrentSpell(SpellName)) then
Timers["kio58_p_"..SpellName] = "0.5";
return true;
end
if (Timers["kio58_p_"..SpellName] ~= nil) then return false; end
return true;
end

local function FireBlastCD()
local _, _, _, SpellCooldownSec = GetSpellCharges(108853)
return SpellCooldownSec
end

local function ChargeFraction(spellid)
local ChargesRemaining, maxCharges, start, SpellCooldownSec = GetSpellCharges(spellid)
local ChargeSecRemaining = SpellCooldownSec - (GetTime() - start)
 if ChargeSecRemaining > 300 then
  ChargeSecRemaining = SpellCooldownSec
 end
return ChargesRemaining + (1 - ChargeSecRemaining / SpellCooldownSec)
end

local function CheckCD(spellid)
local ChargesRemaining, maxCharges, start, SpellCooldownSec = GetSpellCharges(spellid)
local ChargeSecRemaining = SpellCooldownSec - (GetTime() - start)
 if ChargeSecRemaining > 300 then
  return 0
 end
return ChargeSecRemaining
end

Reqqque
Сообщения: 89
Зарегистрирован: 01 дек 2018, 20:28

Re: Маг

Сообщение Reqqque » 22 ноя 2019, 15:49

В этой версии фаера бурст должен лучше работать
фаер2.rar
(14.1 КБ) 2 скачивания

Код: Выделить всё

Talents = {{}, {}, {}, {}, {}, {}, {}}
Talents.pvp = {}

local function GetTalents()
  for tier=1,7 do
    for value=1,3 do
      Talents[tier][value] = (select(4, GetTalentInfo(tier, value, 1)))
    end
  end
  for slotN, talentID in ipairs (C_SpecializationInfo.GetAllSelectedPvpTalentIDs()) do
    Talents.pvp[talentID] = true
  end
end

local Eye = CreateFrame("Frame")
Eye:RegisterEvent("PLAYER_ENTERING_WORLD")
Eye:RegisterEvent("PLAYER_SPECIALIZATION_CHANGED")
Eye:RegisterEvent("PLAYER_TALENT_UPDATE")
Eye:SetScript("OnEvent", 
  function(self, event, ...)
    if event == "PLAYER_TALENT_UPDATE" then
      GetTalents()
    elseif event == "PLAYER_SPECIALIZATION_CHANGED" then
      GetTalents()
    elseif event == "PLAYER_ENTERING_WORLD" then
      GetTalents()
      Eye:UnregisterEvent("PLAYER_ENTERING_WORLD")
    end
  end
)

function inPvP()
  return C_PvP.IsWarModeActive() or C_PvP.IsPVPMap()
end

function SpellSteal()
 local i = 1
 local name, _, _, _, _, _, _, isStealable = UnitBuff("target", i)
 while name do 
  if isStealable == true then return true end
  i = i + 1;
  name, _, _, _, _, _, _, isStealable = UnitBuff("target", i)
 end
 return false
end

local function FireBlastCD()
local _, _, _, SpellCooldownSec = GetSpellCharges(108853)
return SpellCooldownSec
end

local function ChargeFraction(spellid)
local ChargesRemaining, maxCharges, start, SpellCooldownSec = GetSpellCharges(spellid)
local ChargeSecRemaining = SpellCooldownSec - (GetTime() - start)
 if ChargeSecRemaining > 300 then
  ChargeSecRemaining = SpellCooldownSec
 end
return ChargesRemaining + (1 - ChargeSecRemaining / SpellCooldownSec)
end

local function CheckCD(spellid)
local ChargesRemaining, maxCharges, start, SpellCooldownSec = GetSpellCharges(spellid)
local ChargeSecRemaining = SpellCooldownSec - (GetTime() - start)
 if ChargeSecRemaining > 300 then
  return 0
 end
return ChargeSecRemaining
end

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость