Description
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
Documentation, tutorials and demos available free here: https://maddestudios.itch.io/mms-twitchtv-irc-interface-for-gamemaker
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.
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)
(yeah, the screenshots are garbo... But to be fair, this asset is mostly for playing with text)
End User Licence Agreement (EULA)
Age Rating: 4+
Versions
GMS1 - Version 1.0.5. Published March 26, 2018
Added moderator handling (Messages limited to 50 characters unless MOD, then to 500. Assumed a MOD on your own channel) Added rate limiting, to reduce risk of BAN (rate is increased if you're a mod) Added basic handling of RECONNECT and MODE Tell the Twitch server we've PARTed on a disconnect Updated JS file a little to make socket creation fail if unsupported by the current browser
GMS2 - Version 1.1.0. Published June 1, 2019
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.