Category Archives: Stats Theory

What are the Odds? Modeling Win Probability in League of Legends

My personal Holy Grail of League of Legends statistics has always been an accurate, theoretically sound predictor of in-game win probability. Some of my earliest explorations in advanced LoL stats came in the form of win probability modeling, and I’ve always kept a close eye on the attempts others were making in that space, but up until now I haven’t had the necessary data structure, resources, or time to put together my own model.

Shortly after joining Esports One as the Head of Esports Data Science, I knew I’d found the right environment and opportunity to make this happen. I’m now excited to share an early look at the beta version of my win probability model.

Scroll down to see an example of the model in action!

I’m not going to go into technical details aside from saying the core model is a logistic regression—most of the details will remain proprietary—but in a moment I’ll share an example of how the model interpreted one of the games from the LCS 2019 Summer Finals.

I knew the time was right to start talking about this model publicly after I spent part of the LCS Finals sitting with Tyler “FionnOnFire” Erzberger and “field testing” the model’s predictions. Every so often, I would plug game state numbers from the current game into a calculator and ask Fionn to make a prediction about which team was favoured to win, and at what percentage. Time after time, the calculator landed within 5 percentage points of Fionn’s estimate! That outperformed even my own expectations, and I think it says something about Fionn’s understanding of LoL, too!

My model is not only built on sound statistical foundations and a comprehensive understanding of the underlying data, it also effectively captures the nuances of pro LoL with real authenticity to the nature of the game and its complex interrelationships between game variables. I’ve controlled for factors like game time, the different types of elemental drakes, towers, Baron Nashor, Elder Dragon, Inhibitors, and much more, all appropriately reflected based on the ways they influence the game.

When you put it all together and apply it to Game 4 of the LCS Finals between Cloud9 and Team Liquid, one of the most hotly contested games of the series, you get a data visualization like this:


Click for full-size image

Continue reading What are the Odds? Modeling Win Probability in League of Legends

LoL’s Advanced Stats Problem – Cody Gerard

The following article was contributed by Cody Gerard.

NOTE: For some interesting discussion on the article, check out the Twitter thread!

If you’re a League of Legends stathead like me—and let’s face it, if you’re reading this article then you are!—you’ve probably wondered why there’s such a lack of reliable, useful advanced metrics and statistics in League of Legends. On the surface, everything about League of Legends should lend itself to this. After all, it is a game that, in many ways, is all about maximizing value and efficiency, the things which most advanced stats in traditional sports are designed to measure, and yet by and large League of Legends lacks those advanced stats.

When I first started trying to write this article, that was the problem I was endeavoring to solve. I wanted to create, at the very least, an outline for a stat designed to give an overarching valuation of an individual player, something similar to baseball’s Wins Above Replacement (WAR) or Weighted Runs Created Plus (wRC+). Continue reading LoL’s Advanced Stats Problem – Cody Gerard

GXD – A clearer way to communicate player diff stats

Some time ago, I introduced the concept of “slash lines” as a way to measure players’ early game performances. The idea was to move away from creep score difference (CSD) stats, especially for junglers, and begin looking more at gold and experience differences.

Gold and experience diffs have several advantage over CS diffs. They capture the actual value of each CS, instead of treating a siege minion as having the same value as a caster minion. They also handle the rewards from jungle camps in a more consistent way, compared to the challenges that existed with the past approach of counting every jungle monster as 1 CS, or the current approach of counting every camp as 4 CS.  Gold and experience also do a better job of normalizing measurement of oddball lanes like the current Spellthief’s Sona, or last year’s Spellthief’s/Klepto Zilean.

There are some problems with the slash lines approach, though, and I’d like to move forward with another step that should help.

What problem are we trying to solve?

First, let’s understand the challenges with using slash lines. The biggest issue is that slash lines are messy to read and write. When I say that Lira has +132/-68 GD10/XPD10, that’s a whole lot of characters on the screen. It can definitely feel pretty cryptic.

Continue reading GXD – A clearer way to communicate player diff stats