Damage reporting fixup: Remove m_rfAttacker arrays from the client, just rely on UserMessage#2028
Open
nullsystem wants to merge 10 commits into
Open
Damage reporting fixup: Remove m_rfAttacker arrays from the client, just rely on UserMessage#2028nullsystem wants to merge 10 commits into
nullsystem wants to merge 10 commits into
Conversation
First is to drop unnecessary prediction for damages variables and second is to make sure the console takes the damage+hit values straight from the server instead which matches up with scoreboard's synced damage data. TODO: Maybe the scoreboard can also just use the console and drop the syncing entirely?
The previous commit has demoed when the server sends over the damage hit values via UserMessage, this is the reliable and actual number the server have. So if we're using UserMessage, might as well have the scoreboard take it from that instead and save having to transmit those arrays. Also enabled damage report for deathmatch, properly clearing index other held on spawning. * fixes NeotokyoRebuild#1874
Also remove unused += function from AttackersTotals
nullsystem
force-pushed
the
FixupDmgInfoDataSync
branch
from
July 24, 2026 07:54
1f4d8de to
202df12
Compare
nullsystem
force-pushed
the
FixupDmgInfoDataSync
branch
from
July 24, 2026 08:04
2c20054 to
1649832
Compare
sunmachine
suggested changes
Jul 24, 2026
sunmachine
left a comment
Contributor
There was a problem hiding this comment.
Quick read-through before dinner with family. Will review some more later this evening.
sunmachine
reviewed
Jul 25, 2026
sunmachine
approved these changes
Jul 25, 2026
In CTG, it's improbable dmg+hits will go over 255 (unsigned char max) so therefore just fit it in a unsigned char/a byte instead. JGR and respawning (in a round) gamemodes could hit over 255 so fallback to short if it happens. Also another fallback is a 2nd UserMessage in case if it goes over the user message 255 bytes limit. Although in CTG it is also improbable it'll even reach the bytes limit.
It will clear and record from when the takeover starts, the stats will not include the bot's own session during the round.
Collaborator
Author
|
Also fixed it up for bot takeover: 5e93ecc |
sunmachine
suggested changes
Jul 25, 2026
sunmachine
suggested changes
Jul 25, 2026
sunmachine
approved these changes
Jul 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
The 1st commit in this branch has demoed when the server sends over the damage hit values via UserMessage, this is the reliable and actual number the server have. So if we're using UserMessage, might as well have the scoreboard take it from that instead (which just transmits once on death like the killer infos) and save having to transmit those arrays through the network tables constantly.
Also enabled damage report for deathmatch/respawnables, properly clearing index other held on spawning.
CNEORules::PlayerKilledalso changed to only deal with the scores server side: there wasn't a point in modifying it client side when those XP scores are enforced and transmitted by the server anyway and alsoFetchAssistsserver side only now. Renamedc_neo_killer_infos.h/cpptoc_neo_killer_damage_infos.h/cppand move message fetch and printout to there.Minor refactor on scoreboard info update handling, zero the scoreboard info array before updating.
Removed unused code paths.
Toolchain
Linked Issues