• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • WingIt - All In One

    Discussion in 'Archives' started by Neo93, May 7, 2012.

    1. xsol

      xsol Member

      Joined:
      Nov 7, 2011
      Messages:
      503
      Likes Received:
      12
      Trophy Points:
      18
      I would like add this code to Helpers:

      The code returns a count of hostiles at a location and optional will determine the count based on if a buff/debuff is in place. This is simply code I find myself using a lot and the other functions enable more complex checks.
      I want to evolve this to help check for targets that are "blinded" and switch to a new target that is not "blinded" as well as further locking down frag. grenade from breaking cc... so eventually there would be a methos that returns the first target not under n effect(s) at vector v...

      If one of you wants to make something better...

      MeleeTargets - and it's overloads return a count of targets in melee range of a location.

      an example use case for me is:
      • nbt - not blind targets
      • bt - blind targets
      • ((nbt >= 2) && bt <= 2) -> AoE

      Also I think we are going to need a master list/array of effects that we don't want to dps...

      PHP:
              public enum BuffCheckType
              
      {
                  
      HasNone,
                  
      HasAny,
                  
      HasAll
              
      }

              public 
      enum EffectType
              
      {
                  
      Buff,
                  
      DeBuff
              
      }

              
      //xsol - 11.5.2012 
              
      public static bool HasAnyBuff(TorCharacter unitstring[] buffs)
              {
                  foreach (
      string s in buffs)
                  {
                      if (
      unit.HasBuff(s))
                          return 
      true;
                  }

                  return 
      false;
              }

              
      //xsol - 11.5.2012 
              
      public static bool HasAllBuffs(TorCharacter unitstring[] buffs)
              {
                  foreach (
      string s in buffs)
                  {
                      if (!
      unit.HasBuff(s))
                          return 
      false;
                  }

                  return 
      true;
              }

              
      //xsol - 11.5.2012 
              
      public static bool HasAnyDebuff(TorCharacter unitstring[] debuffs)
              {
                  foreach (
      string s in debuffs)
                  {
                      if (
      unit.HasDebuff(s))
                          return 
      true;
                  }

                  return 
      false;
              }

              
      //xsol - 11.5.2012 
              
      public static bool HasAllDebuffs(TorCharacter unitstring[] debuffs)
              {
                  foreach (
      string s in debuffs)
                  {
                      if (!
      unit.HasDebuff(s))
                          return 
      false;
                  }

                  return 
      true;
              }

              
      //xsol - 11.5.2012 - Determines the number of hostile targets at your location.
              
      public static int MeleeTargets()
              {
                      return 
      MeleeTargets(BuddyTor.Me.CurrentTarget.Position);
              }

              
      //xsol - 11.5.2012 - etermines the number of hostile targets at a location.
              
      public static int MeleeTargets(Vector3 position)
              {
                  return 
      ObjectManager.GetObjects<Buddy.Swtor.Objects.TorNpc>().Count(
                              
      =>
                                  
      Buddy.Common.Math.Vector3.Distance(positiono.Position) <= Global.meleeDist &&
                                  
      o.IsHostile);
              }

              
      //xsol - 11.5.2012 -Determines the number of hostile target at your location.
              
      public static int MeleeTargets(Vector3 positionstring[] effectsBuffCheckType checkEffectType checkFor)
              {
                  if (
      checkFor == EffectType.Buff)
                  {
                      switch (
      check)
                      {
                          case 
      BuffCheckType.HasAll:
                              return 
      ObjectManager.GetObjects<Buddy.Swtor.Objects.TorNpc>().Count(
                                          
      =>
                                              
      Buddy.Common.Math.Vector3.Distance(positiono.Position) <= Global.meleeDist &&
                                              
      o.IsHostile &&
                                              
      HasAllBuffs(oeffects));
                          case 
      BuffCheckType.HasAny:
                              return 
      ObjectManager.GetObjects<Buddy.Swtor.Objects.TorNpc>().Count(
                                          
      =>
                                              
      Buddy.Common.Math.Vector3.Distance(positiono.Position) <= Global.meleeDist &&
                                              
      o.IsHostile &&
                                              
      HasAnyBuff(oeffects));
                          case 
      BuffCheckType.HasNone:
                              return 
      ObjectManager.GetObjects<Buddy.Swtor.Objects.TorNpc>().Count(
                                          
      =>
                                              
      Buddy.Common.Math.Vector3.Distance(positiono.Position) <= Global.meleeDist &&
                                              
      o.IsHostile &&
                                              !
      HasAnyBuff(oeffects));
                          default:
                              return 
      ObjectManager.GetObjects<Buddy.Swtor.Objects.TorNpc>().Count(
                                          
      =>
                                              
      Buddy.Common.Math.Vector3.Distance(positiono.Position) <= Global.meleeDist &&
                                              
      o.IsHostile &&
                                              
      HasAllBuffs(oeffects));
                      }
                  }
                  else
                  {
                      switch (
      check)
                      {
                          case 
      BuffCheckType.HasAll:
                              return 
      ObjectManager.GetObjects<Buddy.Swtor.Objects.TorNpc>().Count(
                                          
      =>
                                              
      Buddy.Common.Math.Vector3.Distance(positiono.Position) <= Global.meleeDist &&
                                              
      o.IsHostile &&
                                              
      HasAllDebuffs(oeffects));
                          case 
      BuffCheckType.HasAny:
                              return 
      ObjectManager.GetObjects<Buddy.Swtor.Objects.TorNpc>().Count(
                                          
      =>
                                              
      Buddy.Common.Math.Vector3.Distance(positiono.Position) <= Global.meleeDist &&
                                              
      o.IsHostile &&
                                              
      HasAnyDebuff(oeffects));
                          case 
      BuffCheckType.HasNone:
                              return 
      ObjectManager.GetObjects<Buddy.Swtor.Objects.TorNpc>().Count(
                                          
      =>
                                              
      Buddy.Common.Math.Vector3.Distance(positiono.Position) <= Global.meleeDist &&
                                              
      o.IsHostile &&
                                              !
      HasAnyDebuff(oeffects));
                          default:
                              return 
      ObjectManager.GetObjects<Buddy.Swtor.Objects.TorNpc>().Count(
                                          
      =>
                                              
      Buddy.Common.Math.Vector3.Distance(positiono.Position) <= Global.meleeDist &&
                                              
      o.IsHostile &&
                                              
      HasAllDebuffs(oeffects));
                      }
                  }
             }

              
      //xsol - 11.5.2012 
              
      public static int MeleeTargets(string[] effectsBuffCheckType checkEffectType checkFor)
              {
                  return 
      MeleeTargets(BuddyTor.Me.CurrentTarget.PositioneffectscheckcheckFor);
              }
       
    2. megapali

      megapali New Member

      Joined:
      Apr 5, 2011
      Messages:
      11
      Likes Received:
      0
      Trophy Points:
      1
      When i load wingit i get this error
      [Trace] Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
      [Trace] Loader exceptions:
      [Trace] System.IO.FileNotFoundException: Could not load file or assembly 'PostSharp, Version=2.1.0.0, Culture=neutral, PublicKeyToken=b13fd38b8f9c99d7' or one of its dependencies. The system cannot find the file specified.
      File name: 'PostSharp, Version=2.1.0.0, Culture=neutral, PublicKeyToken=b13fd38b8f9c99d7'

      WRN: Assembly binding logging is turned OFF.
      To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
      Note: There is some performance penalty associated with assembly bind failure logging.
      To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

      [Trace] Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
      [Trace] Loader exceptions:
      [Trace] System.IO.FileNotFoundException: Could not load file or assembly 'PostSharp, Version=2.1.0.0, Culture=neutral, PublicKeyToken=b13fd38b8f9c99d7' or one of its dependencies. The system cannot find the file specified.
      File name: 'PostSharp, Version=2.1.0.0, Culture=neutral, PublicKeyToken=b13fd38b8f9c99d7'

      WRN: Assembly binding logging is turned OFF.
      To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
      Note: There is some performance penalty associated with assembly bind failure logging.
      To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

      Starting Buddy Wing v0.1.701.200
      Logging in...
      The type initializer for 'Buddy.CommonBot.BotMain' threw an exception.
      at Buddy.CommonBot.BotMain.get_StatusText()
      at Buddywing.MainWindow.()
      at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
      at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
      at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
      at System.Threading.ThreadHelper.ThreadStart()

      Invalid product key!
      Authentication failed.
      Logging in...
       
    3. benj180

      benj180 Member

      Joined:
      Jan 15, 2010
      Messages:
      142
      Likes Received:
      1
      Trophy Points:
      18
      Have been testing Mara Anni lvl 50. My Mara is full Rakata, plus Black Hole boots and augmented sabers. Getting about ~1500 DPS on training dummy. Rotation works well in the real world too; tested using Neo's new Ilum Empire profile. Is it possible at this stage to add in AOE with Smash and Sweeping Slash?
       
    4. Neo93

      Neo93 Member

      Joined:
      Aug 30, 2011
      Messages:
      342
      Likes Received:
      4
      Trophy Points:
      18
      Yes, ill add it later. Please post ur experiences in the ilum quest thread.
      btw, did you use my plugin 'UseItem'?
       
    5. benj180

      benj180 Member

      Joined:
      Jan 15, 2010
      Messages:
      142
      Likes Received:
      1
      Trophy Points:
      18
      Will post feedback for you. And nope, didn't use it, should I?
       
    6. Neo93

      Neo93 Member

      Joined:
      Aug 30, 2011
      Messages:
      342
      Likes Received:
      4
      Trophy Points:
      18
      Yes. It will auto pop relicts, stims, medpacs and adrenals.
       
    7. benj180

      benj180 Member

      Joined:
      Jan 15, 2010
      Messages:
      142
      Likes Received:
      1
      Trophy Points:
      18
      Cool will have a go. Can it be configured? Would rather it only use cheap Stims/Medpacs. Having it burn through expensive ones would be a pain.
       
    8. Neo93

      Neo93 Member

      Joined:
      Aug 30, 2011
      Messages:
      342
      Likes Received:
      4
      Trophy Points:
      18
      It currently only uses the the reusable medpac, but if Ive time ill add a gui
       
    9. benj180

      benj180 Member

      Joined:
      Jan 15, 2010
      Messages:
      142
      Likes Received:
      1
      Trophy Points:
      18
      Ok cool, not a worry ;)
       
    10. xsol

      xsol Member

      Joined:
      Nov 7, 2011
      Messages:
      503
      Likes Received:
      12
      Trophy Points:
      18
      Is there a way to check the cooldown remaining on an ability?

      Code:
      AbilityManager.KnownAbilities.First<TorAbility>(a => a.Name == "Series of Shots").CooldownTime
      Only tells me what the cooldown is not the remaining cooldown time.
       
    11. in2fun

      in2fun New Member

      Joined:
      Sep 23, 2010
      Messages:
      871
      Likes Received:
      8
      Trophy Points:
      0
      Need to add protopally's Arsenal to wingit. The Mercenary in there atm doesn't work. I have not tested the pyrotech.
       
    12. Croga

      Croga Well-Known Member

      Joined:
      Jun 7, 2010
      Messages:
      1,636
      Likes Received:
      27
      Trophy Points:
      48
      Testing the Trooper - Gunnery at the moment.

      Overall it's very good! I'm running Ilum dailies without much trouble. There are some tweaks that could improve it though:
      - At the moment it doesn't interrupt at all. Stockstrike and Cryo grenade could be used for this.
      - At the moment it doesn't use any AOE at all. Mortar Volley is still one of the most devastating AOEs in the game, even after the nerf.
      - It will use the full duration of Reload every time it needs to even reload a small part of it's health/ammo.

      The more difficult part is where the CC will use a Boss-rotation even on small grouped mobs. This mainly affects the use of Ammo which it is very conservative with. I don't know if there's even a decent way to remedy this. It would be a nice improvement but I wouldn't spend too much time on that at the moment.
       
    13. in2fun

      in2fun New Member

      Joined:
      Sep 23, 2010
      Messages:
      871
      Likes Received:
      8
      Trophy Points:
      0
      I believe the gunnery and arsenal are same just different sides?

      The improvements arsenal would need,
      Use railshot, everytime when possible. Spec improves dmg on it.
      It does use kolto heal but not other 2 normal type heals.
      Agree with above post, death from above would be awesome.
      Also see when mob dies early while unload, but bot waits like still going.

      Will try to think of more. At work.
       
    14. xsol

      xsol Member

      Joined:
      Nov 7, 2011
      Messages:
      503
      Likes Received:
      12
      Trophy Points:
      18
      Last edited: May 14, 2012
    15. Deevoon

      Deevoon New Member

      Joined:
      Dec 4, 2011
      Messages:
      115
      Likes Received:
      1
      Trophy Points:
      0
      Low level Shadow working ok. :)
       
    16. Neo93

      Neo93 Member

      Joined:
      Aug 30, 2011
      Messages:
      342
      Likes Received:
      4
      Trophy Points:
      18
      #Rewritten Sorcerer Corruption / Sage Seer. Please test, thank you.

      @protopally
      Please change the resource stats in your commando cc's. You should NEVER fall under 7 Cells, except u can recharge your cells.

      Use this website for rotations and theorycrafting. (or other guides, but they should be good)
       
      Last edited: May 13, 2012
    17. protopally

      protopally Member

      Joined:
      Jan 15, 2010
      Messages:
      391
      Likes Received:
      8
      Trophy Points:
      18
      i dont need a guide mate i play nighmare lvl endgame as commando lol

      these are currently works in progress will improve them as i figure stuff out. my current priority is to get it working lazyraider style so i can test my CC's in OP/HM FP evironments

      also gona try to incorporate a burn phase mechanic that pops CD's And Trinkets
       
      Last edited: May 13, 2012
    18. protopally

      protopally Member

      Joined:
      Jan 15, 2010
      Messages:
      391
      Likes Received:
      8
      Trophy Points:
      18
      @Croga & in2fun will ad aoe to rotation when somone else figures out how to do aoe detection with out breaking CC then i will steal it :p
       
    19. tokyov

      tokyov Member

      Joined:
      Dec 8, 2010
      Messages:
      69
      Likes Received:
      0
      Trophy Points:
      6

      what did you change for corruption? Does it heal in groups?
       
    20. in2fun

      in2fun New Member

      Joined:
      Sep 23, 2010
      Messages:
      871
      Likes Received:
      8
      Trophy Points:
      0
      @protopally.
      Maybe make two CC's? 1 with all aoe's, other without. then let user decide which to use?
      And the one now pulls with fusion missile.. thats AOE... wouldnt it break CC? Im just using my merc to farm so no worry with breaking CC's.
       
      Last edited: May 13, 2012

    Share This Page