Videogame Recommender

From UBC Wiki

Authors: Alan Yan, Richard Li

What is the problem?

During these times in a pandemic where most people are staying inside isolated at home, videogames are a great way to not only kill boredom but also maintain social interaction by bringing people together. However, for someone that is new to the gaming scene or someone that is just looking for a new game, the process of finding a new game to play can be extremely daunting as there are countless options to look through in numerous genres with vastly varying playstyles. In this case, a recommendation program would be very useful in helping with the process of finding a new game to play. We would like to use Prolog's strength in logical programming to create a videogame recommender that suggests possible titles that the user would be interested in based off of different preferences such as genre, platform, publishing studio, or any combinations of the preferences.

What is the something extra?

Videogames can be recommended based on their game types and companies. What was cool was that we didn't need to get the user to input the different devices they own and the different game types they were interested in as that was already contained in our knowledge base of video games.

We added sentence prompts to the UI console to improve the user experience/interaction with the program by making it more like a chat bot.

What did we learn from doing this?

We learned that testing prolog can be really easy because everything is naturally a logic statement and the sub statements could be easily tested for correctness. We also learned to visualize things like a black box and were just connecting input and output wires essentially which is a pretty cool idea to grasp our heads around vs our normal imperative ways of programming. We also learned that our code is super scalable as if we were to connect to an API or a large database of games we could still run our implementation.

Link to code