Interpreting hardpoint CDL damage stats

Luke Beggs
6 min readMay 17, 2021

At the end of each match of hardpoint, the scoreboard is displayed to give viewers an understanding of how players have performed in the match. Some statistics are intuitive but the amount of damage dealt per player often causes confusion. Each map plays differently in terms of pacing and length. That is, some maps have a faster pacing so engagements occur at a faster rate and damage is accumulated faster.

As an attempt to better understand this statistic, I have gathered data from all the hardpoint matches that have been played so far in the CDL (as of 17/05/21) and visualised some of the data. The data has been compiled manually from the CDL youtube channel.

Data exploration

Before any analysis can be done, it is important to understand how the data is distributed. Firstly, we can look at how the amount of damage a player gets varies from map to map. This is done by splitting the data by map and plotting.

We can see that there is a slight variation in the distribution of damage across the maps. It might be interesting to see if there is a correlation between these damage distributions and the average amount of time played on a map. Due to the way that the data is stored, each map has 8 instances (each player has different damage for the same map length) so the time for each map will occur 8 times, which explains each cluster.

It seems that there is a slight link between map length and damage accumulated but that isn’t too surprising. The longer a match goes on, the more chance there is to accumulate damage so longer matches should yield higher damage scores.

As a result of this, it is important to standardise the data. One idea for this (stolen from breakingpoint.gg) is to have all the data on a per 10-minute basis. This helps to identify the rate at which certain statistics are scored rather than the magnitude of the score. It also helps with identifying outliers in terms of performance. If you have a team performing well they will have an easier and thus shorter match, meaning a lower chance of scoring damage. But, the rate at which the damage is scored will be reflected as high per 10-minute statistic.

Creating this value is trivial, simply divide the amount of damage by the length of the match (in minutes of a decimal form, e.g. 8:45 minutes is 8.75) and multiply by 10. Once this has been done, the data can be visualised in a similar way.

This has evened the data out over the maps but not completely. As a result, I don't think it makes sense to process the data as one, instead, any analysis will be done on a per map basis.

Note that crossroads was removed as an active map and apocalypse was added as a replacement. This is the reason for the lower sample sizes in these maps. Also, for this reason, crossroads won't be analysed.

Map analysis

The analysis of each map takes the same form. Firstly, a graph that better shows the distribution of how the damage is scored (though there is an assumption of a normal distribution) followed by a bell curve plot of the data. This bell curve shows the mean score along with the standard deviations. 68% of the data is contained within 1 standard deviation of the mean (above or below), so any score above the first standard deviation would be within the top 16% of results (and mirrored for the bottom). This is the same at 2 standard deviations, with a score more than 2 standard deviations above the mean being in the top 2.5% of results (and a score more than this below would be in the bottom 2.5% of results).

Checkmate

Distribution of damage per 10 minutes scores for checkmate
Bell curve for damage per 10 minutes in checkmate

Raid

Distribution of damage per 10 minutes scores for raid
Bell curve for damage per 10 minutes on raid

Garrison

Distribution of damage per 10 minutes scores for garrison
Bell curve for damage per 10 minutes on raid

Apocalypse

Distribution of damage per 10 minutes scores for apocalypse
Bell curve for damage per 10 minutes on apocalypse

Moscow

Distribution of damage per 10 minutes scores for moscow
Bell curve for damage per 10 minutes on moscow

Interpretation

The maps all vary slightly and differ in their mean and standard deviation values. I’ve taken two example matches to try and represent how these graphs can provide insight. The first is a random match and the second is a very extreme case.

Example 1

This is a randomly chosen match between Dallas and Paris on checkmate. Dallas won quite easily but we can judge how much impact each player had (in terms of damage). The table below shows the damage per 10 minutes for each player.

The average score for this map is around 4400. With the standard deviation being around 675. A lot of the results are within 1 standard deviation of the mean with a few notable performances. Crimsix has a damage score of 5825 per 10 minutes which is more than 2 standard deviations away from the mean. This means that his score was in the top 2.5% of results for this map, every good performance (in terms of damage). Also, it should be noted that Temp has a score of around 1.5 standard deviations above the mean whilst losing badly and going 26–25 in terms of kills and deaths. This impact from him would not be identified by just looking at the KD statistics. And finally, Classic had a damage per 10 minutes of about 3300, which puts him near the bottom scorers in this map and mode across the entire season.

Example 2

This match was the quickest and most one-sided of the entire season. So were any players particularly good in their performance or outstandingly bad?

The table above shows that this indeed was the case. Only Drazah from LA is anywhere near the mean of 4055 for this map, with the other 3 more than one standard deviation below the mean (meaning the bottom 16% of performers), with Huke having (damage wise) the worst score of the year on this map. Conversely, Cammy and CleanX both had results in the top 2.5% of performers (1st and 3rd best ever).

These numbers are plotted on the Gaussian curve below.

Bance had a score of under 3000 damage per 10 minutes which you might not expect from a player on a team that won so easily. This raises an important point in that there are only so many opportunities for damage, and that if 1 player performs outstandingly, it might mean that a teammate might not be able to perform as well. These methods do not enable outstanding team performances to be identified (where all 4 players equally perform well, with no one player seemingly outperforming the rest) but it can help to highlight when a single player has a significant level of impact in damage, be that positive for their team or negative.

--

--

Luke Beggs

Data Science student with an interest in sports / esports