We have always had major issues with synchronizing the client's HP with the server and I have recently come to realize that--due to the sitting regeneration bonus--true synchronization is not possible. In the past, the server was responsible for keeping track of the client's HP, directly updating the client's HP and triggering the client's death routine, but this approach was problematic as the client's HP may have been well into the 100s when the server instructed it to die. Fortunately for us, the client sends the server its current HP level on each tic. This information was ignored in the past, as it seemed too convenient for someone to abuse, but it is entirely necessary for clients to function properly (the server will now have a rough estimate of client HP, which will be compared to the HP level sent in each update to detect any foul play).
The task at hand is to prevent the server from ever updating the client's HP directly (instructing the client to change their HP by some given amount instead of to some given amount, e.g., "You now have 250 less HP than before" vs. "You now have 1250 instead of 1500 HP") and to rely on the client to tell the server when they have perished. Shaman who love to cannibalize themselves down into the purple range will thank us!
Unfortunately, the client does not share the same level of care for its mana as it does its HP. If you played a caster on live (even up through the change that displayed your amount of mana in the UI), you should then be aware of the very obnoxious bug where it appeared you had sufficient mana to cast a spell, but the server disagreed and instructed the client to remove the mana you thought you had. The good news is that the client knows if it has the correct amount of mana to cast a spell, so perhaps it is possible to approach mana the same way we will now approach HP. This bug rarely affected casual players, but for those who sit on each and every tic to gain the meditation bonus, this was a common, annoying occurrence.
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment