• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Mother Clucker - An Intelligent Boomkin Class for Lazy Raider

    Discussion in 'Archives' started by Phelon, Oct 30, 2011.

    1. Phelon

      Phelon Well-Known Member Buddy Store Developer

      Joined:
      Jan 15, 2010
      Messages:
      2,591
      Likes Received:
      140
      Trophy Points:
      63
      I appreciate the feedback and I will look into the movement stuff a bit more for ya.

      There should be a donate button the the first page and first post. And yes donations help me drink and drinking helps me program.
       
    2. sparks

      sparks Active Member

      Joined:
      Apr 23, 2010
      Messages:
      1,174
      Likes Received:
      1
      Trophy Points:
      38
      got bored last night so I gave this a try.
      Since I only have 359 caster gear on my druid I wasn't expecting much and well it was bad.

      he finally hit 10k and ran hit low mana, then the fun started. He cast Innervate, then started turning in 90 deg jumps.
      I looked since Innervate targeted him, now he is trying to dps himself.
      had to stop and start it but it was not funny. OK IT WAS LOL
       
    3. Phelon

      Phelon Well-Known Member Buddy Store Developer

      Joined:
      Jan 15, 2010
      Messages:
      2,591
      Likes Received:
      140
      Trophy Points:
      63
      Here is the code to fix the innervate problem. But if you need to innervate your build is wrong. I never oom with the right build.

      Code:
      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Text;
      using Styx;
      using Styx.Combat.CombatRoutine;
      using Styx.Helpers;
      using Styx.Logic;
      using Styx.Logic.Combat;
      using Styx.Logic.Pathing;
      using Styx.WoWInternals;
      using Styx.WoWInternals.WoWObjects;
      
      
      namespace HBPVPDruid.Spells.Healing
      {
          public static class Innervate
          {
              public const string SpellName = "Innervate";
      
      
              public static bool Pulse(int InnervatePercent, bool InnervateHealer)
              {
                  WoWUnit HealerPlayer = null;
                  // Quick Checks to return false
                  if (!SpellManager.CanCast(SpellName)) return false;
                  if ((Styx.BotManager.Current.Name == "LazyRaider" || Styx.BotManager.Current.Name == "Instancebuddy") && InnervateHealer)
                  {
                      double HealerPlayerMana = 100;
                      if (ObjectManager.Me.IsInRaid)
                      {
                          foreach (WoWPlayer p in ObjectManager.Me.RaidMembers)
                          {
                              if (Lua.GetReturnValues("return UnitGroupRolesAssigned('" + DeUnicodify(p.Name) + "')").First() == "HEALER")
                              {
                                  if (p.ManaPercent < InnervatePercent && p.ManaPercent > 0 && p.ManaPercent < HealerPlayerMana)
                                  {
                                      HealerPlayer = p;
                                      HealerPlayerMana = p.ManaPercent;
                                  }
                              }
                          }
                      }
                      else if (ObjectManager.Me.IsInParty)
                      {
                          foreach (WoWPlayer p in ObjectManager.Me.PartyMembers)
                          {
                              if (Lua.GetReturnValues("return UnitGroupRolesAssigned('" + DeUnicodify(p.Name) + "')").First() == "HEALER")
                              {
                                  if (p.ManaPercent < InnervatePercent && p.ManaPercent > 0 && p.ManaPercent < HealerPlayerMana)
                                  {
                                      HealerPlayer = p;
                                      HealerPlayerMana = p.ManaPercent;
                                  }
                              }
                          }
                      }
                  }
                  //Check to see if I need Mana more than the Healer
                  if (ObjectManager.Me.ManaPercent < (InnervatePercent - 25))
                  {
                      HealerPlayer = ObjectManager.Me;
                  }
                  if (HealerPlayer == null) return false;
                  Misc.Misc.CastLog(SpellName, HealerPlayer);
                  SpellManager.Cast(SpellName, HealerPlayer);
                  return true;
              }
      
      
              private static string DeUnicodify(string s)
              {
                  StringBuilder sb = new StringBuilder();
                  byte[] bytes = Encoding.UTF8.GetBytes(s);
                  foreach (byte b in bytes)
                  {
                      if (b != 0)
                          sb.Append("\\" + b);
                  }
                  return sb.ToString();
              }
          }
      }
      
      New Rest Code that will eat if needed:

      Code:
      using System;using System.Collections.Generic;
      using System.Linq;
      using System.Text;
      using Styx;
      using Styx.Combat.CombatRoutine;
      using Styx.Helpers;
      using Styx.Logic;
      using Styx.Logic.Combat;
      using Styx.Logic.Pathing;
      using Styx.WoWInternals;
      using Styx.WoWInternals.WoWObjects;
      
      
      namespace HBPVPDruid
      {
          /// <summary>
          /// This Controls the healing and buffing
          /// </summary>
          public partial class PVPDruid
          {
      
      
              public override bool NeedRest
              {
                  get
                  {
                      if (ObjectManager.Me.IsActuallyInCombat) return false;
                      if (ObjectManager.Me.HealthPercent > 90 && ObjectManager.Me.ManaPercent > 50) return false;
                      // Health Check
                      if (ObjectManager.Me.HealthPercent > 65)
                      {
                          if (Me.HasAura("Rejuvenation") && Me.HasAura("Lifebloom"))
                          {
                              if (Me.ActiveAuras["Lifebloom"].StackCount == 3) return false;
                          }
                          return true;
                      }
                      if (ObjectManager.Me.ManaPercent < 50)
                      {
                          return true;
                      }
      
      
                      // Buff Check
                      if (!ObjectManager.Me.HasAura("Mark of the Wild")) return true;
      
      
                      return false;
                  }
              }
      
      
      
      
              public override void Rest()
              {
                  if (Spells.Healing.MarkoftheWild.Pulse()) return;
                  if (Spells.Healing.Rejuvenation.Pulse()) return;
                  if (Spells.Healing.Lifebloom.Pulse()) return;
      
      
                  if (!Styx.Logic.Common.Rest.NoFood && StyxWoW.Me.HealthPercent < 65 && !StyxWoW.Me.IsSwimming)
                  {
                      Lua.DoString("UseItemByName(\"" + Styx.Helpers.LevelbotSettings.Instance.FoodName + "\")");
                      Thread.Sleep(500);
                  }
      
      
                  if (!Styx.Logic.Common.Rest.NoDrink && StyxWoW.Me.ManaPercent < 50 && !StyxWoW.Me.IsSwimming)
                  {
                      Lua.DoString("UseItemByName(\"" + Styx.Helpers.LevelbotSettings.Instance.DrinkName + "\")");
                      Thread.Sleep(500);
                  }
      
      
                  while (((StyxWoW.Me.HealthPercent < 90 && StyxWoW.Me.HasAura("Food")) || (!Styx.Logic.Common.Rest.NoDrink && StyxWoW.Me.ManaPercent < 50)) && !Me.Combat)
      
      
                  {
                      Thread.Sleep(10);
                  }
              }
          }
      }
      
      
      
      THIS CODE IS UNTESTED!

      As for Movement that is on the back burner for a few till I finish my conversion to the new system.
       
      Last edited: Dec 9, 2011
    4. sparks

      sparks Active Member

      Joined:
      Apr 23, 2010
      Messages:
      1,174
      Likes Received:
      1
      Trophy Points:
      38
      thanks Phelon I will try it tonight
      it was so funny when he was standing there jumping and turning 90 degrees on each jump.
      I though ok the boss is not dead...wrong time for a victory dance :)
       
    5. Phelon

      Phelon Well-Known Member Buddy Store Developer

      Joined:
      Jan 15, 2010
      Messages:
      2,591
      Likes Received:
      140
      Trophy Points:
      63
      I am hoping to finish my project before SWToR comes out. We will see what happens.
       
    6. garip

      garip New Member

      Joined:
      Jan 15, 2010
      Messages:
      97
      Likes Received:
      0
      Trophy Points:
      0
      At my druid ;I am using your cc. while i am using it
      honorboddy wants me select a cc,
      [h=1]Mother Clucker or Singular.[/h]
      I want to delete singular cc from my computer. How can i do it?
      I dont wanna show selecting cc panel every single time when i start honorbody.

      how can i fix it?
       
    7. imdasandman

      imdasandman Active Member

      Joined:
      Feb 2, 2011
      Messages:
      1,207
      Likes Received:
      6
      Trophy Points:
      38
      goto your custom classes folder and see the fodler that is called singular? delete the entire folder... it will than be gone. But seriously if you cannot figure out how to delete a file why the hell are you using a bot?
       
    8. garip

      garip New Member

      Joined:
      Jan 15, 2010
      Messages:
      97
      Likes Received:
      0
      Trophy Points:
      0
      which file? Can you say me the folder name or cs name of it with as like C:\\hb\xxxx
      ?
      i could not find which file or folder, must i delete.
       
    9. incognitto

      incognitto New Member

      Joined:
      Aug 15, 2010
      Messages:
      404
      Likes Received:
      3
      Trophy Points:
      0
      any idea when the overhaul is being released? this is the only decent boomkin CC but there are still a couple of issues with it including droping target and being able to disable movement
       
    10. LiquidAtoR

      LiquidAtoR Community Developer

      Joined:
      Jan 15, 2010
      Messages:
      1,430
      Likes Received:
      52
      Trophy Points:
      48
      Just a thing I noticed when running this with LazyRaider.
      There doesn't seem to be any sanity check whether the target is Friendly/Neutral/Unfriendly
      When I have HB running while in some home town and target a NPC (eg for repairs) it tries to cast spells on the target and spamming the logs like mad.
      I suggest a sanity check while you're making the overhaul to prevent this (and lots of spamming).

      Another thing I noticed (this doesn't happen on a regular base) is that it's spamming Moonfire over and over till I manually cast another spell.
      That seems to break the enchant and it picks up on rotation. It's like it doesn't register the Moonfire debuff on the target.
       
      Last edited: Dec 29, 2011
    11. swiny

      swiny Banned

      Joined:
      Dec 19, 2010
      Messages:
      517
      Likes Received:
      73
      Trophy Points:
      0
      Phelon,

      just went over source code,
      99% of that source code is all mine, infact i still have the source code for it and the 2008 project lol.

      but good job finishing it off,
      i stopped writting my profile because i stopped using honorbuddy

      started coding my actual own complete bots, incase honorbuddy gets shut down,
      didnt feel like waisting my time.

      but if u need help with anything or have questions about anything let me know ill be happy to help you.
      and ill dirrect my profile this way.

      would like some kind of credit in the log file tho on INIT.
       
    12. Zoinx

      Zoinx Active Member

      Joined:
      Mar 8, 2010
      Messages:
      727
      Likes Received:
      25
      Trophy Points:
      28
      Would love for ALL movement and facing to be disabled.

      This CC does half decent DPS on a training dummy, but when you take it to a fight that you actually have to move... lol, good luck moving cause it auto targets, keeps turning to target as you try to run, makes its impossible to raid with.
       
    13. pir8247

      pir8247 New Member

      Joined:
      Sep 16, 2010
      Messages:
      101
      Likes Received:
      0
      Trophy Points:
      0
      @zoinx
      was intrigued by your question..so i dug around
      in the mother clucker folder, open up motherclucker.cs with notepad
      do ctrl+f (find), look for "face"
      after a couple of find next's, you should see something like:
      //Use Movement?
      UseMovement = true;
      //Let the Bot Handle Facing for AoE
      UseFace = true;
      set both of those to false and you should be able to move freely..trying now working great so far. 17k dps where i was managing like 15-18 :p

      ps..slight problem after running it for a few minutes..toon turns around 180 degrees and keeps trying to cast things at target..looking into it now
      pps..even without making any changes he still targets himself and tries to cast moonfire and whatnot and spins around so idk
       
      Last edited: Jan 6, 2012
    14. Phelon

      Phelon Well-Known Member Buddy Store Developer

      Joined:
      Jan 15, 2010
      Messages:
      2,591
      Likes Received:
      140
      Trophy Points:
      63
      I have stopped playing WoW entirely. I have a completely rewritten architecture for a multi class base that should be pretty easy plug other classes into. It is almost finished.. you would just need to dot he work to finish it off. If anyone wants it let me know. Other wise someone might want to pick up this class.
       
    15. bot till ya drop

      bot till ya drop New Member

      Joined:
      Dec 4, 2011
      Messages:
      151
      Likes Received:
      0
      Trophy Points:
      0
      Nooooooooo lol, shames.

      Maybe you will start again one day, one can hope i suppose.

      Gl with everything you plan on playing or doing :)
       
    16. 5542Jaded

      5542Jaded New Member

      Joined:
      Jan 15, 2010
      Messages:
      119
      Likes Received:
      0
      Trophy Points:
      0
      the bot doesn't chain cast. it casts, stops, checks for movement, starts casting next spell. this is a massive dps loss. if I use this cc in lfr i get kicked for doing less than the tanks. is this something i'm doing wrong or an issue with the cc
       
    17. swiny

      swiny Banned

      Joined:
      Dec 19, 2010
      Messages:
      517
      Likes Received:
      73
      Trophy Points:
      0
      hey guys, i might be starting to re-develop this again ( orignal source )
       
      spudstar999 likes this.
    18. Angelus

      Angelus Member

      Joined:
      Jan 15, 2010
      Messages:
      848
      Likes Received:
      6
      Trophy Points:
      18
      The thing you are doing wrong is called reading:)
       
    19. spudstar999

      spudstar999 New Member

      Joined:
      Jan 15, 2010
      Messages:
      174
      Likes Received:
      1
      Trophy Points:
      0
      i know, this is not developed at the moment.

      But one question. Does anyone else, has the issues in pvp, that the char mostly runs directly into melee range the whole time?!

      I looked at the distance check and it anoyed the hell out of me.

      As far as i understand it, the method to check whether to run or not, should all the time be true?!

      Would be nice, if someone could check this, just want a second opinion on this. Since this cc is almost not very good for me in pvp.

      Kind regards, Spud
       
    20. zin.rokh

      zin.rokh Member

      Joined:
      Dec 4, 2011
      Messages:
      114
      Likes Received:
      1
      Trophy Points:
      18
      this one does terrible dps. spends more time moving and facing than it does casting. so much downtime just watching it stand there waiting to cast.
       

    Share This Page