Inspiration

As a freshman in college, I am always running around and I cherish my downtime. When I do have downtime, I love to play story driven games and get really immersed in their stories.

However, because of my lack of time, I often find myself replaying games for one simple reason. It is hard to discover new games when you don't have time to research them. This reason is what lead me to create "Video Game Finder".

What it does

Using an API made by IGDB, "Video Game Finder" allows users to search and discover new video games with two main paths:

  • Discover
  • General Search

Using these two paths, Video Game Finds the top five results and puts them in a sequence format.

Results View

When a game is selected, a details page appears containing the following:

  • Release date
  • Age Rating
  • Top Contributing Company
  • Critic Rating
  • Summary
  • Trailer
  • Screenshots

Item View

"Video Game Finder" is prepared with the Alexa Presentation Language (APL), enabling the skill to have beautiful visuals on screened devices, such as the Echo Show or Echo Spot. This allows the details page to be fully interactable, allowing the user to navigate with the on-screen buttons or their voice.

Challenges I ran into

Learning APL was, at first challenging and I ran into a few roadblocks, finding some inconsistencies between the Alexa Simulator and physical Alexa devices.

Objects in SendEvent

While using the SendEvent command, I pass an array of objects through the event as a single variable. In the simulator, the UserEvent sent back to my skill contains these objects as objects, but when the UserEvent is sent from a device, the UserEven contains a JSON string. I fixed this by simply adding a check in my code to convert back to objects if they are returned as a string.

Session closes after ExecuteCommand Directive

While using the ExecuteCommand Directive command, I noticed an issue where the skill closed the session, even when explicitly told not to. I made a workaround by opening the microphone when I needed the session to stay open.

What's next for "Video Game Finder"

In the future, I would like to allow users to link their IGDB accounts so they can be able to follow the games they discover.

Additional Information

You can get the code from my GitHub.

Share this project:

Updates