Hi All
I have been using the WRotation for a long time and it release me from pressing keys on keyboard. So I can focus more on PvE strategy and movement.
By using Fighter Class, we are able to create highy customiable, well functioning combat rotation without write any code. This is powerful.
However, the WRotation should implement another important system, that is auto changing target if necessary.
Let's say you are a Tank, so by definition, you need to keep all mobs attacking you, this means you have to target any mobs that are not attacking you and taunt them/apply treats.
And maybe you need to save your unfortunate teammate from death. So you may want to give hands of protection to your teammate if you are paly.
As a healer, you need to switch target frequently and save them. (By browsing this forum, I find that there are lots of requests about building Healer FighterClass profile or Plugin or something relates to it)
Even for dps, you need to switch target between ADD and Boss by a specific killing priority.
Therefore, I was wondering if we can have a targeting system that can let user to define how to switch target. just like FighterClass that allows user to customize Rotation.
So we can have our own strategy, combines with FighterClass system, WRobot can build a much more intelligent products.
Other functions that can be expanded on targeting system with strategy:
1, pulling, if current in battle mobs is less than X, targeting nearby mobs that is not in combat.
2, "prove of kill", if you are near a world boss or quest boss and somebody else is attacking it. you just need to simply attack the boss once and you can leave and do something else if you don't want to possibility get "dirty".
3, "kill stealing", in battleground, you are more likely want to steal some kills, this means you will always target the player will lowest heath percent or somebody's heath percent is lower than 10%.
4, ass saving/pro player mode, you got 3 mobs attacking you, you want to stun one of them and silence the other and then attacking the third mob, which has lowest health.
...
Implementation Analysis:
There are two ways that can involve targeting system:
1, Create another separate system. Can be a sub system in Rotation or a Plugin
All you need is a priority queue, that stores the targeting strategy, e.g
For tank:
0, <type:hostile target, condition: target is casting == true>
1, <type:hostile target, condition: target targeting != me>
2, <type:teammate, condition: target health percent < 20%>
3,<type:hostile target, condition: target is elite>
4,<type:hostile target, condition: none>
For healer:
1, <type:tank, condition:target health percent < 80% >
2, <type:teamate, condition: target health percent < 40%>
3, <type:hostile target> // if everyone is in good health, the healer can do some dps
2, Embed in Filght Class
Add a target condition to each spell, so we can specify what target to choose.
we do have a target condition in Fighter Class now, but it is not powerful enough to make some condition on them
Combine with Targeting system, in theory, the user can build Raiding Rotation as good as TuanHA in Honorbuddy.
Thank you for your patience to read my post and forgive my BAD ENGLISH if there is something makes no sense....