CS:GO Archipelago — 2022 Edition
A clustering algorithm was let loose, grouping over 100 professional Counter-Strike: Global Offensive players. Find out where your favourites ended up.
Clustering algorithms collect things that are alike. They take a number of parameters, including a dataset, and output ‘clusters’ of results. If two or more things are statistically similar enough, while also being statistically distinct enough from everything else, they are grouped together to form a cluster. The algorithm we used to do this for this project is called K-means.
I won’t clutter this article with the maths behind K-means, as there are far greater data scientists than I who have covered that topic extensively. What is important, however, is how we used it to go from unlabelled HLTV data to nine insightful islands of players. As always, using the right data analysis tools can show just how phenomenal some of these pros are (and how phenomenally awful others are).
Methodology
Data analysis is conducted almost exclusively through Python or R. The former is a more modern, jack-of-all-trades programming language, while the latter is more esoteric and statistics-oriented. For those wondering why it is called ‘R’, it is the successor to the S programming language (standing for ‘statistics’ — very creative).
We could have used either for this project, though ultimately I opted for R due to its superior graphing and visualisation libraries. The following steps were taken:
Loading the data into R Studio.
Cleaning and preparing the data.
Selecting which variables to experiment with.
Setting up a K-means model and tinkering with its parameters.
Visualising the results.
The first two stages were fairly monotonous and uninteresting — most statistical models can only take numerical inputs, so a bunch of factors had to be transformed, first using the as.factor()
function, then using the as.numeric()
function. The latter steps were more interesting, requiring a bit of theory.
What’s significant when judging a player?
This is a complicated question with a complicated answer. Of all the available player statistics, HLTV rating seems like the obvious first consideration. Here’s the problem, though: blameF and s1mple have had very similar ratings in the last 12 months, yet you’d struggle to find anyone who’d willingly compare the two.
The popular narrative is, due to Astralis’ disappointing year, blameF’s stats are inflated by playing against lower-level opposition and baiting his lesser-performing teammates. Whether this is true or not, it’s important to consider a player’s playstyle and the tier they play at, not just HLTV Rating alone.
There are a few options for capturing different kinds of playstyle. The one I opted for is a combination of OPK Attempts (how often they go for an opening kill), OPK Success (how much success they have when they go for them), and overall OPK Rating. These three stats combine to form the theoretical basis for a passive/aggressive distinction.
As you’re probably thinking, being good at Counter-Strike involves more than just getting opening kills; consider weapon usage, for example. A player with high OPK Attempts and high OPK Success might be a really good entry-fragger.
Or they might just be an average AWPer. Weapon of choice drastically changes how we view players, with expectations being far higher for AWPers to perform well. Percentage of kills obtained using an AWP (AWP%) allows for loose categorisation of players as pure AWPers, secondary AWPers, and pure riflers.
Finally, Counter-Strike involves a crucial teamplay element. KAST and Impact Ratings are good ways of exploring this, as IGLs and support players are often characterised by low rating, low impact, but high KAST. Conversely, players with unremarkable ratings but high impact and high KAST are what I call “X-Factors.” Take hampus or rain as an example — their value on the server isn’t always reflected in their HLTV ratings, but the eye test assures you they’re delivering.
This leaves our statistical cocktail as follows:
OPK Attempts | OPK Success | OPK Rating | KAST | Impact | AWP% | Rating vs. Top 20
So, where are your favourite players?
Here is the final plot, including all 9 clusters (‘Islands’, as we’re calling them.) The closer together players are, the stronger the relationship between them, statistically speaking.
Traversing the archipelago
Let’s take a voyage across each of the islands and see who’s living on them.
Island 1 — Mediocre Mainland
Quite passive, average rating, average KAST, AWPers.
Here live your AWP IGLs and supportive AWPers. They’re throwing more flashbangs and going for fewer aggressive peeks than other snipers. Notable names include w0nderful, Jame, and br0ky on one side of the island and syrson, FalleN, and try on the other. These AWPers aren’t quite elite, either because they’re too passive (w0nderful and Jame), or because they don’t put up good numbers consistently enough (syrson and try).
They’re not the best, but they’re definitely not the worst either. They fill all the niches in-between. Nicoodoz, it seems, is the closest to making the jump to the island of ‘elite’ AWPers. Make of that what you will.
Island 2 — Isle of the Brave
Very aggressive, massive impact, decent rating, riflers.
Home of super-star aggressive riflers. Even though their HLTV ratings don’t show it, they’re the six best space creators 2022 has produced. Notable names include YEKINDAR and Patsi at the top of the island and Niko and rain at the bottom. Though all of these rifle demons have had their time in the spotlight, NiKo is by far the most impressive. Hence, his corner pointing towards s1mple.
If there’s one thing to take away from this, it’s that Patsi is one of the most underrated riflers of the year. Keep a close eye on him in the near future.
Island 3 — Captain’s Quarters
Aggressive, low impact, bad rating, riflers.
Everyone’s beloved IGLs, plus some Sanji-esque support players.
Dexter, gla1ve, apEX, and karrigan occupy the middle of this island. I dub these “traditional IGLs” because they follow the old school philosophy that IGLs are supposed to be selfless and willing to die first. Nafany is situated towards the very top, showing that he is by far the most aggressive of all the IGLs.
Snappi and nitr0, by contrast, seek shelter at the very bottom of the island. They’re still willing to go in first most of the time, but can rely more on their teammates to take initiative with opening duels (that, or they just bait a little bit more, but not enough to get kicked to Island 5.)
You also have JDC, autimatic, and k1to doing some bizarre IGL cosplaying. To end up in their positions without having any of the calling responsibilities means they’re just a little… well, bad.
Island 4 — Baiter’s Point
Passive, high KAST, great rating, riflers.
A large group of passive riflers live here. Most of them are ‘lurkers’ or ‘semi-lurkers’. At the very far point, you’ll find Ax1le, blameF, and stavn, while at the opposide end you’ll find ropz, jks, and frozen. These are all players that like to be one of the last alive in a round, and are always good for a clutch or two. When left to play their own game, they can put up great numbers, though they often need to be paired with an aggressive, sacrificial support player or IGL for their team to function.
Some ‘semi-lurk’ players also camp here, including Twistzz, huNter-, KSCERATO, and Spinx. They aren’t primary lurkers, and can be excellent when they are called upon to entry, but their strengths mostly lie in methodically taking map control and dominating their CT spots. They are all wonderfully gifted aimers with world class game sense.
Island 5 — Variety Valley
Very passive, high KAST, decent rating, riflers.
Out of all the islands, this one contains the largest variance between players. In one corner, you’ll find who I dub ‘modern IGLs.’ They fancy themselves as fragging IGLs and prefer to play in positions usually played by star riflers, rejecting the notion that that the IGL should be the worst player on the team. These include nexa, Aleksib, Chopper, and mezii.
On the opposite side of the island, you have some of the year’s best support players; Perfecto, interz, and NAF occupy this territory. Meanwhile in the middle, you have the passive riflers that weren’t quite good enough to make Baiter’s Point. These include KRIMZ, sjuush, and valde. All different walks of life, really.
Island 6 — Realm of the Almighty
Mix of passive and aggressive, high KAST, insane rating, AWPers.
The G.O.A.T is here. This island is inhabited by the very best AWPers of 2022. Think of this as an AWPing hall of fame. ZywOo, s1mple, sh1ro, m0nesy, degster, and SunPayus. Yes, SunPayus.
All of these AWPers are so remarkable that they are given an island to themselves in almost every statistical cocktail. Interestingly, SunPayus and sh1ro share the bottom corner, possibly owing to their similar playstyles. They’re both very risk averse system-based AWPers, reminiscent of device during the Astralis era (no doubt he would be alongside them if he played more.)
Meanwhile, m0nesy and degster are somewhere in the middle. They get a bit more aggressive and take opportunities to break from their systems sometimes, when it allows them to take over the game.
S1mple and ZywOo are untouchable, as always. Even among the top 6 AWPers in the world (based on this analysis), they find a way to stand out and shine. S1mple has done this slighly more than ZywOo this year, hence his rightful place on the throne.
Island 7 — Hill to Die on
Passive, bad KAST, bad rating, low impact, AWPers.
Island 7 isn’t really its own island. It’s a hill atop Island 5. Nonetheless, the algorithm decided it was important to group these players specifically. Initially I didn’t understand why, until it hit me: they’re all super washed-up AWPers, with stats so bad they’re similar to support players.
Frequently seen haunting this spot are CeRq, HEN1, and farlig. All three are ghosts of their former selves, lost and never to be seen again. Their careers are in limbo and they’re clambering to stay relevant. It isn’t worth holding on to them, as there are simply better hills to die on.
“Call him CeRq-du-Soleil, because he’s playing like a clown.”
Also of note are El1an and saffee. They are here because they have been identified as notoriously awful against same-level-or-higher opponents. Take a look at their HLTV stats vs. Top 20 opponents for the year, and you’ll see what I mean. These players were worth the gamble during their come-up, but they didn’t pay off. They have some serious soul-searching to do if they want to remain in Tier 1 CS.
Island 8 — Cheque Stealer’s Cove
Passive, horrible KAST, terrible rating, riflers.
Oh Brehze… Oh HexT… How did you end up here? No matter which statistical cocktail I whip up, you’re always cast away to a remote island of self-pity. Even when trying to deliberately bias the algorithm in your favour, nothing changes. You’ve just been that awful.
The Ocean of Obscurity is at your doorstep, and when it’s high tide, you’d better be good at swimming.
Island 9 — Aggressive Atoll
Very aggressive, average KAST, high impact, average rating, riflers.
(If you’re not sure what an atoll is, Google it!)
Similar to Variety Valley, this island contains a nice mix of backgrounds. It contains the very best ‘fragging IGLs’ in tabseN and electroNic, some excellent secondary callers in Hampus and Magisk, and all the aggressive riflers that narrowly missed the Isle of the Brave — maden, k0nfig, xertioN, Staehr, and EliGE, just to name a few.
These are players I refer to as ‘space creators’, as they aren’t necessarily hard-entries, but their presence on certain areas of the map can force openings and create unusual timings, especially on T side. They are disruptive to their opponents and indispensable when defaulting; the heaviest spear in an IGL’s armoury. 2022 provided us with many fresh talents of this kind. Hopefully they become even more brilliant in 2023.1
Do you mind if I ask where you got your data from? afaik there isn’t an HLTV api or public dataset right?