Feral Druid - MMOCrawlerbots | WoW Bot Forum
Important: Please register to test the 20 minutes trial version or buy the bot!
Bot is ready for wow patch 5.3 #16992... Happy botting!
Wow Bot: CrawlerBot Last version: click here State: EU: working US: working

Author Topic: Feral Druid  (Read 2563 times)

October 19, 2012, 22:42:45 PM

jizar07

  • *
  • Posts: 20
  • Reputation: 2
    • View Profile
Ive modified a bit, test it out
Code: Lua
  1. --- Feral druid custom class by Jizar
  2. --- tested and working as of 10/19/2012
  3.  
  4. function Settings()
  5.         FightDist = 5
  6.         PullDist = 5
  7. end
  8.  
  9. function PullMob(MobAddr)
  10.     if IsSpellKnown(770) and IsSpellReady(770) then
  11.         _Log("pulling,FF");
  12.         CastSpellByID(770 , MobAddr , true);
  13.         NextAction();
  14.         end
  15. end
  16.  
  17.  
  18. function NextAction()
  19.         if true then return end
  20. end
  21.  
  22. function Fight()
  23.         Target = GetAttacker(1);
  24.         StartAutoAttack();
  25.        
  26.         -- hp below 30% -> cast rejuv
  27.         _Log("Check Heal");
  28.         if PlayerHpPercent() <= 30 then
  29.          _Log("Hp under 30% Cast Healspell");
  30.          CastSpellByID(774 , Player , true);
  31.         end
  32.         --check and cast mark of the wild - not working for some reason
  33.         -- _Log("Check MotW"); --läuft
  34.         --if IsSpellKnown(1126) then
  35.          --LuaDoString("local c=0 for i=1,30 do local B=UnitBuff('player',i); if (B==GetSpellInfo(1126)) then c=1 end end if c==0 then CastSpellByName(GetSpellInfo(1126)) end")
  36.          --NextAction();
  37.         --end
  38.        
  39.         -- Cat Form - Jumps into Cat form
  40.         _Log("Check Cat Form");
  41.         if not HasBuff(Player,768) then
  42.                 _Log("Cast Cat Form");
  43.                 CastSpellByID(768 , Player , false);
  44.                 NextAction();
  45.         end
  46.        
  47.         -- Mangle
  48.         _Log("Check Mangle");
  49.         if IsSpellKnown(33917) and IsSpellReady(33917) then
  50.                 _Log("Cast Mangle");
  51.                 CastSpellByID(33917 , Target , true);
  52.                 NextAction();
  53.         end
  54.        
  55.         -- Cast Rake if target has no debuff
  56.         _Log("Check Rake");
  57.         if not HasBuff(Target,1822) then
  58.                 _Log("Cast Rake");
  59.                 CastSpellByID(1822 , Target , false);
  60.                 NextAction();
  61.         end
  62.        
  63.         -- Rip
  64.         _Log("Check Rip!");
  65.         if IsSpellKnown(1079) and IsSpellReady(1079) then
  66.                 _Log("Cast Mangle");
  67.                 CastSpellByID(1079 , Target , true);
  68.                 NextAction();
  69.         end
  70. end
« Last Edit: October 24, 2012, 14:55:13 PM by telcy »

October 20, 2012, 16:59:09 PM
Reply #1

quinntree

  • *
  • Posts: 120
  • Reputation: 15
    • View Profile
Is there a way to detect if the mob is elite, cause I have encountered a couple and this rotation won't kill them.

Btw great work on the profile though. It's very awesome.
Takes many hours of debugging to create good Custom Classes. If you like what I've created, Please Rate/Rep :-)

October 21, 2012, 16:21:41 PM
Reply #2

zyndo88

  • *
  • Posts: 11
  • Reputation: 0
    • View Profile
Hey Jizar07 thank you for making a feral custom  but I had a question on how to use it. If was to use a gathering mod, would it automatically use the feral custom for it since my druid is feral or do I have to activate it some how? Any tips or advice would be great, thanks again

October 21, 2012, 19:34:14 PM
Reply #3

varyak

  • *
  • Posts: 19
  • Reputation: 2
    • View Profile
I also have a Custom Feral profile, maybe you can also have a look on it (Of course the best profile ever!  ;D ).

Its using Barkskin under 60% HP, using Healing Touch if Predatory Swiftness proccs, buffs MotW and uses a more or less normal fight rotation.

PS: @zyndo88 -> you have to replace the original classprofile in your botfolder e.g. -> C:\xyz\WRelease_0008\CustomClasses\

Code: [Select]

function Settings()
FightDist = 5;
PullDist = 5;
end

function PullMob(MobAddr)
StartAutoAttack();
if IsSpellKnown(770) and IsSpellReady(770) then
_Log("Cast Faerie Fire");
CastSpellByID(770 , MobAddr , true);
NextAction();
end

end

function NextAction()
if true then return end
end

function Fight()
Target = GetAttacker(1);

if HasBuff(Player,1126) == false then
_Log("Cast Mark of the Wild");
CastSpellByID(1126 , Player , true);
NextAction();
end

if HasBuff(Player,768) == false then
_Log("Cast Cat Form");
CastSpellByID(768 , Player , true);
NextAction();
end

StartAutoAttack();

if GetComboPoints() == 0 and HasBuff(Player,52610) == false then
_Log("Cast Savage Roar");
CastSpellByID(52610 , Player , true);
NextAction();
end

if HasBuff(Target,770) == false then
_Log("Cast Faerie Fire");
CastSpellByID(770 , Target , true);
NextAction();
end

if HasBuff(Target,1822) == false then
_Log("Cast Rake");
CastSpellByID(1822 , Target , true);
NextAction();
end

if IsSpellKnown(33917) and IsSpellReady(33917) then
_Log("Cast Mangle");
CastSpellByID(33917 , Target , true);
NextAction();
end

if PlayerHpPercent() <= 60 and IsSpellKnown(22812) then
_Log("HP lower then 60% -> Cast Barkskin");
CastSpellByID(22812, Player, true);
end

if GetComboPoints() >= 4 and HasBuff(Target,1079) == true then
_Log("Cast Ferocious Bite");
CastSpellByID(22568, Target, true);
end

if GetComboPoints() >= 4 and HasBuff(Target,1079) == false then
_Log("Cast Rip");
CastSpellByID(1079, Target, true);
end

if HasBuff(Player,69369) == true then
_Log("Predatory Swiftness + Cast Healing Touch");
CastSpellByID(5185 , Player , true);
NextAction();
end

end
« Last Edit: October 21, 2012, 19:35:45 PM by varyak »

October 21, 2012, 19:38:14 PM
Reply #4

mathex

  • ***
  • Posts: 211
  • Reputation: 39
    • View Profile
If needed i could make a feral druid profile.

October 21, 2012, 22:49:42 PM
Reply #5

jizar07

  • *
  • Posts: 20
  • Reputation: 2
    • View Profile
I also have a Custom Feral profile, maybe you can also have a look on it (Of course the best profile ever!  ;D ).

Its using Barkskin under 60% HP, using Healing Touch if Predatory Swiftness proccs, buffs MotW and uses a more or less normal fight rotation.

PS: @zyndo88 -> you have to replace the original classprofile in your botfolder e.g. -> C:\xyz\WRelease_0008\CustomClasses\

Code: [Select]

function Settings()
FightDist = 5;
PullDist = 5;
end

function PullMob(MobAddr)
StartAutoAttack();
if IsSpellKnown(770) and IsSpellReady(770) then
_Log("Cast Faerie Fire");
CastSpellByID(770 , MobAddr , true);
NextAction();
end

end

function NextAction()
if true then return end
end

function Fight()
Target = GetAttacker(1);

if HasBuff(Player,1126) == false then
_Log("Cast Mark of the Wild");
CastSpellByID(1126 , Player , true);
NextAction();
end

if HasBuff(Player,768) == false then
_Log("Cast Cat Form");
CastSpellByID(768 , Player , true);
NextAction();
end

StartAutoAttack();

if GetComboPoints() == 0 and HasBuff(Player,52610) == false then
_Log("Cast Savage Roar");
CastSpellByID(52610 , Player , true);
NextAction();
end

if HasBuff(Target,770) == false then
_Log("Cast Faerie Fire");
CastSpellByID(770 , Target , true);
NextAction();
end

if HasBuff(Target,1822) == false then
_Log("Cast Rake");
CastSpellByID(1822 , Target , true);
NextAction();
end

if IsSpellKnown(33917) and IsSpellReady(33917) then
_Log("Cast Mangle");
CastSpellByID(33917 , Target , true);
NextAction();
end

if PlayerHpPercent() <= 60 and IsSpellKnown(22812) then
_Log("HP lower then 60% -> Cast Barkskin");
CastSpellByID(22812, Player, true);
end

if GetComboPoints() >= 4 and HasBuff(Target,1079) == true then
_Log("Cast Ferocious Bite");
CastSpellByID(22568, Target, true);
end

if GetComboPoints() >= 4 and HasBuff(Target,1079) == false then
_Log("Cast Rip");
CastSpellByID(1079, Target, true);
end

if HasBuff(Player,69369) == true then
_Log("Predatory Swiftness + Cast Healing Touch");
CastSpellByID(5185 , Player , true);
NextAction();
end

end

Looks great, imma test it out when i get a chance, but  Swifness + Healing touch part looks iffy. it seems it will cast it even if toon is with full HP, maybe u should add that to HP % Line

October 22, 2012, 01:40:54 AM
Reply #6

quinntree

  • *
  • Posts: 120
  • Reputation: 15
    • View Profile
Quote
Looks great, imma test it out when i get a chance, but  Swifness + Healing touch part looks iffy. it seems it will cast it even if toon is with full HP, maybe u should add that to HP % Line

It's suppose to do that as it when Healing touch is cast it gives a 25% damage buff to the next 2 abilites that are used.

I'll be giving this one a look also, Great work everyone!
Takes many hours of debugging to create good Custom Classes. If you like what I've created, Please Rate/Rep :-)

October 22, 2012, 02:35:24 AM
Reply #7

quinntree

  • *
  • Posts: 120
  • Reputation: 15
    • View Profile
I have noticed something weird, with the feral abilitie "Savage Roar"  Even though I have it glyphed and can cast it with 0 Combo points manually, The Custom profile can't seem to cast it without combo points.  My UI says this ability can not be cast without combo points.

Anyone else encounting a problem similar to this?
Takes many hours of debugging to create good Custom Classes. If you like what I've created, Please Rate/Rep :-)

October 22, 2012, 05:55:33 AM
Reply #8

varyak

  • *
  • Posts: 19
  • Reputation: 2
    • View Profile
Hmm thats weird. I can cast Savage Roar without any problems with this glyph, even though my profile do it only sometimes (i will have to fix this)

October 22, 2012, 11:49:48 AM
Reply #9

quinntree

  • *
  • Posts: 120
  • Reputation: 15
    • View Profile
Hi Varyak rather than posting a modified Profile (since mine is based on yours anyways)  I was thinking perhaps you could make this change to yours.

if HasBuff(Target,113746) == false then
      _Log("Cast Faerie Fire");
      CastSpellByID(770 , Target , true);
      NextAction();
   end

This replaces the orignial Faerie Fire action..   Rather than checking for the Faerie fire debuff it checks instead for the armor debuff that goes on to the mob. I was thinking this is better to use since if the bot is fighting an elite mob it will refresh after 30secs.

Awesome Work on your profile though.
So happy with it, it does exactly what I was trying to do myself (But couldn't)  Just hoping you can address the savage roar skill not working properly :-)

Cheers
« Last Edit: October 22, 2012, 11:51:40 AM by quinntree »
Takes many hours of debugging to create good Custom Classes. If you like what I've created, Please Rate/Rep :-)

October 22, 2012, 13:28:31 PM
Reply #10

varyak

  • *
  • Posts: 19
  • Reputation: 2
    • View Profile
Oh thank you for the hint, didnt think of the armor debuff. Changed it directly.

Regarding the Savage Roar "bug", im working on it but can't find the reason why it didnt work like planed.

October 23, 2012, 01:21:16 AM
Reply #11

riarry

  • *
  • *
  • Posts: 1019
  • Reputation: 95
    • View Profile
The HasBuff Function is buggy atm. With the next release it will be fixed. (really, i already tested it^^)
Great Multi-Area herb&Mine Profile: SuperFarm 2.0
Awesome Fishing 1-600 with Coinmaster Achievment
--- NO SUPPORT VIA PM ---

October 23, 2012, 09:57:55 AM
Reply #12

kampfschaf

  • ****
  • Posts: 349
  • Reputation: 29
  • me gusta.
    • View Profile
Checking for Moonfire and Sunfire with my Balance profile is working.

Make sure that you do not use the glyph "Faerie Swarm" as it has another ID.

Maybe you should add a
Code: [Select]
IsSpellKnown(770) for Faerie Fire and
Code: [Select]
IsSpellKnown(106707) for Faerie Swarm.


I do not use the if HasBuff(Target, ID) == false syntax but the negated one ( if not HasBuff(Target, ID) in my CC:
this is working for balance. Maybe you should try this variant.

Code: [Select]
_Log("Check Sunfire");
if not HasBuff(Target,8921) then
_Log("Cast Sunfire");
CastSpellByID(8921 , Target , false);
NextAction();
end

for Faerie Fire it would be
Code: [Select]
_Log("Faerie Fire");
if not HasBuff(Target,770) and IsSpellKnown(770)  then
_Log("Faerie Fire");
CastSpellByID(770 , Target , false);
NextAction();
end

and for Faerie Swarm
Code: [Select]
_Log("Faerie Swarm");
if not HasBuff(Target,106707) and IsSpellKnown(106707) then
_Log("Faerie Swarm");
CastSpellByID(106707 , Target , false);
NextAction();
end


As I currently am at the office, I cannot test it. Someone please give it a try and send me feedback.
I'm back and slowly getting back into my projects

October 23, 2012, 10:47:42 AM
Reply #13

quinntree

  • *
  • Posts: 120
  • Reputation: 15
    • View Profile
perhaps your posting in the wrong post, I would be happy to test things but I have no balance spec and mostly reading this cause it's about a feral based Custom profile that is being written and tested.

 :)
Takes many hours of debugging to create good Custom Classes. If you like what I've created, Please Rate/Rep :-)

October 23, 2012, 11:12:15 AM
Reply #14

kampfschaf

  • ****
  • Posts: 349
  • Reputation: 29
  • me gusta.
    • View Profile
read again. I'm referring to the Faerie Fire problem and the HasBuff() bug.
« Last Edit: October 23, 2012, 11:16:16 AM by kampfschaf »
I'm back and slowly getting back into my projects

 

* Useful Links

WoW Bot - CrawlerBot
* Download
* Guides
* Info & Clip

* Useful Stuff