• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • is it possible to use that skill tap which is used to cast all auras, after

    Discussion in 'Archives' started by Northern Light, Jul 28, 2015.

    1. Northern Light

      Northern Light Member

      Joined:
      Dec 3, 2012
      Messages:
      276
      Likes Received:
      0
      Trophy Points:
      16
      is it possible to use that skill tap which is used to cast all auras, after all auras are casted,
      as move skill tab?

      maybe I missed an config and it's already possible? :confused:
       
    2. krone6

      krone6 Member

      Joined:
      Jun 11, 2012
      Messages:
      441
      Likes Received:
      0
      Trophy Points:
      16
      What do you mean by "skill tap?" I've never heard of this and I'm confident to say I've played enough of PoE to have seen this term by now.
       
    3. pushedx

      pushedx Moderator Moderator Buddy Core Dev

      Joined:
      Sep 24, 2013
      Messages:
      4,252
      Likes Received:
      290
      Trophy Points:
      83
      I don't quite understand this either.

      If you're asking, can the Move only skill slot be used for all auras / buffs, then possibly in the future. The current routine requires a lot of aura like skills be on their own slot, but that will change in the near future.
       
    4. jobwow

      jobwow Member

      Joined:
      Jan 15, 2010
      Messages:
      110
      Likes Received:
      1
      Trophy Points:
      16
      i think he wanna talk about "cast when..."and links all the curse on it
       
    5. shaio

      shaio New Member

      Joined:
      Feb 15, 2013
      Messages:
      12
      Likes Received:
      0
      Trophy Points:
      1
      ^ I thinks hes asking for it to set the aura slot to "move only" once its cycled through the auras and cast em all.
       
    6. alcor75

      alcor75 Community Developer

      Joined:
      Nov 22, 2012
      Messages:
      376
      Likes Received:
      24
      Trophy Points:
      18
      I'm sure you all got this wrong, he is asking for some love :rolleyes:
       
    7. nomercy4you

      nomercy4you New Member

      Joined:
      Mar 29, 2012
      Messages:
      30
      Likes Received:
      0
      Trophy Points:
      0
      I think he wants something like that: With skill tab he means skill slots and you can define a slot (for example "T") for auras and movement. The bot then casts all auras (by activating the aura and swapping the skill in the slot to the next aura etc. after he finished casting auras he switches to movement skill and then moves with that slot. That means you can have 3 + 4 = 7 skill tabs / slots for your own skills. Should be possible to implement, but I am currently busy with archeage botting :)
       
    8. WhereIsMyMind

      WhereIsMyMind Member

      Joined:
      Oct 12, 2013
      Messages:
      848
      Likes Received:
      5
      Trophy Points:
      18
      +1 ^ I achieved this with code which i should try porting to a plugin.

      Code looks like this but not tested working 2.0
      I call this CheckAuras() when no target is found, if (bestTarget == null) , so it starts after the first 'combat'. So it should go somewhere else

      Code:
      
      private bool IsAuraName(string name)
              {
      Log.InfoFormat("[WIMM] Auras being checked {0}.", name);
      			// This makes sure auras on items don't get used, since they don't have skill gems, and won't have an Aura tag.
                  if (!ExampleRoutineSettings.Instance.EnableAurasFromItems)
                  {
      Log.InfoFormat("[WIMM] EnableAurasFromItems TRIGGERREEDED.");                
      				return false;
                  }
      
                  var auraNames = new string[]
                  {
                      "Anger", "Clarity", "Determination", "Discipline", "Grace", "Haste", "Hatred", "Purity of Elements",
                      "Purity of Fire", "Purity of Ice", "Purity of Lightning", "Vitality", "Wrath"
                  };
      Log.InfoFormat("[WIMM] Aura being checked, {0}, is in the aruaNames array? {1}", name, auraNames.Contains(name));
                  return auraNames.Contains(name);
              }
      
      
      _aurasChecked = false;
      _auraSlot = 2; //who used the middle mouse :p
      
      //xxx arua check if Auras need a casting priority
      		private async Task CheckAuras()
      		{
      			if (_aurasChecked == true)
      			{
      			return;
      			}
      			
      			//Get current skill in the auraslot
      			Log.InfoFormat("[WIMM] Aura backing up current skill in Aura slot {0}.", _auraSlot);	
      			var _saveSkill = LokiPoe.InGameState.SkillBarPanel.Slot2;
      
      			//check them all, cast them all. User beware.
      			foreach (var skill in LokiPoe.InGameState.SkillBarPanel.Skills)
      			{
      				if ((skill.SkillTags.Contains("aura") && !skill.SkillTags.Contains("vaal")) || IsAuraName(skill.Name))
      				{
      					Log.InfoFormat("[WIMM] Aura Found {0}.", skill.Name);					
      					if (!LokiPoe.Me.HasAura(skill.Name))
      					{
      						Log.InfoFormat("[WIMM] Aura assigning skill {0} to slot {1}, if not already assigned.", skill.Name, _auraSlot);	
      						var doCast = true;
      						while (skill.Slot == -1)
      						{
      							Log.InfoFormat("[WIMM] Now assigning {0} to the skillbar.", skill.Name);
      							var sserr = LokiPoe.InGameState.SkillBarPanel.SetSlot(_auraSlot, skill);
      							if (sserr != LokiPoe.InGameState.SetSlotError.None)
      							{
      								Log.ErrorFormat("[Logic] SetSlot returned {0}.", sserr);
      								doCast = false;
      								break;
      							}
      							await Coroutine.Sleep(Utility.LatencySafeValue(1000));
      						}
      						if (!doCast)
      						{
      							Log.InfoFormat("[WIMM] Aura cast failed for {0}", skill.Name);							
      							continue; //using continue instead of return true because there could be more than one aura
      						}
      						else
      						{
      							await Coroutines.FinishCurrentAction();
      							await Coroutine.Sleep(Utility.LatencySafeValue(1000));
      							Log.InfoFormat("[WIMM] Aura casting {0}.", skill.Name);	
      							var err1 = LokiPoe.InGameState.SkillBarPanel.Use(skill.Slot, false);
      							if (err1 == LokiPoe.InGameState.UseError.None)
      							{
      								Log.InfoFormat("[WIMM] Aura cast. No Problem. {0}.", skill.Name);	
      								await Coroutine.Sleep(Utility.LatencySafeValue(250));
      								await Coroutines.FinishCurrentAction(false);
      								await Coroutine.Sleep(Utility.LatencySafeValue(1000));
      								continue; //using continue instead of return true because there could be more than one aura
      							}
      							Log.ErrorFormat("[Logic] Use returned {0} for {1}.", err1, skill.Name);
      						}
      					}
      				}
      			}
      			//returning original auraSlot skill back 
      			Log.InfoFormat("[WIMM] Now assigning {0} to the skillbar auraslot.", _saveSkill.Name);
      			var assigningerr = LokiPoe.InGameState.SkillBarPanel.SetSlot(_auraSlot, _saveSkill);
      			if (assigningerr != LokiPoe.InGameState.SetSlotError.None)
      			{
      				Log.ErrorFormat("[Logic] SetSlot returned {0}.", assigningerr);
      			}
      			await Coroutine.Sleep(Utility.LatencySafeValue(1000));
      			Log.InfoFormat("[WIMM] Auras now assigned until bot restarted");
      			_aurasChecked = true; //so we do not have to repeat this 
      			return;
      		}
      
      wimm
       

    Share This Page