• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • SRS Routine

    Discussion in 'Archives' started by papagal, Dec 20, 2015.

    1. papagal

      papagal Member

      Joined:
      Dec 11, 2014
      Messages:
      68
      Likes Received:
      0
      Trophy Points:
      6
      This is based on the Incinerate routine that alcor75 posted - only difference is that Incinerate is replaced by SRS.

      Single target slot set to SRS, all others to -1. Combat range 65, Max Range Range 35 (we can afford more range than incinerate, since SRS travels on it's own), Always attack in place.

      Still testing, but seems to work better than OldRoutine for me. Might look into updating it from current OldRoutine, since there are aura changes and such, but that may turn out to be out of my league :)

      Let me know what you guys think.
       

      Attached Files:

    2. DontBeAfraid

      DontBeAfraid Active Member

      Joined:
      Oct 2, 2015
      Messages:
      742
      Likes Received:
      30
      Trophy Points:
      28
      hmm, the old routine works better for me. there he almost perma casts. on your plugin he casts, stops, casts, stops. losing a lot of dps
       
    3. papagal

      papagal Member

      Joined:
      Dec 11, 2014
      Messages:
      68
      Likes Received:
      0
      Trophy Points:
      6
      Could be gear level, not sure. I don't see more than 22-23 spirits with oldroutine, and this pushes 40+ on bosses.
       
    4. DontBeAfraid

      DontBeAfraid Active Member

      Joined:
      Oct 2, 2015
      Messages:
      742
      Likes Received:
      30
      Trophy Points:
      28
      hmm, well i tested it with a lvl 40/60 and 75 char now.
      at least the 75s one could pull 40 spirits when i manually play. old routine pulls maybe 30-35
      the srsroutine maybe 15 :O
       
    5. papagal

      papagal Member

      Joined:
      Dec 11, 2014
      Messages:
      68
      Likes Received:
      0
      Trophy Points:
      6
      What's your range'd range set to? Even though my post says 35, i'm actually running it at 55. If that's doesn't help then i'm at a loss :) If OldRoutine pulls 30-35 then you don't really need this.
       
    6. DontBeAfraid

      DontBeAfraid Active Member

      Joined:
      Oct 2, 2015
      Messages:
      742
      Likes Received:
      30
      Trophy Points:
      28
      never touched the range. so its 35 by default.

      it only works when i have srs on 3, zombies on 4, totem of 5, golem on 6 and auras on 7-8. and ofc only srs bound in the bot as single target and nothing else.
      any other order apparently messes it up and it stutters while casting again. a logic behind the behavior i havent found yet to be honest.
       
    7. sxowe

      sxowe New Member

      Joined:
      Aug 6, 2014
      Messages:
      115
      Likes Received:
      0
      Trophy Points:
      0
      Okay dang, I'm not using the routine he gave cause its looking like it does nothing. But the problem I'm having is the SRS casts, stops, casts, stops, casts, stops, so on so forth... Why cant it just perma cast, I think I have my settings set right for the oldroutine but I may be missing something. Anyone got a fix to this? Driving me insane...
       
    8. Unknown Buddy

      Unknown Buddy Member

      Joined:
      May 20, 2015
      Messages:
      603
      Likes Received:
      17
      Trophy Points:
      18
      It casts / stops / casts / stops because thats how default routine handles casting all spells. What papagal tried to do with this routine was imitate what Alcor did with the Incinerate Routine. Which will basically hold down the SRS key instead of tapping it. If thats not what this routine is doing, then papagal may have implemented something incorrectly, but at least he gave it a shot.

      If you really want to get SRS to behave like Incinerate does in the Incinerate Routine, you will have to take the time to look at how Alcor was handling Incinerate. Its actually really simple if you know how to use notepad and cntrl + f. Make those few changes and give it a shot.
       
    9. papagal

      papagal Member

      Joined:
      Dec 11, 2014
      Messages:
      68
      Likes Received:
      0
      Trophy Points:
      6
      That's exactly what I did - Alcor had a conditional to use the "hold down" method if the spell is incinerate, so i changed it to SRS, and it does work for me. You have to keep in mind that it "holds" the button down as long as it has a target, so when your target dies it stops and acquires a new target to cast at. Still works quite well for me on rares and uniques, cause it basically casts continuously until it dies, pushing me over 40 skulls.
       
    10. sxowe

      sxowe New Member

      Joined:
      Aug 6, 2014
      Messages:
      115
      Likes Received:
      0
      Trophy Points:
      0
      Then I shall give it a try, thx
       
    11. sxowe

      sxowe New Member

      Joined:
      Aug 6, 2014
      Messages:
      115
      Likes Received:
      0
      Trophy Points:
      0
      okay, it seems to be much better than the default. However it does still stop and go a bunch. Keep up with the testings and let us know if any update happens~
       
    12. papagal

      papagal Member

      Joined:
      Dec 11, 2014
      Messages:
      68
      Likes Received:
      0
      Trophy Points:
      6
      Not much of a chance for me to fix that, it would basically require the bot to cast continuously as long as there are mobs in combat range - without targeting any specific one, which is beyond my ability.
       
    13. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,770
      Likes Received:
      35
      Trophy Points:
      48
      well, don' take care of the target, just check surrounding mobs (might be intensive tho)

      Code:
      LokiPoe.ObjectManager.GetObjectOfType<Monster>().Any(m => !m.IsDead && m.IsHostile && m.Distance <= X ...);
      add any checks to that to fit your needs

      // EDIT //

      Note that objects are refreshed 120y away max
       
    14. Pochizzle

      Pochizzle Member

      Joined:
      Mar 5, 2012
      Messages:
      204
      Likes Received:
      0
      Trophy Points:
      16
      This is awesome, and works a lot better then the oldroutine.

      My only complaint is that it won't summon flame golem for me, and if it could cast flesh offering I would donate if you had the option to do so.
       
    15. infozeta

      infozeta Member

      Joined:
      Jan 15, 2010
      Messages:
      39
      Likes Received:
      1
      Trophy Points:
      6
      Uhm why is not using golem ? :D
       
    16. papagal

      papagal Member

      Joined:
      Dec 11, 2014
      Messages:
      68
      Likes Received:
      0
      Trophy Points:
      6
      I'll see if I can make updates to this, but time is limited so it might take awhile. Thanks for the pointers toNyx.
       
    17. Pochizzle

      Pochizzle Member

      Joined:
      Mar 5, 2012
      Messages:
      204
      Likes Received:
      0
      Trophy Points:
      16
      That would be awesome.

      Would be really great with Flesh Offering, and Chaos Golem. For some reason it is casting flame golem fine, but won't cast Chaos.
       
    18. WiN

      WiN Member

      Joined:
      Sep 2, 2014
      Messages:
      294
      Likes Received:
      15
      Trophy Points:
      18
      This routine works really well - no cast delay - good work.

      I would suggest adding in the Vaal Haste code from here: https://www.thebuddyforum.com/exilebuddy-forum/235291-casting-vaal-haste.html as Vaal Haste is now the default burst damage for SRS. I run Vaal Discipline, so that code also works for it with a little modification using the energy shield percentage detection.

      When the character gets into the "oh shit moments" and the zombie meat shield gets killed, he tries to keep recasting zombies before using the SRS which is a problem because they often get killed again almost immediately, and we aren't outputting any damage to deal with the actual mob causing the problem. So to counter this I would suggest adding a "count seconds delay" to the raise zombies of 3-5 seconds by setting a timer:

      Code:
      private readonly Stopwatch _zombieStopwatch = Stopwatch.StartNew();
      adding the delay to the routine:
      Code:
      if (_raiseZombieSlot != -1 &&
      _zombieStopwatch.ElapsedMilliseconds > 5000)
      and resetting the timer:

      Code:
      Log.InfoFormat("[Logic] Using {0} on {1}.", skill.Name, target.Name);
      _zombieStopwatch.Restart();
       
    19. WiN

      WiN Member

      Joined:
      Sep 2, 2014
      Messages:
      294
      Likes Received:
      15
      Trophy Points:
      18
      To make Flesh Offering work:

      Add this around line 50:
      Code:
      private int _FleshOfferingSlot = -1;
      this around line 65 (change the delay to the duration of your flech offering from the tool tip:
      Code:
      private readonly Stopwatch _fleshOfferingStopwatch = Stopwatch.StartNew();
      private int _timeBetweenOfferings = (3000);
      this around 470 with the others:

      Code:
      var fo = LokiPoe.InGameState.SkillBarPanel.Skills.FirstOrDefault(s => s.Name == "Flesh Offering");
      if(fo != null) _FleshOfferingSlot = fo.Slot;
      This just before the SRS routine which starts if (_summonRagingSpiritSlot != -1)

      Code:
      if (_FleshOfferingSlot != -1)
      {
      
      	if(_fleshOfferingStopwatch.ElapsedMilliseconds > _timeBetweenOfferings)
      	{
      		var skill = LokiPoe.InGameState.SkillBarPanel.Slot(_FleshOfferingSlot);
      		if (skill.CanUse())
      		{
      			if (skill.NumberDeployed < 1)
      			{
      				// Check for a target near us.
      				var target = BestDeadTarget;
      				_fleshOfferingStopwatch.Restart();
      				if (target != null)
      				{
      					//await DisableAlwaysHiglight();
      					Log.InfoFormat("[wimm] flesh offering, there is a corpse");
      
      					var uaerr = LokiPoe.InGameState.SkillBarPanel.Use(_FleshOfferingSlot, true);
      					if (uaerr == LokiPoe.InGameState.UseError.None)
      					{
      						Log.ErrorFormat("[wimm] flesh offering cast");
      						await Coroutines.FinishCurrentAction(false);
      						await Coroutine.Sleep(Utility.LatencySafeValue(100));
      						return true;
      					}
      					Log.ErrorFormat("[wimm] flesh offering problem");
      				}
      				else
      				{
      					Log.InfoFormat("[wimm] flesh offering already up or no corpses");
      				}
      			}
      		}
      		_fleshOfferingStopwatch.Restart();
      	}
      }
      This code is courtesy of WIMM - I just moved the actual routine into the combat section so that it doesn't keep casting when you run around.
       
      Last edited: Jan 14, 2016
    20. DontBeAfraid

      DontBeAfraid Active Member

      Joined:
      Oct 2, 2015
      Messages:
      742
      Likes Received:
      30
      Trophy Points:
      28
      what clear times per map do you guys have with your srs builds in average if i may ask? mine are kinda .. semi optimal :O
       

    Share This Page