• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Default Combat Discussion

    Discussion in 'Combat Routines' started by Ama, Jan 5, 2015.

    1. Bighurt23

      Bighurt23 New Member

      Joined:
      Nov 10, 2012
      Messages:
      20
      Likes Received:
      0
      Trophy Points:
      1
      Did you get Shield Specialist fixed?
       
    2. alltrueist

      alltrueist Active Member

      Joined:
      Dec 10, 2012
      Messages:
      1,424
      Likes Received:
      16
      Trophy Points:
      38
      No one ever posted an updated rotation. I don't have a Vanguard, so I can't code/test anything.
       
    3. Bighurt23

      Bighurt23 New Member

      Joined:
      Nov 10, 2012
      Messages:
      20
      Likes Received:
      0
      Trophy Points:
      1

      Okay, How about Juggernaut Vengeance?
       
    4. alltrueist

      alltrueist Active Member

      Joined:
      Dec 10, 2012
      Messages:
      1,424
      Likes Received:
      16
      Trophy Points:
      38
      If you can post what needs to be updated I can take care of it. But I also don't have a Juggernaut. I basically only play 4 characters: Guardian, Sage, Commando, Scoundrel.
       
    5. pindleskin

      pindleskin Community Developer

      Joined:
      Oct 24, 2012
      Messages:
      1,124
      Likes Received:
      2
      Trophy Points:
      38
      Did you see my post about discipline cannot be determined dirty fix? You can incorporate changes like that but yeah you need the skill rotation first :)
       
    6. Cass

      Cass New Member

      Joined:
      Jan 24, 2014
      Messages:
      98
      Likes Received:
      2
      Trophy Points:
      0
      Lethality rotation

      Hello Folks!

      anyone with an operative could test this rotation and give some backup?

      PHP:
      public override Composite SingleTarget
              
      {
                  
      get
                  
      {
                      return new 
      PrioritySelector(
                          
      Spell.Cast("Hidden Strike"ret => Me.IsStealthed && Me.IsBehind(Me.CurrentTarget)),

                          
      //Movement
                          
      CombatMovement.CloseDistance(Distance.Melee),
                          
      Spell.Cast("Lethal Strike",    
                              
      ret => 
                              
      Me.IsStealthed)
                              ,
                          
      Spell.Cast("Lethal Strike",    
                              
      ret => 
                              
      Me.CurrentTarget.HasDebuff("Corrosive Dart") && 
                          
      //    Me.CurrentTarget.DebuffTimeLeft("Corrosive Dart") <= 2 ||
                              
      Me.CurrentTarget.DebuffTimeLeft("Corrosive Dart") >= 7)
                              ,
                          
      Spell.Cast("Corrosive Dart"
                              
      ret => 
                          
      //    Me.HasBuff("Cut Down") && 
                              
      (!Me.CurrentTarget.HasDebuff("Corrosive Dart") || Me.CurrentTarget.DebuffTimeLeft("Corrosive Dart") <= 2) &&
                              !
      Me.IsStealthed)
                              ,
                          
      Spell.Cast("Corrosive Grenade"
                              
      ret => 
                          
      //    Me.HasBuff("Cut Down") && 
                              
      (!Me.CurrentTarget.HasDebuff("Corrosive Grenade") || Me.CurrentTarget.DebuffTimeLeft("Corrosive Grenade") <= 2) &&
                              !
      Me.IsStealthed)
                              ,
                          
      Spell.Cast("Toxic Blast"
                              
      ret => 
                              
      Me.BuffCount("Tactical Advantage") < && 
                              
      Me.CurrentTarget.HasDebuff("Corrosive Dart") && 
                              
      Me.CurrentTarget.HasDebuff("Corrosive Grenade") &&
                              !
      Me.IsStealthed)
                              ,
                          
      Spell.Cast("Shiv"
                              
      ret => 
                              
      Me.BuffCount("Tactical Advantage") < && 
                              
      Me.CurrentTarget.HasDebuff("Corrosive Dart") && 
                              
      Me.CurrentTarget.HasDebuff("Corrosive Grenade") &&
                              !
      Me.IsStealthed)
                              ,
                          
      Spell.Cast("Corrosive Assault"
                              
      ret => 
                              
      Me.HasBuff("Tactical Advantage") && 
                              
      Me.CurrentTarget.HasDebuff("Corrosive Dart") && 
                              
      Me.CurrentTarget.HasDebuff("Corrosive Grenade") &&
                              !
      Me.IsStealthed)
                          
      //    ,
                          //Spell.Cast("Overload Shot",    
                          //    ret => 
                          //    Me.EnergyPercent > 85 &&
                          //    !Me.HasBuff("Tactical Advantage") && 
                          //    Spell.GetCCD("Shiv") > 1500 &&
                          //    AbilityManager.KnownAbilities(a => a.Name.Contains("Shiv")).CooldownTime > 1.5 &&
                          //    AbilityManager.KnownAbilities(a => a.Name.Contains("Toxic Blast")).CooldownTime > 1.5 &&
                          //    Spell.GetCCD("Toxic Blast") > 1500 &&
                          //    Me.CurrentTarget.HasDebuff("Corrosive Dart") && 
                          //    Me.CurrentTarget.HasDebuff("Corrosive Grenade") &&
                          //    !Me.IsStealthed)
                          //    ,
                          //Spell.Cast("Rifle Shot",
                          //    ret =>
                          //    !Me.HasBuff("Tactical Advantage") && 
                          //    Spell.GetCooldown("Shiv") > 15000 &&
                          //    Spell.GetCooldown("Toxic Blast") > 15000 &&
                          //    !Buddy.CommonBot.AbilityManager.CanCast("Shiv", Me.CurrentTarget) &&
                          //    !Buddy.CommonBot.AbilityManager.CanCast("Toxic Blast", Me.CurrentTarget) &&
                          //    Me.CurrentTarget.HasDebuff("Corrosive Dart") && 
                          //    Me.CurrentTarget.HasDebuff("Corrosive Grenade") &&
                          //    !Me.IsStealthed)
                          
      );
                  }
              }
      The rotation its sloppy when it uses rifle shot or overload shot, since GCD messes with the cancast checks, thats why its all as coment.
      How the bot get the information from the game? The game have cooldown timers, that we can see when we enable texts on game interface. Is there a way to read the game memory and get those timer values as a check? that would be an HUGE improvement on how we could tune the rotations.
       
    7. xbox

      xbox Member

      Joined:
      Feb 6, 2015
      Messages:
      45
      Likes Received:
      0
      Trophy Points:
      6
    8. willz916

      willz916 Member Legendary

      Joined:
      Jan 22, 2014
      Messages:
      303
      Likes Received:
      2
      Trophy Points:
      18
      here is my merc ars rotation its for 65 not for leveling
      Code:
      // Copyright (C) 2011-2015 Bossland GmbH
      // See the file LICENSE for the source code's detailed license
      
      using Buddy.BehaviorTree;
      using DefaultCombat.Core;
      using DefaultCombat.Helpers;
      
      namespace DefaultCombat.Routines
      {
          public class Arsenal : RotationBase
          {
              public override string Name
              {
                  get { return "Mercenary Arsenal"; }
              }
      
              public override Composite Buffs
              {
                  get
                  {
                      return new PrioritySelector(
                          Spell.Buff("High Velocity Gas Cylinder"),
                          Spell.Buff("Hunter's Boon")
                          );
                  }
              }
      
              public override Composite Cooldowns
              {
                  get
                  {
                      return new LockSelector(
                          Spell.Buff("Determination", ret => Me.IsStunned),
                          Spell.Buff("Vent Heat", ret => Me.ResourcePercent() >= 40),
                          Spell.Buff("Supercharged Gas", ret => Me.BuffCount("Supercharge") == 10),
                          Spell.Buff("Energy Shield", ret => Me.HealthPercent <= 70),
                          Spell.Buff("Kolto Overload", ret => Me.HealthPercent <= 30),
                          Spell.Buff("Thermal Sensor Override", ret => Me.ResourceStat <= 60)
                          );
                  }
              }
      
              public override Composite SingleTarget
              {
                  get
                  {
                      return new LockSelector(
                          Spell.Cast("Rapid Shot", ret => Me.ResourcePercent() < 60),
      
                          //Movement
                          CombatMovement.CloseDistance(Distance.Ranged),
      
                          //Rotation
                          Spell.Cast("Disabling Shot", ret => Me.CurrentTarget.IsCasting && !DefaultCombat.MovementDisabled),
                          Spell.Cast("Blazing Bolts", ret => Me.HasBuff("Barrage")),
                          Spell.Cast("Heatseeker Missiles", ret => Me.CurrentTarget.HasDebuff("Heat Signature")),
                          Spell.Cast("Electro Net"),
                          Spell.Cast("Rail Shot", ret => Me.BuffCount("Tracer Lock") == 5),
                          Spell.Cast("Priming Shot"),
                          Spell.Cast("Power Surge"),
                          Spell.Cast("Tracer Missile"),
                          Spell.Cast("Rapid Shots")
                          );
                  }
              }
      
              public override Composite AreaOfEffect
              {
                  get
                  {
                      return new Decorator(ret => Targeting.ShouldAoe,
                          new PrioritySelector(
                              Spell.CastOnGround("Sweeping Blasters"))
                          );
                  }
              }
          }
      }
      
       
    9. pindleskin

      pindleskin Community Developer

      Joined:
      Oct 24, 2012
      Messages:
      1,124
      Likes Received:
      2
      Trophy Points:
      38
      Why no Death From Above for AOE? Its a good damage skill but without any conditions. Single target priority is ok. Just like in the Dulfy's guide.
       
    10. robo2207

      robo2207 New Member

      Joined:
      Sep 4, 2012
      Messages:
      25
      Likes Received:
      0
      Trophy Points:
      1
      Hi all is anyone planing to do a shadow edit ??
       
    11. alltrueist

      alltrueist Active Member

      Joined:
      Dec 10, 2012
      Messages:
      1,424
      Likes Received:
      16
      Trophy Points:
      38
      What needs to be edited?
       
    12. robo2207

      robo2207 New Member

      Joined:
      Sep 4, 2012
      Messages:
      25
      Likes Received:
      0
      Trophy Points:
      1
      Whoops did a test on it seems to be fine, my bad :)
       
    13. stoiansl

      stoiansl Member

      Joined:
      Oct 9, 2012
      Messages:
      209
      Likes Received:
      1
      Trophy Points:
      18
      anyone tank with guardian ops ? SM HM ? is good to use bot ?
       
    14. alltrueist

      alltrueist Active Member

      Joined:
      Dec 10, 2012
      Messages:
      1,424
      Likes Received:
      16
      Trophy Points:
      38
      Guardian tank is very solid.
       
    15. digitalHaze

      digitalHaze New Member

      Joined:
      Nov 22, 2015
      Messages:
      12
      Likes Received:
      0
      Trophy Points:
      1
      alltrueist, did you see my bug post on Github about Shield Tech for Powertech? dicipline Cannotbedetermined
       
    16. blink18247

      blink18247 New Member

      Joined:
      Jan 19, 2010
      Messages:
      29
      Likes Received:
      0
      Trophy Points:
      1
      ^I get that same thing
       
    17. wired203

      wired203 Community Developer

      Joined:
      Jan 22, 2015
      Messages:
      391
      Likes Received:
      1
      Trophy Points:
      18
      So I worked on the rest routine back in the day and never got completely back to it. While I had resolved the run into the sunset bug when moving and initiating rest the logoff/quit menu would pop from time to time. Took a few mins and tracked that down. In rest.cs change

      Code:
      							
      While (Me.IsCasting)
              {
      		SendMessage(_swtorhWnd, (int)0x100, (IntPtr)(char)0x1b, (IntPtr)0);
      		Thread.Sleep(100);
      	}
      to

      Code:
      							
      if (Me.IsCasting)
      	{
      		SendMessage(_swtorhWnd, (int)0x100, (IntPtr)(char)0x1b, (IntPtr)0);
      		Thread.Sleep(100);
      	}
      The simple change of while to if handles it. The iscasting wouldn't always switch off as fast as it should which caused esc to be pressed twice and not just a single time. I put about 2 hours of kill grinds against this code and it worked like a champ.

      Sorry I was away so long and never got around to completing the solution for you all.
       
    18. alltrueist

      alltrueist Active Member

      Joined:
      Dec 10, 2012
      Messages:
      1,424
      Likes Received:
      16
      Trophy Points:
      38
      Okay, I just pushed this fix. You'll see it after the next bot update.
       
    19. WSFrazier

      WSFrazier Member

      Joined:
      Oct 13, 2012
      Messages:
      175
      Likes Received:
      1
      Trophy Points:
      18
      Anyone else get massive FPS drops while using this as a Combat Bot/LazyRaider? I'm talking from 90+ that drops down to 10-15 FPS.

      The computer is severely overkill for the game, so I wouldn't think it's that. It's acting like Framelock is too high or something.

      Using it has a Sage healer.
       
    20. alltrueist

      alltrueist Active Member

      Joined:
      Dec 10, 2012
      Messages:
      1,424
      Likes Received:
      16
      Trophy Points:
      38
      Healing is a bit wonky at the moment. I'd recommend using one of the other specs until Ama finds time to rewrite the healing and targeting stuff.

      If it's too bad, you can try to edit some of the LockSelectors in your rotation file to PrioritySelectors, although that will decrease the bot's effectiveness.
       

    Share This Page