Results 1 to 10 of 43

Dev. Posts

Hybrid View

  1. #1
    Player
    Join Date
    Aug 2011
    Posts
    317
    Quote Originally Posted by Kjotu View Post
    you're missing an important part of how the ability works: enmity is stored on a mob, not a player. the problem is that when a player uses accomplice on another player, the server does not have a simple way to access all enmity towards the player. the only way to get this is by iterating over every nearby mob, and iterating again over each of their enmity lists checking to see if they have enmity towards the player.

    it should be easy to see at this point that in certain situations, increasing the range could have a pretty significant impact on performance
    That's a good point, one that I didn't think of when writing. I'm not really that knowledgeable on the intricacies of enmity, but I know that the enmity stolen from accomplish is based on the user, not the target, and stops working when the user is 20.6 yalms away from the mob - Even if the target is outside this range the hate will be stolen. In that sense, I feel it just checks the enmity tables of monsters nearby the user, and not both players. So using it on a member 20 yalms away shouldn't increase or decrease the performance vs using it on a member 2 yalms away.

    I also wonder how different this operation is than casting cure on someone, in both instances hate tables have to be updated for the user and target, and the users hate table has to be updated for all the ones the target has acted on.

    That said, a lot less simple than the example I outlined, so yeah. I was wrong about that.
    (1)
    Last edited by Balloon; 08-22-2014 at 08:33 PM.