• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Fight at Joe's - 2.0

    Discussion in 'Buddy Wing Forum' started by adude, Apr 29, 2013.

    Thread Status:
    Not open for further replies.
    1. Jests

      Jests New Member

      Joined:
      Feb 13, 2013
      Messages:
      488
      Likes Received:
      1
      Trophy Points:
      0
      Here's the spec I've come up with for Telekinetic Sorc. It still doesn't use quake to pull groups of over 3 (which would be ideal) and I think down the line I'm probably going to tweak with cast order in an attempt to optimize further but as it is right now this is a pretty solid routine for TK sage and it's ready to be added. I also plan on adding the condition to not cast Mental Alacrity when they're below 30% hp because that's a total waste.:

      Code:
      public static void TelekineticsCombat()
              {
      
                  WaitForCast();
                  datLCL = DateTime.Now;
      
                  Thread.Sleep(200);
                  LoadVars();
                  if (!TargetInCombat()) return;
      
                  if (MercCast("Force Valor", !MyBuffs.Contains("Force Valor"))) return;
      	if (!CT.InCombat)
                      {
                          while (CT.Distance > 2.0f) MoveTo(CT, 2.0f);
                          if (MercCast("Force Armor", !BuddyTor.Me.HasDebuff("Force-imbalance"))) return;
      			if (MercCast("Forcequake", UseAOE && TWR30 > 2)) return;
      			if (MercCast("Mind Crush", StrongOrGreater(CT))) return;
                          MercCast("Disturbance");
                      }
                      MoveTo(CT, 2.8f);
      		if (MercCast("Force Armor", !BuddyTor.Me.HasDebuff("Force-imbalance"))) return;
                      if (MercCast("Force Mend", HP <= 80)) return;
                      if (MercCast("Deliverance", MyBuffs.Contains("Mental Alacrity") && HP <= 60)) return;
      		if (MercCast("Benevolence", HP <= 60)) return;
      		
      		
      		
                      if (MedicineCheckCompHealth()) return;
      
                      //if (BGHeals(85f)) return;
                      if (BGCheckCompHealth()) return;
      
                      Thread.Sleep(100);
      
                      
                      if (MercCast("Force of Will", BuddyTor.Me.IsStunned)) return;
      
                      if (!TargetInCombat()) return;
      
                      if (MercCast("Mind Snap", TC)) return;
                      if (MercCast("Force Stun", StrongOrGreater(CT))) return;
      
                      if (MercCast("Force Potency")) return;
                      
      
      
      
                      
                      
      
                      
                      if (MercCast("Noble Sacrafice", RS >= 20)) return;
      
                      {
                          if (MercCast("Weaken Mind", StrongOrGreater(CT) && !CTDebuffs.Contains("Weaken Mind"))) return;
                          if (MercCast("Force Wave", TD <= .6f)) return;
      		if (MercCast("Turbulence", CTDebuffs.Contains("Weaken Mind"))) return;    
      		if (MercCast("Telekinetic Wave", MyBuffs.Contains("Tidal Force"))) return;
      		    if (MercCast("Telekinetic Throw", MyBuffs.Contains("Psychic Projection"))) return;
      		    if (MercCast("Disturbance", MyBuffs.Contains("Mental Alacrity"))) return;
                          if (MercCast("Project")) return;
                          if (MercCast("Telekinetic Throw", !StrongOrGreater(CT) && THP <= 30f)) return;
                          if (MercCast("Mental Alacrity", StrongOrGreater(CT))) return;
      		    if (MercCast("Disturbance")) return;                  
      
                      }
      		if (SeerCheckCompHealth()) return;
      
                  if (!IG && BuddyTor.Me.IsMoving) StopMoving();
      
      
              }
       
    2. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      Thank you for this buddy i have added this to the rotation as an update to whatever was there before.
       
    3. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      I have updated a tun or rotations and added a tun as well. in the coming days i will finish ALL rotations and update them for perfection as needed ;)

      Also Walter has seen it fit to message me and tell me i ma stealing his class spec description from the top of his post.... my response to that is... i was the one that first started and posted all of the class info and what was working and not working so whatever he wants to call me he can.


      here is the updated list of what rotations are working. i will be updating the SVN shortly.

      Tested and Working!
      Working but needs Testing!
      Currently not Implemented!



      Imperial Classes:

      Basic Class: Inquisitor

      Advance Class: Sith Sorcerer
      1.Corruption
      2.Lightning
      3.Madness

      Advance Class: Sith Assassin
      1.Darkness
      2.Deception
      3.Madness

      Basic Class: Warrior

      Advance Class: Juggernaut
      1.Immortal
      2.Vengeance
      3.Rage

      Advance Class: Marauder
      1.Annihilation
      2.Carnage
      3.Rage

      Basic Class: Agent

      Advance Class: Operative
      1. Medicine
      2.Concealment
      3. Lethality

      Advance Class: Sniper
      1. Marksmanship
      2.Engineering
      3.Lethality

      Basic Class: Bounty Hunter

      Advance Class: Mercenary
      1.Bodyguard
      2.Arsenal
      3.Pyrotech

      Advance Class: Powertech
      1.Shield Tech
      2.Advanced Prototype
      3.Pyrotech

      Republic Classes:

      Basic Class: Consular

      Advance Class: Sage
      1.Seer
      2.Telekinetics
      3.Balance

      Advance Class: Shadow
      1.Kinetic
      2.Infiltration
      3.Balance

      Basic Class: Knight

      Advance Class: Guardian
      1.Defense
      2.Vigilance
      3.Focus

      Advance Class: Sentinel
      1.Watchman
      2.Combat
      3.Focus

      Basic Class: Smuggler

      Advance Class: Scoundrel
      1.Sawbones
      2.Scrapper
      3.Dirty Fighting

      Advance Class: Gunslinger
      1.Sharpshooter
      2.Saboteur
      3.Dirty Fighting

      Basic Class: Trooper

      Advance Class: Commando
      1.Combat Medic
      2.Gunnery
      3.Assault Specialist

      Advance Class: Vanguard
      1.Shield Specialist
      2.Tactics
      3.Assault Specialist
       
    4. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      SVN Updated

      please test and let e know whats what.. also i ma still getting hate mail from Walter lol
       
    5. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      also i have not cleaned out the SVN Folder yet but the Test Build and the Adude-Fights are working great.
       
    6. strepie

      strepie New Member

      Joined:
      Jun 11, 2012
      Messages:
      290
      Likes Received:
      2
      Trophy Points:
      0
      Updated and testing atm. :) So far, no major issues detected, but will keep you informed.
       
      Last edited: Jun 9, 2013
    7. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      Thank you strepie. I am off of my gag order now so i am hoping to finish creating the rest of the combat rotations and after that I will keep updating them based on what anyone says about their effectiveness. I am really looking forward to getting them done because there are some features I would like to add
       
    8. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      I have been looking at a few things and made some startling discoveries... I have decompiled the BW exe just to see what they have in there that's not in the bot yet or that they don't have working 100% I found some nice Med-Pack code here it is


      PHP:
      private void ()
              {
                  
      using (BuddyTor.Memory.AcquireFrame())
                  {
                      foreach (
      TorItem item in BuddyTor.Me.InventoryEquipment)
                      {
                          if (
      item.IsUsable)
                          {
                              if ((
      BuddyTor.Me.HealthPercent 70f) && (item.Name.ToLower().Contains("medpac") || item.Name.ToLower().Contains("med unit")))
                              {
                                  
      item.UseAbility(BuddyTor.Me);
                                  return;
                              }
                              if (
      item.Name.ToLower().Contains("stim"))
                              {
                                  
      item.UseAbility(BuddyTor.Me);
                                  return;
                              }
                          }
                      }
                  }
              }

      this bit of code would have been useful in the pass would have modified it like Walter and Jnp did here is what they have.

      PHP:
      public static void UseMedPackInInventory() // Medpack Use
              
      {
                  
                  if (
      DateTime.Now.Subtract(datLMPU).TotalSeconds 120) return;
                  
      //Logging.Write("TRY MEDPAC");
                  
      bool isUsable;
                  
      bool flag;
                  try
                  {
                      
      IEnumerator<TorItemenumerator BuddyTor.Me.InventoryEquipment.GetEnumerator();
                      try
                      {
                          while (
      true)
                          {
                              
      isUsable enumerator.MoveNext();
                              if (!
      isUsable)
                              {
                                  break;
                              }
                              
      TorItem current enumerator.Current;
                              
      //isUsable = current.IsUsable;        Broke in buddywing
                              
      isUsable=true;
                              
      //Logging.Write("Item:" + current.Name + " IsUsable? " + isUsable.ToString());
                              
      if (isUsable)
                              {
                                  
      isUsable BuddyTor.Me.HealthPercent >= 70f;
                                  if (!
      isUsable)
                                  {
                                      
      flag = (current.Name.ToLower().Contains("medpac") ? false : !current.Name.ToLower().Contains("med unit"));
                                      
      isUsable flag;
                                      if (!
      isUsable)
                                      {
                                          
      Logging.Write("Using MEDPAC  --------------------- " current.Name.ToLower());
                                          
      current.UseAbility(BuddyTor.Me);
                                          
      datLMPU DateTime.Now;
                                          return;
                                      }
                                  }
                              }
                          }
                      }
                      finally
                      {
                          
      isUsable enumerator == null;
                          if (!
      isUsable)
                          {
                              
      enumerator.Dispose();
                          }
                      }
                  }
                  catch {
                      return;
                  }
                  
                  return;
              }
      very nice indeed... anyhow both their code and mine works fine so i will not be rewriting mine. i ma sure i will find some more gems :) for my new functions
       
    9. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      OK i am at work am board again so i thought hey why not make a function aka method to use the explosive barrels in swtor. i started looking at the chest interact plugin by Neo93 i think i would be able to adapt that pretty easy. below is what i have so far. no its not tested yet just theory at the moment i don't even have the names of the world items yet.

      in terms of implementation i was thinking why not make it use the world items right after it pulls. or use the item before the pull.. extra dps right off the bat, but this may have to be implemented differently for some classes that get resource boosts after coming out of stealth.


      PHP:
      public TorPlaceable DPSItem get { return ObjectManager.GetObjects<TorPlaceable>().FirstOrDefault(=> o.Name == "barrel"); } }
              public static 
      void UseWorldDPSItem()
              {
                     if (
      DPSItem != null)
                      {
                          
      TreeHooks.Instance.InsertHook("TreeStart"0,
                          new 
      PrioritySelector(context => DPSItem,
                              new 
      Decorator(ret => ret != null && BuddyTor.Me.InCombat,
                                  new 
      PrioritySelector(
                                      
      CommonBehaviors.MoveAndStop(ret => (ret as TorPlaceable).Position2.8ftrue"[UseWorldDPSItem] Move to world DPS item"),
                                      new 
      Sequence(
                                          new 
      Action(ret => (ret as TorPlaceable).Interact()),
                                          new 
      Action(ret => count++),
                                          new 
      Action(ret => Logging.Write("[UseWorldDPSItem] Interacting with " + (ret as TorObject).Name "(" count ")")),
                                          new 
      WaitContinue(3ret => DPSItem.IsLootablenull)
                                          )
                                      )
                                  )
                              )

                          );
                      }
              }
       
      Last edited: Jun 12, 2013
    10. mulga73

      mulga73 Member

      Joined:
      Jan 4, 2013
      Messages:
      113
      Likes Received:
      1
      Trophy Points:
      18
      hi just wanted to let you know that ive noticed that my kinetic shadow spec consular does not move closer to mobs when in combat . it will stand there out of range casting the range spells why the companion kills it .

      thanks
       
    11. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      awesome feed back i will update the SVN once i get home


      if you want to you can remove this code in the MercHelper file

      Code:
      if (!CT.InCombat && CT.HealthPercent > .2f) // initial pull
                  {
                      if (CT.Distance >= 1.0f && CT.Distance <= 3.0f) if (MercCast("Force Pull")) return;
                      if (StrongOrGreater(CT)) if (MercCast("Mind Crush")) return;
                      MercCast("Stealth");
                      while (CT.Distance > .15f) MoveTo(CT, .15f);
                      if (MercCast("Shadow Strike", CT.Distance <= .20f)) if (MercCast("Double Strike")) return;
                  }
      and add this one i think this is the problem.
      Code:
      if (!CT.InCombat && CT.HealthPercent > .2f)
                  {
                      MercCast("Stealth");
                      while (CT.Distance > .15f) MoveTo(CT, .15f);
                      if (MercCast("Shadow Strike", CT.Distance <= .20f)) if (MercCast("Double Strike")) return;
                  }
       
    12. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      Thank you for your feed back. i will fix this and update the SVN once i get home. i have looked at the code and it look like found the error if you can edit the file go to code like 1586 and replace this


      PHP:
      if (!CT.InCombat && CT.HealthPercent .2f// initial pull
                  
      {
                      if (
      CT.Distance >= 1.0f && CT.Distance <= 3.0f) if (MercCast("Force Pull")) return;
                      if (
      StrongOrGreater(CT)) if (MercCast("Mind Crush")) return;
                      
      MercCast("Stealth");
                      while (
      CT.Distance .15fMoveTo(CT.15f);
                      if (
      MercCast("Shadow Strike"CT.Distance <= .20f)) if (MercCast("Double Strike")) return;
                  }
      with this code

      PHP:
      if (!CT.InCombat && CT.HealthPercent .2f)
                  {
                      
      MercCast("Stealth");
                      while (
      CT.Distance .15fMoveTo(CT.15f);
                      if (
      MercCast("Shadow Strike"CT.Distance <= .20f)) if (MercCast("Double Strike")) return;
                  }

      I have not tested because i am at work but i think that should fix your problem.
       
    13. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      why don't this page load
       
    14. cylak12

      cylak12 Banned

      Joined:
      Oct 13, 2012
      Messages:
      543
      Likes Received:
      0
      Trophy Points:
      0
      adude, gonna send you a pm
       
    15. adude

      adude New Member

      Joined:
      Feb 2, 2013
      Messages:
      259
      Likes Received:
      1
      Trophy Points:
      0
      i got your message, and responded. :)
       
    16. websyphen85

      websyphen85 New Member

      Joined:
      Aug 31, 2013
      Messages:
      4
      Likes Received:
      0
      Trophy Points:
      0
      Hi, just wondering something. Was using your combat routines and it seems to really bog down the system. Tried using the pure routines and it runs fine without glitching. Is there a way to reduce the amount of checks it does during combat or to offload some of the burden some how to reduce the glitch feeling?

      I ran the system with task manager open and it's never using more then 20% of the cpu, so not really sure what is causing the issue.
       
    17. Developer

      Developer New Member

      Joined:
      Jul 11, 2012
      Messages:
      799
      Likes Received:
      2
      Trophy Points:
      0
      Hi websyphen,

      As far as I know, Pure and Walter's are the only two combat routines still receiving regular updates from their developers. I know that Walter is currently refining an update to his which should eliminate some of the errors we currently experience through the use of frame locking.

      Good luck,
      -D
       
    18. CooyDK

      CooyDK New Member

      Joined:
      Nov 10, 2012
      Messages:
      135
      Likes Received:
      1
      Trophy Points:
      0
      I have encountered some problems with the bot not identifying my mount, is it Joes that does that or?
       
    19. Developer

      Developer New Member

      Joined:
      Jul 11, 2012
      Messages:
      799
      Likes Received:
      2
      Trophy Points:
      0
      Since game patch 2.0 (I think), mounts have been broken in Buddy Wing. To avoid errors, just change that line to false in your character's settings, or delete it.
       
    20. CooyDK

      CooyDK New Member

      Joined:
      Nov 10, 2012
      Messages:
      135
      Likes Received:
      1
      Trophy Points:
      0
      Where do I delite this? I have been browsing the files but cant find anywhere where I can delite the "mount" command line with out it re-enabeling it self
       
    Thread Status:
    Not open for further replies.

    Share This Page