User Tools

Site Tools


Counter-Strike 1.5 Server Stats

The Half-Life server also stores statistical data in the file cstrike/addons/amxmodx/data/csstats.dat if you use amxmodx. This data can be displayed e.g. via the chat message /top15 in CS itself. The file is updated by the server after each map change. So it can of course be analyzed automatically. It is stored in binary form, i.e. not human readable. But the format is actually quite simple:

Format ''csstats.dat''

  • int16 - Version of the ranking system
  • Player entries:
    • uint16 - Length of the following nickname in bytes, if 0, there are no further entries (=eof)
    • char[ ] Nickname (Length varies, see above)
    • uint16 - Length of the following Steam-ID in bytes
    • char[ ] - Steam ID (Length varies, see above)
    • uint32 - Team kills
    • uint32 - Damage
    • uint32 - Deaths
    • int32 - Kills (can also be negative if suicides > kills)
    • uint32 - Shots
    • uint32 - Hits
    • uint32 - Headshots
    • uint32 - Defusions
    • uint32 - Defusal Attempts
    • uint32 - Plants
    • uint32 - Explosions
    • uint32 - ?
    • uint32 - Head hits
    • uint32 - Chest hits
    • uint32 - Belly hits
    • uint32 - Hits left arm
    • uint32 - Hits right arm
    • uint32 - Hits left leg
    • uint32 - Hits right leg
    • uint32 - ?


Assessment in General

As with all types of statistical analysis, you always have to know what the figures collected actually mean, or how exactly they come to pass and what statements you can actually derive from them, and what you have to be rather careful about (see difference between efficiency and ratio). First of all, the csstats.dat does not contain any evaluations but only simple counts. What is supposed to be “good” or “bad” depends entirely on the method of evaluation, or the measure with which one wants to measure it, and how one interprets it.

The most important first: the csstats.dat does not know any players, only Steam-IDs or nicknames. So if someone plays with five nicks, he will appear five times in it. If somebody plays with a foreign nick (because it is not reserved) or different players use the popular standard nick Player, it is very quickly over with the meaningfulness of the values. So much in advance. With a nick reservation plugin this can be partially fixed, at least to the extent that no one else will play with a reserved nick, and the stats will almost certainly always belong to the same player. But this is not guaranteed by default.

Also CS is not always 100% consistent when it comes to what counts as a hit, what counts as a headshot and (when hit) how much damage is caused. Other things, like the Defusal attempts or Deaths are quite clear, as well as shots or plants. So you might have to be careful, especially if there are only small numbers. But if someone has already fired 10,000 shots, a comparison with the hits will tell you quite reliably how good his marksmanship is compared to others who have already fired a sufficient number of shots.


However, there are basically a handful of variables that are often used because they can be used to derive certain statements:

  • Accuracy: Hits / shots results from a certain number of shots already a quite good picture of how accurate someone is aiming. Whoever has values of less than 10% here is most likely a beginner.
  • Headshot portion: Head shots / kills, i.e. the fraction of head shot kills, is a value that has at least some significance when it comes to whether a player is able to hit the most vulnerable part or not. It's hitting the head that does the most damage, but it's also the most difficult to hit. Especially beginners like to take much more time than they actually have. The result is that although the accuracy is not necessarily very good, the proportion of HS-Kills is quite high, despite the bad ratio in general.
  • Ratio: Kills / Deaths, a rather simple measure when it comes to evaluating how often someone gets killed. Assumption is that: if two equally good players play alone, the ratio is about 50% for both. But you have to be careful with this value, because normally there are two people involved in a kill: the attacker and the killed. And the two influence each other logically. So one and the same player can have completely different ratios, depending on the opponent. Once he meets a totally superior opponent, he stumbles around somewhere around 0.3. Another time he meets an opponent who is hopelessly inferior, and he effortlessly lays down a ratio of 2 or 3. Therefore this value is only meaningful with as many players as possible, or at least relatively many games have been played. After two or three maps with four players you can't read much from it, especially if the composition of the players involved has varied a lot.
  • Efficiency: Kills / (Kills + Deaths), a variation of the ratio. It weights the kills a bit less and limits it to 1. If you don't die once, you have an efficiency of 1 with the first kill. If you only have deaths but no kills, you are at 0. If you die every round but always take exactly one with you, the efficiency is 50%. The intended way of looking at it is taking it for what it is described as: Efficiency. This means, how efficient si a player when encountering an opponent? Putting the fact aside, that you might encounter an opponent, and nobody gets killed, it really means what it says: How efficient are you on such an encounter? K+D equals the number of encounters (assuming you never have the before mentioned nobody-gets-killed situations). And your own kills are compared to that. So it actually means, how efficiently is a player handling encounters? It is also a kind of standardization, so that overly strong players are not pushed that far up in the evaluation. Especially if you play the “popular” (i.e. inevitably played like this) one-vs-all, when one is especially strong, the player can collect kills like crazy and will have a ratio > 1 on average, while even a player of equal strength will never get more than one kill per round and thus has much higher hurdles to get above 1 in the ratio. If you now assume that both of them die every round, the ratio of one player can go much higher than the others, who may die just as often, but would hit just as often if they just had more targets. The distance between the two will look a little less drastic because of the efficiency rating. With reasonably balanced teams, not only in terms of match results but also in terms of the number of players per team, the difference will not be so big, so it will depend on the circumstances under which these scores occur.
  • Body hits: From the distribution of the hits on the opponent, you can also draw conclusions about how you can improve. As mentioned above, you do most damage hitting the head. So if someone tends to hit more in the leg area, the point is relatively clear: aim higher. The other way round, however, it is very often the case that the hits are more in the arm area, and of course on the head. This can indicate that someone is already heading in the right direction, but needs to be a bit more careful when aiming.

Back to Counter-Strike 1.5

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
en/gamesdatenbank/counter-strike_server_stats.txt · Last modified: 2021-02-27-09-29 by 7saturn