TwitchWorks - The easy-to-use Twitch Integration for Unreal Engine 4!

Announcing TwitchWorks - The easy-to-use Twitch Integration for Unreal Engine 4!
It Features Commands, Cheers, Messages, And More!

**UPDATE: TwitchWorks is now available! You can find it on the Unreal Engine Marketplace here: **TwiWorks in Code Plugins - UE Marketplace

To celebrate the launch, we’ll be giving away a free copy of TwitchWorks! To apply, please leave a reply to this thread (for example: telling us about what you’d create with TwitchWorks), and who knows, maybe we’ll pick you to be the lucky winner of a free copy of TwitchWorks! Giveaway ends 12:00 PM EST on 31/01/2018.

Do you want to build a game that will allow Twitch livestream viewers to interact? Something that will allow streamers to have his/her viewers vote which map or game mode to play next? Simply want to allow your streamers to easily manage their twitch chat in-game? TwitchWorks provides an easy-to-use solution here!

Features:

  • Logging Into Twitch (opens web browser, PHP script(s) provided)
  • Connecting To Twitch Chat
  • Message & Cheer Events
  • Enabling/Disabling Twitch Slow, R9K, Emote Only And Followers Only chat.
  • Getting Information About A User
  • Creating Twitch Commands
  • Getting Twitch Emote Sets & Emote Images
  • A Custom TwitchWorks Settings Menu
  • Binding To Commands Set Up In The Settings Menu
  • Automatic Help Command (If Enabled)
  • Updating Twitch Commands
  • Unbinding/Removing Twitch Commands
  • Permanently & Temporarily Banning Twitch Users From Chat
  • Easy-To-Use Enums/Structs for all of the above to make for an easy high-level interface!

It comes with easy-to-use documentation, a packaged server that you can run using PHP or Docker (allows users to log in using Twitch) and many more benefits which make TwitchWorks as easy to use for you as you can!

FAQ:
When will TwitchWorks be releasing?
We’re planning on launching TwitchWorks on Wednesday the 31st of January, at approximately 12:00 PM EST (17:00 GMT).

What are the requirements?
The requirements to run TwitchWorks are: A. A https://twitch.tv account, B. A docker host or LAMP/WAMP web server (we’re working on a hosted service for development purposes!) & Unreal Engine 4.15 or up. (At the time of release we unfortunately won’t have 4.18 support right away. It should follow within 24 hours of the release, but adding it before the release would mean not supporting 4.15. Our apologies about this fact)

Which platforms will you be supporting?
At launch we’ll only be supporting Windows, this is due to our limited ability to test TwitchWorks on Linux & Mac OS. We may add support for these platforms at a later point in time, but are unable to guarantee support right now. Our apologies about this fact.

Is there any form of example project?
Yes, there is! Once TwitchWorks releases you will find the link to this project in the Technical Details section of the marketplace page. The example project requires you to have Installed TwitchWorks as an Engine plugin, and has been verified to work on Unreal Engine 4.17.

What makes TwitchWorks stand out?
We believe that TwitchWorks is the best all-in-one solution available for Unreal Engine out there. This is due to the reason we provide backend code so users don’t have to give you their OAuth credentials/don’t have to use a token generator, we provide a ton of clear documentation to help you get up and running, and more!

Why do I need a server?
In order to provide the easiest experience for your game’s players, TwitchWorks requires you to host a server to enable them to log into twitch. This can be either a docker host, or a LAMP stack. This server enables you to keep your private tokens in a safe place, and keep your user logins secure, which would not be possibly if the game would start a small server on it’s own. Does this explanation still not make any sense? Please leave a reply, and I’ll give explaining this another shot!

Is there any documentation available?
I’m glad you asked! We’ve done our best to create in-depth documentation, and the latest version can be found here: TwiWorks Documentation - Google Docs. Feel like we’re missing anything in here? Want something cleared up? Please don’t be afraid to ask us and/or suggest an improvement (by leaving a comment or sending us an email).

DISCLAIMER:
THIS PRODUCT IS NEITHER ENDORSED NOR CREATED BY TWITCH.

1 Like

Looking forward to this :smiley:

Does this plugin allow for the sending/receiving of whisper messages?

Glad to hear you’re looking forward to this, HeadClot!

How did I not think of this?! I was so focused on implementing features for “public” channels (eg. where the viewers type their messages), I completely forgot about this. I’ll be sure to add this to my TODO list for TwitchWorks, and will attempt to implement it as quickly as I can! My apologies again that this isn’t in there, and I will do my best to add it within the next 1-2 weeks at most!

NOTE: The giveaway is still open! TwitchWorks is releasing in a little over 24 hours, and the giveaway will draw to a close when it does. Don’t miss this opportunity to get a free copy of TwitchWorks!

Anything that closes the gap between developers, designers and end-users is a good thing. I’d be interested to use this as a means to improve gameplay testing and level design with direct feedback ahead of public releases. Great work!

Nice work ! I’m creating a game based on social networks, with some Facebook and Twitter interactions. It will be realy great if I can alos use Twitch to my project :).
I was waiting for this features since I saw Lumberyard runing it !

TwitchWorks just got released! It’s currently priced at a mere $24.99, and can be found on the Unreal Engine 4 Marketplace here: TwiWorks in Code Plugins - UE Marketplace! We hope you’ll enjoy using TwitchWorks, and we look forward to hearing any feedback/suggestions you may have! We’re also happy to announce that we have a development platform that will void the need for hosting a server during development, please note that this is still in testing and we cannot guarantee we will be offering this forever.

Please note the 4.18 update will be submitted in the following few minutes, and should hopefully be online within the next 24 hours. Our apologies about this fact again.

Also, I’m proud to announce the giveaway winner is@molatov! The following reply just got you a free copy of TwitchWorks :slight_smile:

We’ll be sending you a forum DM shortly, and we hope you’ll be able to create awesome things using TwitchWorks :slight_smile:

Will this tell you if the player is currently streaming or not?

Hi Blakeanator,

Though we don’t currently have any functionality implemented that allows one to check if the user is actually streaming, that sounds like a really useful function, so I’d be more than happy to implement it. Would you be able to tell me which version of Unreal Engine you’d be interested in? That way I can make sure it’s included for your engine version on the next release cycle.

I hope this answers your question, and please don’t hesitate to reply back to this if you have any further questions!

Hey HowToCompute. Yeah, I looked through the Twitch API but wasn’t quite sure how to implement stream detection. That would be awesome if you added that functionality! Great way to auto-show/hide UI elements for streamers. Our use-case was wanting to have a floating video camera follow the in-game pawn so that other networked players could see that that person was a streamer.

(We are building against 4.22 in our current project)

Hello,

first i wanted to thank you. This is a nice plugin. Was searching for something like this.

But im really new to UE4 and Visual Scripting and i have trouble setting up TwitchWorks.

Im at “logging In / Connecting To Twitch” part of your documentation and i have a feeling that im missing something.
I got it running, i can log in with twitch. But it was really hard for me to actually understand what part in the Ducumentation was actually saying “do this” instead of explaining how it works.
Add some points you are not reffering to the “Actions” in the “blueprint” by its actually name.

Maybe you could work on this. Or make a Video Guide on how to get this to work.

But for now, thanks a lot!
I had my first really satisfying moment setting this up and got it running!

** You can read more about the Twitch-specific functionality in the next few sections, or in the Nodes Overview webpage, that can be found here: <Link Will Follow Shortly>.**

Is this page still coming?

Hi,
I am trying to make a demo, in which it shows login screen UI, in which user able to sign In with twitch authentication from its native android app,

  • I had login a twitch account and also registered my application .
  • I also have a locally server for back end use, in which by click on button it redirects to open twitch login screen.
    Question - How user return back after log In successfully in web browser and return back to its android app?

Hi Naginder Gupta,

Thank you for your message! I believe you also contacted me by email, or at least: I received a support request with the same name/question. If this was you, then please look at the response I sent you yesterday. If you didn’t receive this response, or this question wasn’t sent by you, then please either leave a reply to this thread or send me another email (my email address can be found in my seller’s profile on the marketplace: https://unrealengine.com/marketplace…e/howtocompute; this requires you to be logged in).

I hope this helps!

Hi, does this app work with channel points? I wanted to do some twitch integration with channel points.

Hi Sleepykid,

Thanks for your question! We’re currently working on basic support for channel points and will likely release this with the next update of TwitchWorks. Due to some limitations in what Twitch offers and how TwitchWorks implements Twitch support, we will likely only be able to provide you with a unique identifier for the reward (so you won’t see the reward’s name). Furthermore, support will be restricted to channel points rewards that require the user to enter text (else they’re not sent/broadcasted on the system we use to communicate with Twitch).

Lastly, to my knowledge, Channel Points are currently only available to Twitch partners/affiliates, so I won’t be able to provide a whole lot of in-depth support (I won’t be able to reproduce/experiment with the errors you are facing). I might still be able to provide some support, but I can’t promise anything on that front.

So, to answer your question, experimental channel points support is in the works and will likely be shipped alongside the next plugin update. I can’t provide you with an exact date, but I think it should be out in less than a month. Please let me know if you’d like me to follow up on this once it releases.

I hope this answers your question, and please let me know if anything is unclear/you have any other questions!

Hi HowToCompute,

I’ve just purchased your plugin and started to set it up. I have a hosting and put the files in a directory and made the setup. It’s all good until there. When I try to login with the Twitch Login Api URL and other links that you’ve given in the documentation the login function works. However when I put my own url’s and ID browser don’t even open and immediately function returns on fail. At first I couldn’t even open the files in the directory (src/perform_twitch_auth.php etc) then I changed the file permissions to 755 and now I can access them. However UE4 does not even open the browser when I enter my own url’s and ID. What could be the problem here?

Hi Equitatus,

Thank you for your question, and my apologies for any inconvenience it may have caused. I believe you sent me this question on both the Forums, as well as the Marketplace’s Questions functionality, so I went ahead and replied to your question on the Marketplace’s Questions section. Please let me know if you are unable to access this answer, and I hope it helps.

Kind regards,
HowToCompute

Is there anyone who can help with setting this up as ive got it to send messages to chat when a work is used but i cant get it to spawn a object in when a command is used and canget points to work and show in chat if you can help please drop me a message as the owner of the script keeps asking me the same questions when i ask for support

Hey,
Any update on the channel points stuff?
Thanks