Hi Aron,
Is your path-finding system granular enough to mimic the distance management between two units? A good example of this would be this MMA fight at exactly 2:30
Notice how the two fighters rotate around a central point between them. When one sees an opening, they move in and strike, while the other backs off and defends.
I have been trying to mimic this behavior with both the AIDestinationSetter and AIPath but have been have been running into a number of issues:
Even with a specific endReachedDistance + whenCloseToDestination = CloseToDestinationMode.Stop, units still overshoot slightly when closing the gap to strike. This often results in units smashing into eachother when they both decide to attack. The overshoot distance seems arbitrary, so it’s hard for me to account for that with all the different weapon ranges I have.
Another issue I have is, after attempting to strike and then backing off, my units seem to take a step fowards before backing off. Almost as if they must walk onto the node in front of them before they’re able to move backwards. I set rotation to false during these times, so they should be simply moving to a point I’ve calculated directly behind them and just sliding on back.
I’m just wondering if maybe the system is meant for just general path-finding and not necessarily for the relatively small distances I’m dealing with during melee combat.
If it isn’t, is there a way I can temporarily disconnect these units from the A* grid while fighting and then re-connect them when finished? In that case I can write my own logic to manage melee combat specifically. Currently if I try and do that the units attempt to find their way back to the node they last moved to and…well things get weird.
Thank you for all your help so far.