What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal
RebornBuddy Forums

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

[Plugin] DangerDodger

Status
Not open for further replies.

buddyfu2

Member
Joined
Aug 18, 2015
Messages
47
UPG1vRN.jpg


The plugin is better than it's name, I swear.

DangerDodger is a plugin that allows the bot to kite monster and dodge dangerous spells. I have tested this plugin for almost a week now it have not had a single deaths from Storm Bearers (according to DeathLogger).
The plugin is surprisingly simple and effective. I hope you enjoy.

Obviously, I would not recommend using it on a melee character.


Description of the UI

General
Step Length: The distance the bot will walk when kiting.

Monsters
Monster Danger Radius: This represents how close a monster has to be to the character to start kiting. If no monster is withing this distance, we won't kite.
Monster Pack Size: The amount of monster near (radius 60) your character required to start kiting if Kite Monster Packs is selected.
Monster Kiting Cooldown: The timeout between each kiting step. This timeout allows your bot to cast attacks and whatnot, instead of just kiting endlessly.
Kite Monster Packs: Checking this will make the bot kite monster packs.
Kite Rare Monsters: Checking this will make the bot kite rare monsters.
Kite Unique Monsters: Checking this will make the bot kite unique monsters.

Spells
Dodge Exploding Beacon: Checking this will make the bot dodge exploding beacons created by dead magic monsters who have the Flame/Frost/Storm Bearers mod.
Dodge Bonespire: Checking this will make the bot dodge the ground DoT spikes created by monsters possessed with the Bonespire Talisman.

Contributing

You can contribute to this project via it's github repository.
https://github.com/Buddyfu/DangerDodger

Follow the steps included in the Readme and create a Pull request once you are done.

Here is an example of a Pull Request:
https://github.com/Buddyfu/DangerDodger/pull/1

If for some reason or another I become inactive, you can always continue your project off your own fork and invite other developers to fork your fork. :)

TODOs

Add the ability to dodge with movement skills.
The easiest way to do this would be to make this plugin compatible with Alcor75PlayerMover.
It is not currently compatible with Alcor75PlayerMover because I user Coroutines.MoveToLocation() for movements.
I think that Alcor75PlayerMover is only compatible with PlayerMover.MoveTowards(). However, this method does not seem to work when the bot is busy. I often saw the bot stopping the movement to start attacking when using it.
My bot does not use movement skills so this is not a priority for me at the moment.

Add the ability to dodge bosses attacks.
I will work on that soon™.

Add the ability to dodge exploding monsters (Alira's Martyr, Carrion Minion and Unstable Larvae).
I will work on that soon™.

Make the bot dodge spells forwards
At the moment, the bot will run away from Bonespire's spikes. While running away from the spikes, in most cases, the bot will also be running away from the monster casting the spikes. This can be troublesome in small environments with many doors and walls, where the bot would simply not be able to reach the monster casting the spike and be in stuck waiting for the monster to finally come close enough.
A way to fix this problem would be to make the bot dodge forwards. The bot would get outside the radius of the spikes while also positioning himself closer to the monster casting them. This require additional logic.
As a summoner, this is a not a priority for me. My minions have an easy time finding enemies even when my character cannot.

Others
If you have suggestions or ideas, feel free to post them. You can also code them yourself! :D

Changelog

Version: 0.0.1.0
Github hash: b23f433859b366d43a9d42ab46285c77c3fd15ac
Date: 24/02/2016
Comment: Initial version of the plugin


[video=youtube;x2-MCPa_3rU]https://www.youtube.com/watch?v=x2-MCPa_3rU[/video]
 

Attachments

Last edited:
Congrats! I'll test it out today and let you know. Looks great! Told you you could do it =).
 
Looks good, especially the bearers part :)

The easiest way to avoid stucking on the bonespire part would be casting the kite only if the bonespire mob is dead/non existing.
 
Last edited:
nice!
may i ask:

except bonespire and exploding beacons, is this plugin useful for low levels (for example with lightning tendrils)? Is packsize 7 a recommended value?

and for higher levels: a good equipped BF toon has maybe 1 death per hour and is 1or 2hitting everything, is it still useful to kite? I mean, will i loose clearspeed?

i will try this today
 
nice!
may i ask:

except bonespire and exploding beacons, is this plugin useful for low levels (for example with lightning tendrils)? Is packsize 7 a recommended value?

and for higher levels: a good equipped BF toon has maybe 1 death per hour and is 1or 2hitting everything, is it still useful to kite? I mean, will i loose clearspeed?

i will try this today

You shouldn't kite your good equipped boyfriend Kappa

buddyfu2 stated that it's not recommended for melee. I would consider tendrils as melee.
Of course running away will lower the clearspeed, but dying wouldn't help as well. If it's 2hitting everything I wouldn't enable the options to kite monsters.

@buddyfu2
You have nothing that is restarting the stopwatches.
 
Last edited:
I have whirling blades as a movement enhancer this is the error i get (
mt94edW.png
):

[DangerDodger] Initiating kiting.
[DangerDodger] NearestThreat.Name: [Daemon], NearestThreat.Position: [{1171, 440}], DangerCenter: [{1171, 440}]
[DangerDodger] Kiting towards a safer position. CurrentPosition: [{1171, 445}], NewPosition: [{1171, 460}]
[MoveToLocation] Now moving towards {1171, 460}. We have been performing this task for 00:00:00.2989970.
[Tick] Exception during execution:Buddy.Coroutines.CoroutineUnhandledException: Exception was thrown by coroutine ---> System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
at Loki.Game.Utilities.ComponentInformation.***​​‎‬*‎‏*‫**‏‪‬**‬‫​‬**‪**(String )
at Loki.Game.Utilities.ComponentInformation.*‪*‬​‎‫‫‎​‏‬‫*‫*‬‎‫‎​*(String )
at Loki.Game.Utilities.ComponentInformation.get_LifeComponent()
at Loki.Game.Objects.Actor.get_Auras()
at Loki.Game.Objects.Actor.HasAura(String name)
at DangerDodger.DangerDodger.<Logic>b__5(Monster m) in d:\!site\games\Path of Exile\eb 0.1.3799.156 - Ranger Reave\Plugins\DangerDodger\DangerDodger.cs:line 172
at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
at DangerDodger.DangerDodger.<Logic>d__10.MoveNext() in d:\!site\games\Path of Exile\eb 0.1.3799.156 - Ranger Reave\Plugins\DangerDodger\DangerDodger.cs:line 172
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
at Loki.Bot.Logic.Bots.OldGrindBot.OldGrindBot.afMEVG\*\*SN8-o\]X?%Y"T?;>b$.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Buddy.Coroutines.Coroutine.`u4Mo!zIcny_wWmN\]5kIf'8K#.V\.8{`KY:/C@G|4@\&ed\.b:\]CX\&.MoveNext()
--- End of inner exception stack trace ---
at Buddy.Coroutines.Coroutine.‫*‎*‏‏​​*​*‪*‬‫*​***‫‪*‫*‪‫**(Boolean )
at Buddy.Coroutines.Coroutine.*‎*‎​****‬‫‎**​‪‫‬**‎***(Boolean )
at Buddy.Coroutines.Coroutine.Resume()
at Loki.Bot.Logic.Bots.OldGrindBot.OldGrindBot.Tick()
at Loki.Bot.BotManager.*​*‏​‪**‏‬‫*​**‫‬*‫‫‬‫‪‪**(IBot )
 
nice!
may i ask:

except bonespire and exploding beacons, is this plugin useful for low levels (for example with lightning tendrils)? Is packsize 7 a recommended value?

and for higher levels: a good equipped BF toon has maybe 1 death per hour and is 1or 2hitting everything, is it still useful to kite? I mean, will i loose clearspeed?

i will try this today

This plugin will be usefull for low levels when it will support dodging bosses attacks.

As a summoner, the plugin does not really slow my clear speed, my minions still attack when I am kiting.

You shouldn't kite your good equipped boyfriend Kappa

buddyfu2 stated that it's not recommended for melee. I would consider tendrils as melee.
Of course running away will lower the clearspeed, but dying wouldn't help as well. If it's 2hitting everything I wouldn't enable the options to kite monsters.

@buddyfu2
You have nothing that is restarting the stopwatches.

I haven't tried melee actually, so maaaaaybe it works.

The beacons and bonespires stopwatch are reset inside PerformKiting().

I have whirling blades as a movement enhancer this is the error i get

Does this happen all the time? Sounds like the monster array was modified during the execution of the logic. This should happen rarely. I could add better caching to prevent that.
 
Does this happen all the time? Sounds like the monster array was modified during the execution of the logic. This should happen rarely. I could add better caching to prevent that.
It does happen all the time - the bot walks away from the bonespire on the floor - which is great, but then uses Whirling Blades to try to go back and attack it. I am playing Reave Melee, but as you can see the settings are very high for fleeing etc and never kick in.
 
Last edited:
It does happen all the time - the bot walks away from the bonespire on the floor - which is great, but then uses Whirling Blades to try to go back and attack it. I am playing Reave Melee, but as you can see the settings are very high for fleeing etc and never kick in.

  • Your bot is trying to attack the Bonespire ground effect? This is not the basic bot behavior, you must have a plugin or routine modification that makes you do that.
  • Don't use any monster kiting feature if you are melee.
  • It sounds like you are using Alcor75PlayerMover. I have not coded anything to make this plugin compatible with Alcor75PlayerMover. If you want the support, you'll have to add it yourself.
  • I'll change the way monsters are cached, to remove the exception you are getting.
 
Hmmm, kiting sounds nice - especially when you aren't melee... e.g. summoner or totemer.... I'll have to give this a try.
 
Hi,
plugin sound really great! Sadly, i cant get it working...I just have to paste the zip content into 3rd party folder right? No plugin available ... can u help me please?
 
Hi,
plugin sound really great! Sadly, i cant get it working...I just have to paste the zip content into 3rd party folder right? No plugin available ... can u help me please?

Not updated yet I guess
 
Status
Not open for further replies.
Back
Top