League of Legends

Team Members

Hannah De los Santos, Anders Maraviglia


To develop an integrated League of Legends plugin to aid first-time players. This plugin will display suggested builds on screen throughout gameplay.


The objective of this use case is to build a plugin to help a new player (secondary actor) learn the basics of playing a champion for the first time. The basics include providing a list of recommended items to build based on the users, allied, and enemy champions, and a couple basic ability combinations the champion can do or terminology uniquely related to that champion. These suggested builds would continue throughout the game, depending on the amount of gold the user has, as well as the items the user has in their inventory at the time. When the game first loads, the plugin should already be running and retrieve information about the user’s game, including what champions are in the game, which identifies the user’s champion as well. This data would come from a site like lolnexus, which is a public interface between Riot, the company that hosts the game, and the players. lolnexus displays information about players in a game in real time. This data could also be sourced directly from Riot using their public API, then translated into a format that the ontology can understand. After the agent retrieves name of the user’s champion, it should be able to tell that the user has not played this champion before. From there, it would pull data from the ontology containing data on champion and role terminology and ability combinations, as a champion usually plays one or two roles, but determining which depends on the context of the other champions on the team. It would also pull data on recommended build paths within context of champion, role, and the enemy champions. The top levels of things in this ontology would have the categories of Champion, Item, and Term. This ontology would be built on information scraped automatically from the wikipedia page defining champions and items, community sites dedicated to champion builds (like mobafire), and sites containing statistics on what role a champion usually plays (like op.gg or the Riot API), all translated into a standard format and aggregated into one data structure. Once this information is retrieved, display it to the user when they are loaded into the game.

Use and Development

This ontology was developed during RPI's Ontology Engineering (Spring 2017). More information about this course can be found on its page here. To see a demonstration of SPARQL queries, which deal with item builds and team role inferences, see the demonstration and queries page. This ontology currently only encodes a certain subset of the items and champions in League of Legends. This ontology is freely available for download and use under the MIT License restrictions. If you would like to expand upon the design of the ontology, contribute by helping encode items and champions, make inquiries, or give feedback on the state of the ontology, please contact Hannah De los Santos at delosh@rpi.edu or Anders Maraviglia at anders.maraviglia@gmail.com. Refer to the GitHub page for information and source code on the automated query generation done on the ontology. See our page on getting involved for more information.