/GodotTwitchAlerts

Twitch Alerts made in Godot

Primary LanguageGDScriptMIT LicenseMIT

Godot Twitch Alerts

Features

  • Custom images/gifs
  • Custom sounds
  • Subscription alerts
    • Emote support on subscription messages
  • Bit donation alerts
  • Monetary donation alerts
  • Key bindings
    • Options (Default: O)
    • Halt TTS (Default: Space)
    • Debug TTS (Default: J)
  • Automatic update notifications

Screenshots

Welcome screen

Debug alert (No alert image)

Debug alert (Alert image)

Use in OBS

Installation & Set-up

Head to releases and download the latest version

Extract GodotTwitchAlerts.zip and run GodotTwitchAlerts.exe

Press O (default) to open the options and get an OAuth2 key from Twitch using the button provided

Paste your OAuth token into the OAuth token field

GodotTwitchAlerts will then automatically connect to Twitch Servers and begin monitoring for bit donations & subscriptions, while downloading Twitch's emotes in the background to the emotes folder

OBS Integration

Add a Game Capture source

Set the specific window to GodotTwitchAlerts and allow transparency

Modify/resize the window any way you want

Supported file formats

Images

  • .gif
  • .png
  • .jpg, .jpeg
  • .webp
  • .tga
  • .bmp
  • .dds
  • .exr
  • .hdr
  • .svg, .svgz - Untested

Sounds

  • .mp3
  • .wav
  • .ogg

Compiling

Compiled with Godot Engine v3.4.1.stable.goost.official

You will need to download and install the goost extension of Godot as well as the export templates

You should be able to export to any platform and still have this work

Monetary donation alerts

Implementing your own $$$ donation alert should be very simple on the engine's side. All that is needed is to insert an array into the Main node's pending_alerts table with the following format:

pending_alerts.insert(pending_alerts.size(), ["ynot01", "A Twitch baby is born! :)", DONATION, 5.0])

where "ynot01" is a string, the author of the donation,

"A Twitch baby is born :)" is a string, the accompanying message,

DONATION is an enum representing the int 0,

and 5.0 is a float, the donation amount

The hard part will be setting up a WebSocket or other network implementation to actually get notified by your donation handler with this information. Good luck!

Credits

Godot Engine

goost

godot-tts