Results 1 to 10 of 43

Dev. Posts

Hybrid View

  1. #1
    Player Kjotu's Avatar
    Join Date
    Jun 2014
    Posts
    4
    Character
    Kjotu
    World
    Leviathan
    Main Class
    WAR Lv 99
    Quote Originally Posted by Balloon View Post
    Server strain is becoming their new PS2 Limitations - but that response is just incredibly poorly worded.

    Though transferring enmity is just a case of removing enmity for one player and adding enmity to another. I don't see what kind of strain that can really give considering near enough every JA and spell in the game adds an amount of enmity, including hitting things, and some remove enmity, like high jump, volatile lowering on it's own, and getting hit. Enmity changes are performed thousands of times per second in this game, so.. a couple of hundred thfs being able to accomplish would cause undue strain to the server? I don't see how..
    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
    (1)

  2. #2
    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.

  3. #3
    Player Ulth's Avatar
    Join Date
    Dec 2013
    Posts
    578
    Character
    Andrewviii
    World
    Valefor
    Main Class
    THF Lv 99
    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
    I'm not asking to have the range of the mobs it affects to be increased, I'm asking to increase the range of the player it is used on. If it's stored on the mob that's all the better. It just checks all the mobs AROUND THE THIEF at the same distance as before, 8.5 yalms. At which point it checks those mobs' hate list, finds the hate value for the player it was used on, who can be far away, then decreases it by an amount, and increases the thief's hate by the same amount. I don't see how that is anymore strain on the system than before. Unless the strain is from thieves actually being able to make use of it now.
    (0)