Theorycraftr democratizes League of Legends analytics

LoL Theorycraftr

Six months is a long time to go without a steady gig, but former AAA predictive modeler Jason Park had an itch to scratch that his old job wasn’t fulfilling. The man behind wanted a way to democratize analytics for the League of Legends community—even if it meant learning everything about engineering the software to do so from the ground up.

The inspiration for Theorycraftr was simple: a commonly-expressed desire for a comprehensive theorycrafting tool from the large League of Legends community on Reddit. "I wanted to learn new technologies," says Park. "I wanted to do something that I really enjoy. My inspiration was the subreddit—a lot of comments mentioning that they wished they had a champion-building tool. I thought that would be the perfect project or excuse to start learning everything I wanted to learn."

Park was also motivated by the limitations of his old job. "From my skillsets point of view, I was just purely doing predictive modeling. A lot of statistics. And I thought, even with such a big corporation, there's such a big disconnect between analytics and engineering—IT, basically. I wanted to expand my skillset to a full-blown data scientist." Though he considered expanding his skillsets via alternative occupations, the allure of the competitive gaming community, and its increasing mainstream presence, ultimately led to his decision to go indie for half a year.

"I'm in Silicon Valley, nerd central, and there's conversations in Starbucks where people talk about AP Corki or whatever. So I thought, 'okay, this is a big enough audience," Park remembers. "There's big enough interest in people just talking about builds. So I thought, 'let's do two birds; one stone.' Do something I love, and also expand my skillset."

The lack of a pre-existing service on League of Legends websites helped spur his efforts, but it did mean he had to basically create everything from scratch. "Everything was new to me," says Park. "I literally had to start with beginning tutorials for Javascript, MongoDB, all these foreign languages and programs I had no idea about."

To aid his solo effort, Park deliberately chose programs with a minimum amount of administration needed. But that still meant single-handedly handling the database, back-end, front-end, and even design. Six months later, a working prototype was borne.

Modeling behavior

"The Theorycraftr building system is an archive of all aspects of League of Legends contributing to calculating damage," Park wrote in an introductory post on Reddit. In short, it lets users compare champion stats, assign skills and attacks, mess around with item builds, and finally answer if G2 Kikis's legendary Twisted Fate jungle from last year was actually a good idea or not (at least on paper).

The project as-is basically allows anybody to simulate the outcomes of a battle without having to actually get into the game themselves, or worse—actually calculate each interaction by hand or elaborate spreadsheets. With access to Riot's API, it also allows players and analysts to do patch-vs-patch comparisons, to see who dropped off past usability with patch changes, or who's been buffed into relevance.

Currently, it only allows players to do theoretical matches, but Park wants to make it relevant past the hardcore stats-obsessed demographic, and to players in general. "I still have to research this and do vetting if this is feasible and maintainable, but what I want to do is set up the Theorycraftr engine and apply it to match history. So what I want to do is, if you have a match and you lost, you can go back in time to a major fight and you can switch out some of your items. It'll tell you how much your defense increased, how much your output would have increased, and everything would adjust accordingly."

He also hopes to have it apply to professional games as well, though that would first require access to the tournament server data—if not available, then at least the public server accounts of professional players. "My philosophy in all of this, which I think I accomplished, is that I wanted to democratize analytics. What I want to make Theorycraftr into is: I want regular players to feel as if they have a team of analysts around them. They actually have serious tools that are very accessible."

Performance limit

According to Park, Theorycraftr as-is is still short of his full vision. The match history implementation is expected to finish at around June—a full year's worth of effort. But along the way, he's attracted a lot of high profile attention. "I don't know if this is supposed to be out there, but I got private messages from Curse, Fnatic, bunch of other websites... the one super-weird one was Mark Cuban!"

While public reception of Theorycraftr has been positive, team analysts are a little more skeptical of its application. Former CBLoL analyst Renato "Shakarez" Perdigão notes that there are hard limits to what you can predict off damage calculations alone. "It's basically too theoretical and not practical at all," said Perdigão. "League isn't a 1v1 game, and the way it's calculated is always assuming perfect scenarios where you hit every skillshot—which frankly doesn't happen 99% of the time."

Factors like movespeed and map movement self-evidently can't be modeled by Theorycraftr, but Oceania's Mike "Cyranoss" Giglio is more balanced in his reception. "I thought it makes a really good baseline tool to teach someone a lane matchup," said Giglio. "You can pretty easily plug your opponent's usual build and see when you're stronger vs when you're weaker—and, as a result, how you should play different parts of the matchup. That sort of baseline can be really useful for a player just trying to pick up a champion."

He's more skeptical about Park's plans for match history analysis. "Due to the way teams have to play scrims, and there being a tournament realm, it's unlikely this system will be the one that finds a work-around no one else has." Pro teams have a habit of minimizing scouting potential by not playing scrims in full, preventing match history from recording the results of their game.

But even more than that, Giglio points out that scrim and solo queue behavior can often be at drastic odds with what shows up on stage—something that dynamic queue, which encourages teams to queue together, doesn't actually solve. "Even if the whole team groups together, most players are more paranoid than coaches about giving away information to other teams. So they play silly champions together, or all swap roles, or other nonsense. I've never worked with a team that played together normally on live servers unless they had to play ranked 5s to qualify for a tournament."

With that in mind, however, Giglio admits that there's a viable market below the LCS level. "If Riot is still doing ranked 5s to qualify for Challenger events, teams involved in those would definitely benefit the most."

Pcgp Logo Red Small

PC Gamer Pro is dedicated to esports and competitive gaming. Check back every day for exciting, fun and informative articles about League of Legends, Dota 2, Hearthstone, CS:GO and more. GL HF!