mursie wrote:Ok - please pardon my stupidity on this topic but I don't understand the following:
If the client calculates its own stats, on top of the server's base stats, but those calculated internal stats are not at all responsible for or determine the actual output that I do to an opponent.... then why have this at all. I would much rather know what the server is actually calculating (both base and buff) for my character. At the end of the day, much like the bolster issue, if my client character sheet is telling me i have 754 strength, this # is irrelevant to me. All that matters is the number the server actually believes I have, as that is the number that will determine how hard I hit an opponent. And it is that server side number that I will want to try and min/max around when making tali/pot/buff/gear choices.
Am I completely missing something? Please help educate me.
I think I read your question a little differently than Aza. If you are asking,
What is the point of having the client calculate stats separate from the server, then the answer is probably, "Performance."
The single packet taking the largest amount of bandwidth by far is the packet that sends a player's active buffs to the client every second. If I'm remembering Aza's lectures correctly, the client
is completely incapable of remembering buffs. It needs to be refreshed constantly, and the packet that carries this data is very bloated. After all, it not only needs to carry your buffs, but also the buffs of all the players near you.
So if you need to send a player's stats to them in the buff-update packet (which you have to, because stats change as soon as buffs change), you'd add another 20 some key-value pairs and the size of the packet data increases by about 64B per player... Which doesn't seem like a lot, but in RvR, with 200 players fighting at a keep... that's 12.5KB per packet, and you're sending 200 packets... Oh look, you're using an extra 2.5MB of bandwidth every second.
Instead, just let the client calculate that data and take the load off the servers. Who care's if it's not 100% accurate all the time, at least it means you're getting more than 5 fps.