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.

When a game is selected, a details page appears containing the following:
- Release date
- Age Rating
- Top Contributing Company
- Critic Rating
- Summary
- Trailer
- Screenshots

"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.

Log in or sign up for Devpost to join the conversation.