The inspiration behind Livechamp was to help further reward viewers for their loyalty to a streamer. Card collectables are familiar territory for many in the gaming community so bringing the experience to an extension seemed like the way to go.
What it does
A streamer can configure a collection of cards. When viewers are watching the stream, a "drop" will occur at random during which viewers of the stream will receive a booster pack of cards randomly selected from the streamer configured collection. The idea is to receive cards from the streamers you watch until your collection is complete.
How I built it
It was built using Hyperapp and Spectre.css on the frontend and various AWS services for the backend. All of the backend code is written in .NET Core
Challenges I ran into
The main challenge with this project was my lack of experience with AWS. I had been using Microsoft Azure before this hackathon so there was a lot of learning involved as I went along
Accomplishments that I'm proud of
I'm proud I was able to complete the extension in a relatively short time and meet the deadline after starting the project only a few days prior
What I learned
I learned a lot about AWS and the Twitch API, I feel comfortable with both now and I am looking forward to playing with them more in the future
What's next for Livechamp
I would like to implement more features into Livechamp and make it feel more like a fully fledged card game. I'm initally going to focus on improving the sense of competition in the extension by adding leaderboards and ways compare collections with other viewers.
I also have ideas for ways to monetise Livechamp in the future. I was considering a payment model for configurable card slots for a streamer (limited to a certain amount, pay for more) and an in extension mini-game where viewers can contribute bits to fill a meter/counter to causes a card pack drop to happen for everyone on the channel.
As well as this I think that some additional loyalty reward cards could be a good feature, such as rarer cards for viewers that have watched a specific amount of hours, sent a certain amount of messages or subbed for a certain length of time.