10-17-2013, 07:29 PM
I was looking over the github codebase and noticed there doesn't seem to be real support for movement in combat. If you don't already have something in the works, I'd like to suggest adding a simple system based on potential fields (simple tutorial: http://aigamedev.com/open/tutorials/potential-fields/).
== Briefly described
1. create a repelling field around all aggro mobs (to avoid walking into adds and move away from mobs already engaged on us)
2. create an attracting field around our target (to keep us in range)
3. create an attracting field around our target's leash radius (to avoid accidentally running away)
3. [optionally] create a repelling pheromone trail (to avoid local optima problem; like being perfectly surrounded by mobs)
4. [if doing a fate] create an inverted field centered on the fate (to heavily penalize leaving the fate boundary)
* adjust the radius of fields #1 & #2 based on range of abilities for whatever class you're using
With just the above rules, the bot will kite fairly well (mostly useful for Archers), reposition when an aggro mob wanders nearby (useful for everyone), and most importantly look a bit more human.
It's also easily extended later on. For example, to help deal with positional abilities in party combat; field #2 can alternate between being centered on / to the side of / behind a mob as needed.
== Briefly described
1. create a repelling field around all aggro mobs (to avoid walking into adds and move away from mobs already engaged on us)
2. create an attracting field around our target (to keep us in range)
3. create an attracting field around our target's leash radius (to avoid accidentally running away)
3. [optionally] create a repelling pheromone trail (to avoid local optima problem; like being perfectly surrounded by mobs)
4. [if doing a fate] create an inverted field centered on the fate (to heavily penalize leaving the fate boundary)
* adjust the radius of fields #1 & #2 based on range of abilities for whatever class you're using
With just the above rules, the bot will kite fairly well (mostly useful for Archers), reposition when an aggro mob wanders nearby (useful for everyone), and most importantly look a bit more human.
It's also easily extended later on. For example, to help deal with positional abilities in party combat; field #2 can alternate between being centered on / to the side of / behind a mob as needed.