Math of AP Items
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.



Temp Site :

Hello, and welcome to the readme of my Riot API Challenge 2.0 entry!

Since it's summer and stuff, I decided to participate in the Riot API Challenge 2.0, I chose the second task, which says : "Given two data sets of match IDs, one before the AP Item changes and another one after, create a piece of software to demonstrate changes in AP Item usage."

Warming Up

To edit/run the Python (.py) files you have to download and install Python and the Requests library, but I would suggest you to download Python(x,y), because it has a lot of additional libraries (e.g. Requests) included.

Python(x,y) Logo

How to use

  1. First of all, create a new folder, download and put AP_ITEM_DATASET & ITEM_DATA folders and all the Python (.py) files into it.
  2. Next step is to edit with a text/code editor : copy-paste your API key into the API_KEY variable.
  3. Run - this will create the required folders for others scipts

In the ITEM_DATA folder you find a file, called 'apItems.json'. This file includes all the AP items I was looking for. Since Riot didn't specify what an AP item is, I defifed it as the following : 'everything that gives ability power and is not a core item (like Amplifying Tome, Blasting Wand, ...)'. You add/remove items to/from the file, so the other scipts will track only those items that you are interested in.

Here is a brief introduction about the other scripts and how to use them:

This script will download the match data from the riot API.

You have to specify the PATCH, GAMETYPE and SERVER parameters. Initially it will download the 5.11 - Normal - EUNE dataset, but you can change the last line of the code to download different data.

  • Valid inputs :
    • PATCHES : ['5.11', '5.14']
    • GAMETYPES = ['normal_5x5', 'ranked_solo']
    • SERVERS = ['br', 'eune', 'euw', 'kr', 'lan', 'las', 'na', 'oce', 'ru', 'tr']

It takes a lot of time to download all the matches, so my suggestion is to download all normal or ranked games from the server you are interested in before and after the patch and compare those.

This script will collect the AP items purchased in games

It's input is similiar to the previous script, so if you want to process a different dataset, you just have to change the last line of the code. The output will be a json file (in the [patch]/[gametype]/ folder), it's structure is specified by the Google Chart standard, so you can use it to visualize your findings.

This script will compare two datasets (5.11 - 5.14 patch)

The last line of the code specifies the GAMETYPE and SERVER of the datasets you want to compare. It requires the two dataset generated from dataProcessor, so you have to run that with the required inputs first. The output will be a json file (in the changes/[gametype]/ folder), similiar to the previous script, but with 2 values added to each item name (5.11 and 5.14)

Updates coming really soon...

"MathOfApItems isn't endorsed by Riot Games and doesn't reflect the views or opinions of Riot Games or anyone officially involved in producing or managing League of Legends. League of Legends and Riot Games are trademarks or registered trademarks of Riot Games, Inc. League of Legends © Riot Games, Inc."