A downloadable GameMaker Extension

Buy Now$2.00 USD or more

A bundle of scripts and an object that allows you to connect your game to Twitch chat super easily! For the most basic application, you can interact with Twitch chat using just 3 scripts (plus your own custom handler script) to connect and send/receive chat messages.

Main Features

  • Super easy to use (You only need to use a minimum of 3 scripts for basic functionality)
  • Flexible - Sending chat messages is easy, but you can also send and handle any Twitch IRC command (see https://dev.twitch.tv/docs/irc for info!)
  • Asynchronous command handling
  • Automatic PING->PONG and reconnection (if connection is lost)
  • Safely supports both blocking and non-blocking socket connections
  • Automatic rate limiting to reduce Global Ban risk
  • Many other commands to make the system more powerful (Capability requests, tag management, special string unescaping, command queueing and more)
  • Marked debug messages to help you track what's going on (and you can disable them when you need to!)
  • Theoretically works on all export platforms including HTML5

Currently versions for both GameMaker: Studio 1.4 and GameMaker Studio 2 are available

Check out the Quick Reference and Basic Guide to get help setting up (or at least an idea of what the extension is about)

You can get an oauth key for your account quickly here: https://twitchapps.com/tmi/

The video guide also provides similar instructions, as well as some slightly more advanced usage.  It covers basic connection, message sending and parsing, making a chat-interactive "Guess the Number" game and a couple of other things.

(Warning! I'm a little socially awkward, but I hope the cute bird makes up for it a little. It's 30 minutes long, but you only really need the first 7 minutes to get set up receiving and sending commands, as well as connecting - the rest is more useful, but non-essential stuff)

New in v1.1.0 (GMS2 Only)

  • twitch_check_connected() can now return 3 possible values from the enum "public_twitch_connection_status" ("connected", "not_connected" and "attempting_connection"). It will still work as a true/false test as before, but now you can check if you're connected but not logged in yet with "public_twitch_connection_status.attempting_connection"
  • oauth failures now cause a disconnect.
  • "twitch_set_disconnect_callback_script" has been added so you can set a script to handle unexpected disconnects, which will be passed 1 argument containing a value from the "public_twitch_disconnect_reasons" enum.

Information about these enums and functions has been added to the quick reference

COOL NEW FACT!! As of GameMaker Studio 2 IDE v2.2.3.425, you can now import "Local Asset Packages". Luckily, this already works with the .yymp already provided, so now it's easier to add this to your project then ever!

It is unlikely this asset will function with the Free versions of GameMaker

The 1.4 version will not receive any updates (except maybe bugfixes) as official support for the IDE ended. Also, for some reason, the non-blocking connect never succeeded for me (it works fine in Studio 2 though)


Buy Now$2.00 USD or more

In order to download this GameMaker Extension you must purchase it at or above the minimum price of $2 USD. You will get access to the following files:

GMS2 Extension Package (v1.1.0) 13 kB
GM:S1.4 Extension Package (v1.0.7) 11 kB
Demo Project For GMS2 (From the video) [YYZ] 48 kB
Quick n' Dirty 1.4 Demo (v. basic) 24 kB

Download demo

Quick Function Reference 20 kB
Installation And Basic Usage Guide 141 kB
GMS2 Setup and Use + "Guess the Number" Video Guide 137 MB

Development log