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

Trinity Avoidance

xzjv

Community Developer
Joined
Mar 17, 2014
Messages
1,243
Reaction score
46
This thread is to provide information about the new avoidance system, how it can be configured and how you can help improve it. Please use this thread to report avoidance specific issues.


What's good about the new system?


  • We can avoid beyond just circular things. It can track the rotation of arcane sentry, the streaks of poison enchanted and avoid custom shaped areas in front of monsters with complex area attacks.
  • Degrees of danger - the bot understands that a place where multiple avoidance are stacking is more dangerous and therefore make more intelligent decisions. This is especially useful when avoidance is everywhere and there really is no safe place to stand, when the lesser of evils needs to be chosen.
  • Kiting for all - Previously kiting only worked on some classes/builds and not for others.
  • Performance - The new system uses a small grid and there is an enrichment phase where it goes through every spot nearby and records information about whats going on at that position - are there monsters, avoidance, obstacles standing on top of it etc. Once that costly work is done it is very fast to search through it.
  • Modular/Extensible - The information about stuff / 'what should be avoided' is separate from the 'doing something about it'. New 'Avoiders' can be written to make different or better decisions about how to avoid, where and when to move. 'AvoidanceHandlers' can easily be added/switched which control the area to be avoided; Any settings the author wishes to expose will show up in the Settings UI automatically.
  • Easy to add avoidance. There is a single file which describes each avoidance in detail. These are objects that can be built up with more information as time goes on.
  • Debugging on Visualizer - You can watch the visualizer to see in real-time which areas have been flagged as things to avoid, the areas that can be walked on, are safe, should be kited from, have a monster standing on top of them etc.

Whats the Current Status?

Enrichment:
Most avoidance types are now supported in the enrichment phase, meaning that they can be detected properly and mark the correct areas to be avoided. Work still needs to be done to add more, particularly for rift boss fights and campaign boss fights.

Default Avoider:
The movement when avoiding and when to avoid are still a work in progress. There are currently some conflicts to be resolved. In particular, some tasks are not being done because the bot is busy avoiding/kiting like casting spells. Some monsters, objects and items are either not being targeted or being targeted when they shouldn't be.


How can i configure it?


Avoidance settings are located in the Trinity Settings/Config window. There is a main/top tab labelled 'Avoidance'.

Ground Effects Tab

Here you can configure each type of avoidance. The settings available for each will vary. 'Health Threshold Pct' determines how low your health must drop before it will be avoided. 'Distance Multiplier' allows you to increase or decrease the area to be avoided.

Avoidance_GroundEffects.webp


Kiting Tab


Here you can configure the bot to continually try to keep its distance from monsters.

To enable kiting, choose an option for 'When to Kite' other than 'Never'


  • Distance from Monster: This distance added on top of the monster's collision radius. So that means you'll be the same distance from both a really fat monster and a really skinny one. Something in the range of 10-20 should work well for ranged classes.
  • Kite Health %: Kiting will not occur if the players' health is above the value you specify. So if you want it to always kite then leave it at the default of 100%
  • Stutter Delay (ms): This is how often (in milliseconds) the bot will stop kiting for a bit to allow other things to happen, like attacking. A value of 1000ms should cause the bot to move away from monsters for one second, then do other things for [Stutter Duration] then continue kiting and so on.
  • Stutter Duration (ms): This is how long to wait and do other things for, once kiting has stopped.
  • Weight Amount: You probably don't want to mess with this setting. When nodes around monsters are flagged as 'KiteFrom' during enrichment they are also given a small weight, this allows kiting to be considered a small amount when selecting avoidance safe spots.

Avoidance_Kiting.webp


Misc Tab

Here you can configure settings related to avoidance that don't fit anywhere else.

Avoidance_Misc.webp


Advanced Tab

Here you can configure advanced settings; be warned though, you can really make it not work well by messing with these.

Avoidance_Advanced.webp



Understanding Avoidance on Visualizer

Visualizer can be opened from the Trinity tab on the main DB Window. The button is labelled 'Open Visualizer'

Avoidance_Visualizer_Button.webp

Map Area: Use mouse scroll wheel to zoom. Click and drag to pane/move around. Click on things to see details of the object or the nodes underlying (works best while paused).

Bottom Pane: Shows the current targeting cache objects and their weights. Expandable by clicking arrow button, Panel can be re-sized by dragging on edge.

Right Pane: Shows various accordion panels with settings and information. Expandable by clicking arrow button, Panel can be re-sized by dragging on edge.

Start Thread Button: Can be used to view the map for debugging while the bot is not running. Useful if you are dead for example so just stay dead but be able to explore how things are being weighted around you. Does not play nicely while the bot is running.

Pause Button: Does the same thing as clicking the pause button on the main DB window. You will need to un-pause from the visualizer if you paused it there.

Avoidance_Visualizer_A.webp

Note: The visualizer shows the real-time current state of node flags, so if you have it configured for a certain type of ground effect to not be avoided then it will not show up on the map.

Avoidance_VisualizerB.webp




More Info Coming Soon.
 
Last edited:
Back
Top