Inspiration

Independent game developers understand that if a game is popular on Twitch, it results in higher sales. There are extensions for games like Stardew Valley that allow for user participation, but what's missing is a tool that any game developer could use to encourage more Twitch interactivity. Introducing Engager -- an app that allows game developers to give streamers and their audiences complete control over the fine details of a game.

In exchange for redeeming channel points, a subscriber can have input in real time over a streamer's game. For example, a subscriber may be able to choose a character's outfit, choose the next level or course in a game, or even create unique challenges for the streamer.

Demo example video

In the video, Engager is used to show how a user can redeem Channel Points to change a character sprite color from green to blue during a live stream. The example game was created in Game Maker, which incorporates code to check for completed redemptions, and in this case, changes the sprite color to blue once confirmation is received.

What it does

Engager provides game developers with the tools to incorporate channel points redemptions. The capabilities for developers, streamers, and subscribers/viewers are as follows:

Game Developers: Incorporate Engager into your game's code by querying a given URL for updates on game variables. Responses are formatted in JSON, which can be used in your game to update features based on user input. Engager will provide a feed which you can then use to change or update any features in the game by using the provided values that come from fan decisions.

Engager can be used with any sort of SDK or game development tool. As long as you can process a JSON feed, you can use Engager in your project.

Streamers: Give your fans more control over the stream by allowing them to change features of the game for redeeming channel points. Ultimately, the custom rewards you can offer are only limited by the game developer's intentions.

Subscribers: Interact directly with a stream. Your voice matters.

How we built it

Engager builds upon the node.js example offered by Twitch showing how to use the Channel Points API, expanding upon this codebase by including functions to update custom rewards based on Engager configurations. It also uses an HTML frontend/PHP & MySQL backend for configuring properties (the Game Developer interface) as well as redeeming points (the Subscriber interface).

Challenges we ran into

Coming up with an idea to leverage the Channel Points API was difficult at first, as I realized any submission to this hackathon would have to set the bar in terms of creativity and originality.

What we learned

I learned more about the Twitch ecosystem and was very impressed by the robust Twitch Developer community. The documentation provided in the developer portal was of great use as well.

What's next for Engager

I would like the expand some of the feature offerings of Engager to include more options for complex properties and variables that game developers can use to create more uses for in-game changes.

Built With

Share this project:

Updates