Inspiration

As a long time League of Legends fan, and avid esports fan, I wanted to build a project utilizing the rich esports data to fuel my passion for the game and as a fan following Worlds 2023.

What it does

This project ranks each team according to an elo based algorithm with inspiration from the FIFA World Cup elo algorithm, with considerations for strength of competition and recent performance. Machine Learning optimization was used to determine seeding elos with regards to team laning performances.

How we built it

This project was built in Visual Studio Code as a Jupyter notebook. Data was pulled from Amazon Web Services. First tables were built in Amazon Glue, then used in Amazon Athena queries before being downloaded and manipulated in a notebook. A random forest classifier was trained on laning state data to determine laning metric importance in determining a match's outcome. This was then used to weight a team's seeding elo.

Challenges we ran into

As a first time user of Amazon Web Services, finding my way around the platform was overwhelming at first. In addition to the large amount of data that is being manipulated, I quickly found myself over my head. However, I didn't let that stop me as my passion for the project motivated me to continue onward. An initial attempt into using Amazon Sagemaker did not pan out as well as I had hoped, and I was forced back into more familiar territory when building and training my machine learning models.

Accomplishments that we're proud of

I am proud of pushing through the project to completion even though I found myself quickly confused and lost as to how to get the data I wanted. Understanding how to parse data and clean things that didn't make sense before manipulating it the way I wanted is something I am very proud of. I am also proud of learning how to use various AWS services to achieve what I wanted, as well as turning my university studies into actual results.

What we learned

I learned a lot about Amazon Web Services as well as how to implement an elo ranking system. I also learned that gold is king when it comes to determining match outcome, as the team with a gold lead will more often than not win the game. This is surprising as I had expected objectives to matter much more, but being more nebulous in value they should still impact the game heavily. This was not the case, at least with regards to laning phase. As such, it may be that when laning, gold is what matters the most, with objectives rising in importance as the game continues. I would have to investigate further to determine the final results.

What's next for League of Legends Team Based Elo

I would love to work further on this and create a team ranking based on a team's macro usage and really dig into the games dataset where much of the data can be found. Baron Power Plays, map plays, laning stats are all things that play into a team's strength.

Built With

Share this project:

Updates