Page 1 of 1
Damage type in combat log
Posted: Sat Jul 20, 2024 4:38 am
by ShadowWar
It would be SUPER helpful and informative to players if the damage log included the type to it as well. When reviewing damage logs, we get the amount and the name, and then if you want to know how to reduce it, you have to go outside game to do a lookup and find out it is, not a great experience for players.
Re: Damage type in combat log
Posted: Sat Jul 20, 2024 8:25 am
by Omegus
Sadly not possible.
The combat log text is not sent by the server. Instead, the server sends the minimal info needed (ability ID, target, damage/healing done, parry/absorb/etc, mitigation) and the client itself generates the text automatically for the combat log. It is possible to change the format/layout of the text that appears but impossible to add extra information to it.
For example, the client uses this special text to put the details of when you are hit by someone into the combat log:
<<C:1>>'s <<2>> <<3[critically hits/hits]>> you for <<5>> damage.
<<C:1>> is replaced with the attacker's name
<<2>> is replaced with the ability name
<<3[critically hits/hits]>> is changed depending on whether it was a crit or not
<<5>> is replaced with the numerical damage
The mitigated and absorbed information is then tagged onto the end by appending a couple of extra bits of text with numbers replaced:
(<<1>> absorbed)
(<<1>> mitigated)
Where <<1>> is the relevant absorbed/mitigated number.
The game is setup this way as it significantly reduces the server overhead (no need for the server to calculate all of this text for 10 different languages) and also significantly reduces the bandwidth needed to run the game as sending a few different numbers is far more efficient than sending plaintext.
The exact same info sent by the server that lets the client generate combat log entries is also the exact same info that the client then passes to the UI/add-on system to let you display floating text next to the people in the world who were hit/healed/etc.
Re: Damage type in combat log
Posted: Sat Jul 20, 2024 11:47 am
by bw10
nice post omegus thx
Re: Damage type in combat log
Posted: Sat Jul 20, 2024 12:13 pm
by ShadowWar
Omegus wrote: Sat Jul 20, 2024 8:25 am
...the server sends the minimal info needed (ability ID, target, damage/healing done, parry/absorb/etc, mitigation)...
The game is setup this way as it significantly reduces the server overhead (no need for the server to calculate all of this text for 10 different languages) and also significantly reduces the bandwidth needed to run the game as sending a few different numbers is far more efficient than sending plaintext.
I don't know the infrastructure of the game but I assume that the damage type is associated client-side by ability ID (as a server call every time damage occurred to retrieve the type and then compare it to the defensive value would even larger I imagine). So would the overhead of a local using the ID to retrieve that put undo load upon the game client to retrieve that info? Or, if the damage type IS server side as well, why could that not also be sent as one additional parameter to the client and it be added on to the message?
Re: Damage type in combat log
Posted: Sat Jul 20, 2024 1:06 pm
by Omegus
ShadowWar wrote: Sat Jul 20, 2024 12:13 pm
Omegus wrote: Sat Jul 20, 2024 8:25 am
...the server sends the minimal info needed (ability ID, target, damage/healing done, parry/absorb/etc, mitigation)...
The game is setup this way as it significantly reduces the server overhead (no need for the server to calculate all of this text for 10 different languages) and also significantly reduces the bandwidth needed to run the game as sending a few different numbers is far more efficient than sending plaintext.
I don't know the infrastructure of the game but I assume that the damage type is associated client-side by ability ID (as a server call every time damage occurred to retrieve the type and then compare it to the defensive value would even larger I imagine). So would the overhead of a local using the ID to retrieve that put undo load upon the game client to retrieve that info? Or, if the damage type IS server side as well, why could that not also be sent as one additional parameter to the client and it be added on to the message?
Changing the info sent from the server to the client would be trivial... If we had the source code to the client. But we don't, so anything that involves changing the network protocol like this won't work as the client can't be updated to understand the new info sent by the server.
Re: Damage type in combat log
Posted: Sat Jul 20, 2024 4:44 pm
by ShadowWar
Omegus wrote: Sat Jul 20, 2024 1:06 pm
Changing the info sent from the server to the client would be trivial... If we had the source code to the client. But we don't, so anything that involves changing the network protocol like this won't work as the client can't be updated to understand the new info sent by the server.
The devs don't have access to the source code of the server? I was under the impression they had done significant improvements server-side to improve performance.
Re: Damage type in combat log
Posted: Sat Jul 20, 2024 5:25 pm
by Omegus
ShadowWar wrote: Sat Jul 20, 2024 4:44 pm
Omegus wrote: Sat Jul 20, 2024 1:06 pm
Changing the info sent from the server to the client would be trivial... If we had the source code to the client. But we don't, so anything that involves changing the network protocol like this won't work as the client can't be updated to understand the new info sent by the server.
The devs don't have access to the source code of the server? I was under the impression they had done significant improvements server-side to improve performance.
The devs don't have access to the source code of the client.
Re: Damage type in combat log
Posted: Sat Jul 20, 2024 6:31 pm
by othr
That explains a lot of things. I was under the impression the client source code was available (for whatever reason), that's disappointing - imagine all the performances fixes that could be done

Re: Damage type in combat log
Posted: Sun Jul 21, 2024 10:13 am
by Fenris78
You can log into a file with CombatLogger, then read the log file with external tool like WarParser, to get all damage sources by types, and such.
I dont know if warparser had been recently updated by the author, but unless there has been big changes for abilities damage types, it should show pretty accurate results in the end.