• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Buddywing New patch issues

    Discussion in 'Buddy Wing Support' started by scaasi, Jul 23, 2015.

    1. scaasi

      scaasi Member

      Joined:
      Jul 10, 2015
      Messages:
      43
      Likes Received:
      0
      Trophy Points:
      6
      Hi all,

      I've just attempted to edit my profiles for PVP, however after being saved and restarting buddywing I'm told that no class routines were loaded. This is what I see in the UI

      App Path: E:\Utils\Buddywing\Buddywing.exe
      User is a Trooper
      Advanced Class: Vanguard / Discipline: Tactics
      Routine Path: Routines
      Buddy Wing: The Old Robot is ready!

      All I'm doing is adding some spells to the rotation. Is anyone else having this issue? and here is the script below

      Code:
      using Buddy.BehaviorTree;
      using DefaultCombat.Core;
      using DefaultCombat.Helpers;
      
      namespace DefaultCombat.Routines
      {
          public class Tactics : RotationBase
          {
              public override string Name { get { return "Vanguard Tactics"; } }
      
              public override Composite Buffs
              {
                  get
                  {
                      return new PrioritySelector(
                          Spell.Buff("High Energy Cell"),
                          Spell.Buff("Fortification")
                          );
                  }
              }
      
              public override Composite Cooldowns
              {
                  get
                  {
                      return new LockSelector(
                          Spell.Buff("Tenacity", ret => Me.IsStunned),
                          Spell.Buff("Recharge Cells", ret => Me.ResourcePercent() <= 50),
                          Spell.Buff("Reactive Shield", ret => Me.HealthPercent <= 60),
                          Spell.Buff("Adrenaline Rush", ret => Me.HealthPercent <= 30),
                          Spell.Buff("Reserve Powercell", ret => Me.ResourceStat <= 80),
                          Spell.Buff("Battle Focus")
                          );
                  }
              }
      
              public override Composite SingleTarget
              {
                  get
                  {
                      return new LockSelector(
                          //Movement
                          Spell.Cast("Storm", ret => Me.CurrentTarget.Distance >= 1f && !DefaultCombat.MovementDisabled),
                          CombatMovement.CloseDistance(Distance.Melee),
      
                          new Decorator(ret => Me.ResourcePercent() > 40,
                              new LockSelector(
                                  Spell.Cast("High Impact Bolt", ret => Me.HasBuff("Tactical Accelerator")),
                                  Spell.Cast("Hammer Shot", ret => Me.ResourceStat <= 60),
                                  )),
      
                          Spell.Cast("Riot Strike", ret => Me.CurrentTarget.IsCasting && !DefaultCombat.MovementDisabled),
                          Spell.Cast("Cell Burst", ret => Me.BuffCount("Energy Lode") == 4),
                          Spell.Cast("High Impact Bolt", ret => Me.CurrentTarget.HasDebuff("Bleeding (Gut)") && Me.HasBuff("Tactical Accelerator")),
                          Spell.Cast("Sonic Round"),
                          Spell.DoT("Gut", "Bleeding (Gut)"),
                          Spell.Cast("Assault Plastique"),
                          Spell.Cast("Stock Strike"),
                          Spell.Cast("Tactical Surge", ret => Me.Level >= 26),
                          Spell.Cast("Ion Pulse", ret => Me.Level < 26)
                          Spell.Cast("Shoulder Cannon"),
                          Spell.Cast("Neural Jolt")
                          );
                  }
              }
      
              public override Composite AreaOfEffect
              {
                  get
                  {
                      return new LockSelector(
                          new Decorator(ret => Targeting.ShouldAOE,
                              new LockSelector(
                                  Spell.CastOnGround("Morter Volley"),
                                  Spell.Cast("Sticky Grenade", ret => Me.CurrentTarget.HasDebuff("Bleeding (Retractable Blade)"))
                                  )),
                          new Decorator(ret => Targeting.ShouldPBAOE,
                              new LockSelector(
                                  Spell.Cast("Pulse Cannon"),
                                  Spell.Cast("Explosive Surge"))
                      ));
                  }
              }
          }
      }
      
      
      The changes that were made are the following:

      Added:

      Spell.Cast("Shoulder Cannon"),
      Spell.Cast("Neural Jolt")
      Spell.Cast("Hammer Shot", ret => Me.ResourceStat <= 60),
      Spell.Buff("Tenacity", ret => Me.IsStunned),


      I did manage to get the but running without making any changes to the profile however all it did was sit and use hammer shot for 75% of the time

      Any help would be much appreciated.
       
    2. Cryogenesis

      Cryogenesis Moderator Moderator

      Joined:
      Jul 13, 2010
      Messages:
      2,128
      Likes Received:
      13
      Trophy Points:
      38
      try this:
      Code:
      using Buddy.BehaviorTree;
      using DefaultCombat.Core;
      using DefaultCombat.Helpers;
      
      namespace DefaultCombat.Routines
      {
          public class Tactics : RotationBase
          {
              public override string Name { get { return "Vanguard Tactics"; } }
      
              public override Composite Buffs
              {
                  get
                  {
                      return new PrioritySelector(
                          Spell.Buff("High Energy Cell"),
                          Spell.Buff("Fortification")
                          );
                  }
              }
      
              public override Composite Cooldowns
              {
                  get
                  {
                      return new LockSelector(
                          Spell.Buff("Tenacity", ret => Me.IsStunned), //Dont think this condition is needed, as you cant use these spells when not stunned
                          Spell.Buff("Recharge Cells", ret => Me.ResourcePercent() <= 50),
                          Spell.Buff("Reactive Shield", ret => Me.HealthPercent <= 60),
                          Spell.Buff("Adrenaline Rush", ret => Me.HealthPercent <= 30),
                          Spell.Buff("Reserve Powercell", ret => Me.ResourceStat <= 80),
                          Spell.Buff("Battle Focus")
                          );
                  }
              }
      
              public override Composite SingleTarget
              {
                  get
                  {
                      return new LockSelector(
                          //Movement
                          Spell.Cast("Storm", ret => Me.CurrentTarget.Distance >= 1f && !DefaultCombat.MovementDisabled),
                          CombatMovement.CloseDistance(Distance.Melee),
      
                          new Decorator(ret => Me.ResourcePercent() > 40,
                              new LockSelector(
                                  Spell.Cast("High Impact Bolt", ret => Me.HasBuff("Tactical Accelerator")),
                                  Spell.Cast("Hammer Shot", ret => Me.ResourceStat <= 60)
                                  )),
      
                          Spell.Cast("Riot Strike", ret => Me.CurrentTarget.IsCasting && !DefaultCombat.MovementDisabled),
                          Spell.Cast("Cell Burst", ret => Me.BuffCount("Energy Lode") == 4),
                          Spell.Cast("High Impact Bolt", ret => Me.CurrentTarget.HasDebuff("Bleeding (Gut)") && Me.HasBuff("Tactical Accelerator")),
                          Spell.DoT("Gut", "Bleeding (Gut)"),
                          Spell.Cast("Assault Plastique"),
                          Spell.Cast("Stock Strike"),
                          Spell.Cast("Tactical Surge", ret => Me.Level >= 26),
                          Spell.Cast("Ion Pulse", ret => Me.Level < 26),
      					Spell.Cast("Shoulder Cannon"),
      					Spell.Cast("Neural Jolt")
                          );
                  }
              }
      
              public override Composite AreaOfEffect
              {
                  get
                  {
                      return new LockSelector(
                          new Decorator(ret => Targeting.ShouldAOE,
                              new LockSelector(
                                  Spell.CastOnGround("Morter Volley"),
                                  Spell.Cast("Sticky Grenade", ret => Me.CurrentTarget.HasDebuff("Bleeding (Retractable Blade)"))
                                  )),
                          new Decorator(ret => Targeting.ShouldPBAOE,
                              new LockSelector(
                                  Spell.Cast("Pulse Cannon"),
                                  Spell.Cast("Explosive Surge"))
                      ));
                  }
              }
          }
      }
      
      If you use Notepad++ use the addon Compare to see whats different between your and my code.
       
    3. scaasi

      scaasi Member

      Joined:
      Jul 10, 2015
      Messages:
      43
      Likes Received:
      0
      Trophy Points:
      6
      Thanks dude I'll give it a try

      Btw "Spell.Buff("Tenacity", ret => Me.IsStunned), " i've noticed in pvp will be used during slow effects if you dont have "the me.isstunned" line in there
       
    4. Aevitas

      Aevitas Well-Known Member Staff Member Buddy Core Dev

      Joined:
      Mar 2, 2010
      Messages:
      2,307
      Likes Received:
      36
      Trophy Points:
      48
      Code:
      Spell.Cast("Ion Pulse", ret => Me.Level < 26)
      You forgot a comma after that.
       
    5. scaasi

      scaasi Member

      Joined:
      Jul 10, 2015
      Messages:
      43
      Likes Received:
      0
      Trophy Points:
      6

      Thanks bro, you've helped me solve the issue, however howcome the UI no longer indicates syntax errors?
       
    6. alltrueist

      alltrueist Active Member

      Joined:
      Dec 10, 2012
      Messages:
      1,424
      Likes Received:
      16
      Trophy Points:
      38
      Just use Visual Studio; it's free.
       

    Share This Page