For example the ReadInt() here no longer works which points that the reading format has changed.
I'm working on a project that parses this data. What's a solution for this?
Edit: I believe previous versions were following this format
DC has written
It only seems to affect the first two players and their score value. All other values seem to be legit (the third guy played over 30 days on your server. omg!). You may consider to edit sys/stats/userstats.dat with a hexeditor or with a tool for stats editing (I think there was one somewhere but I can't find it). Just set the wrong scores to the same values as the kill values. Those two values are quite equal in most cases because only special actions like defusing a bomb gives you additional score points besides killing.
!!!Make a backup before editing!!!
The userstats.dat format is very simple:
this data set for each saved user
So when using a hex editor you have to
find the username which has a wrong score
skip 4 bytes (characters) in the line right after that username
and copy&paste the 4 bytes right after that back to the first 4 bytes in that line
you could also simply remove the "damaged" users from the file.
!!!Make a backup before editing!!!
The userstats.dat format is very simple:
1
2
3
4
5
6
2
3
4
5
6
username (string, linebreak afterwards) usgn id (32 bit signed integer) score (32 bit signed integer) frags (32 bit signed integer) deaths (32 bit signed integer) time on server in seconds (32 bit signed integer)
So when using a hex editor you have to
find the username which has a wrong score
skip 4 bytes (characters) in the line right after that username
and copy&paste the 4 bytes right after that back to the first 4 bytes in that line
you could also simply remove the "damaged" users from the file.
Has this format changed? I don't really know how to work with bytes or hex.