Skip to content

Releases: LordTocs/CastMate

Twitch Stream Tools Hackathon Entry - CastMate Shareable Dashboards (Beta)

04 Nov 23:09
974e1e4
Compare
Choose a tag to compare

Dashboards

Adds new Shareable Dashboard system

Dashboards can have multiple pages, each with sections and widgets.
Dashboards can be shared over the internet with other twitch accounts
Dashboard buttons can run Remote Button triggers in the host CastMate
Dashboards contain "Slots" which can be used to grant access to remote smart plugs, smart lights, and audio outputs.
Slots become their respective resources and can be used in actions like normal.

0.5.3 - Viewer Variables

09 Sep 20:33
89041bb
Compare
Choose a tag to compare

WARNING: This is a MAJOR change from 0.4.X. It requires a data migration if you haven't done it yet.

In order to migrate you need OBS open/connected and to sign into your twitch accounts. Make sure to check over your stuff before going live after you migrate!

Viewer Variables (New!)

  • Added viewer variables that store data separately for each person in chat (Thanks QuicksandGM)
    • Can be templated via {{ viewer.<variableName> }}
  • Added new Set Viewer Variable and Offset Viewer Variable actions
  • Added Conditions in Viewer Group to gate triggers based on viewer variable values

Twitch

  • Fix Twitch Viewer info Cache timing out with over 100 people in chat (Thanks SpaceMonkee)
  • Fix missing button to add Channel Point Rewards (Thanks TheMeltedJedi, Jewelsfox_22)
  • Fix Chat Command cooldowns not working properly (Thanks sellesmile)

Overlays

  • Fix inability to change Overlay's size (Thanks TheMeltedJedi)

OBS

  • Make OBS Text action aware of GDIPlusV3 text sources (Thanks ExplosiveMetal007)
  • Add Chapter Marker action
  • Fix issue with OBS marking itself as connected before it's ready to process requests
  • Fix inability for actions to change sources inside of groups (Thanks DonMortis)

Philips Hue

  • Make Hub finder validate that a discovered ip is a hub instead of another hue product. (Thanks MisterGamingTV)

General

  • Make Ctrl+S work more consistently
  • Add Ctrl+Shift+S shortcut to save all
  • Fix enum data labels (Thanks DonMortis)
  • Add dynamic data labels
  • Add Chat Commands to trigger headers (Thanks SilverSquirrl)
  • Added ability to drag media files or URLs into the media browser to copy into the media folder

0.5.3-beta - Fixes

04 Sep 17:12
f2e56ac
Compare
Choose a tag to compare
0.5.3-beta - Fixes Pre-release
Pre-release

TODO: Write this

0.5.2 - More Fixes

07 Aug 02:31
82db7e5
Compare
Choose a tag to compare

WARNING: This is a MAJOR change from 0.4.X. It requires a data migration if you haven't done it yet.

In order to migrate you need OBS open/connected and to sign into your twitch accounts. Make sure to check over your stuff before going live after you migrate!

Twitch

  • Add hint in Twitch Viewer autocomplete to search for names (Thanks Christopolees)
  • Fix having more than 50 channel point rewards breaking startup (Thanks Cagematic)
  • Switch to using the IRC connection for sub events. EventSub randomly doesn't deliver events.
  • Add support for anonymous gifted subs (Thanks QuicksandGM)
    • New Anonymous option in Viewer Group in Gifted Subscription and Bits Cheered Trigger

Input

  • Fix Mouse Input action not working (Thanks QuicksandGM, DonMortis)
  • Fix high CPU usage checking keyboard events (Thanks Ken_creates)

Variables

  • Fix missing scrollbar on Variables tab (Thanks Silversquirrl)

OBS

  • Improve logging to hopefully catch mysterious migration connection issues

Misc

  • Pull automatic settings changes back into the UI
    • Makes a successful Hue Bridge Connection actually show up (Thanks MisterGamingTV)

0.5.2-beta Sub Hotfixes

19 Jul 16:08
d934b71
Compare
Choose a tag to compare
Pre-release

Test Build

  • Switch sub event handling from EventSub to IRC UserNotice. EventSub servers appear broken
    • EventSub also doesn't properly trigger for new subs and in other cases.
  • Add some error handling to Channel Point Reward creation to not brick CastMate on error

0.5.1 - The Everything Update Hotfix

14 Jul 02:10
19b2b2c
Compare
Choose a tag to compare

WARNING: This is a MAJOR change from 0.4.X. It requires a data migration if you haven't done it yet.

In order to migrate you need OBS open/connected and to sign into your twitch accounts. Make sure to check over your stuff before going live after you migrate!

This is a minor hotfix for the 0.5 release. Please check your Twitch logins after update, I made a small permissions change.

  • Fix Viewer Groups not triggering things (Thanks Christopolees)
  • Fix Timeout Viewer / Ban Viewer actions (Thanks FablesOP)
    • Had to add the moderator:manage:banned_users permission to the channel account. Double check your twitch logins!
  • Fix Sign In Again Button (Thanks SuzuKube/Otakugame.fr)
  • Fix Create Source in Overlay Editor
  • Fix Missing OBS Audio Actions (Thanks Christopolees)
  • Re-added Refresh All Browsers Button (Thanks Deithore)

0.5.0 - The Everything Update!

09 Jul 23:58
Compare
Choose a tag to compare

WARNING: This is a MAJOR change. It requires a data migration.

In order to migrate you need OBS open/connected and to sign into your twitch accounts. Make sure to check over your stuff before going live after you migrate!

Brand New UI

  • Completely Overhauled UI for a more productive workflow.
  • Tabs
    • Easily switch between editing multiple profiles, automations, and overlays
    • Split the window to edit and view two tabs at once
  • Overhauled Inputs
    • More dropdowns have autocomplete
    • {{ templates }} now have a helpful dropdown for easy use
    • Search for actions by typing instead of the fiddly accordion menu with the action palette
    • Improved time inputs so you don't have to
  • Unified Settings Menu
    • Settings are now all on the same page instead of broken up by plugin
  • Navigation Bar
    • Jump right to profiles, overlays, and automations in the side bar

New Automation System

  • Actions are now aware of how much time they take to run. They can be scheduled to run in parallel or in sequence using the new timeline style UI.
  • Actions are now interruptible, sounds can finally be stopped in the middle. (Thanks SilverSquirrl and MisterGamingTV)
  • Actions can now "result" values, which can be fed into more actions using {{ templates }}

Profiles

  • Triggers in profiles are now orderable
  • Triggers now have a "Trigger Stop" option which will prevent more triggers in the same profile from running after it. Useful for setting custom responses using Viewer Grouping and preventing the default trigger from running.
  • Activation conditions are now easier to configure when comparing some state to other state

Templates

  • Templates now have a user friendly drop down making them much easier to select!

Queues

  • The queue system replaces the old "sync" switch. Triggers can be submitted to a queue, and will wait on any other triggers in the queue.
  • The Queue Skip action will stop the currently running sequence.

OBS

  • Can now connect to multiple OBS on multiple machines!
  • The new Play Media action can run an OBS media source from start to finish. Showing it on start, and hiding at completion.
  • The Screenshot Action can save the current stream or a specific source to a PNG file.
    • The screenshot action results in a filepath which can be used by other actions.

Discord

  • The Discord Message action can now attach files, including screenshots taken by the Screenshot Action

Sound

  • Sounds can now change which device they play out of.
  • Sounds are finally interruptible and can be stopped. This makes testing automations much less annoying!
  • TTS Voices have been moved to their own resource. This will allow for more TTS providers in future updates.
  • Voice Triggers have been removed because they were unreliable. They will return in a future update.

Time

  • Added Timers (Thanks QuicksandGM)
    • Created like a regular variable
    • Can be used in activation conditions
    • {{ templated }} into overlays so they can be displayed
    • Added actions Set Timer, Offset Timer, and Toggle Timer

Twitch

  • Add robust viewer grouping system for finer controls over which triggers run for which viewers
  • user, userId, and userColor have now been rolled into one viewer. Simplifying how to use them in actions and templates.
    • To get userId use viewer.id
    • To get userColor use viewer.color
  • Added twitch info management, titles and tags can now use {{ templates }} and will update your info automatically
  • Channel Point Rewards can now use {{ templates }} to update their info automatically
  • Triggers can now be set to run on Channel Point Rewards not created by CastMate. (They cannot be auto-toggled though.)
  • Added Viewer Groups which are saved configurable groups of viewers. Usable by triggers to help configure who can trigger them.
  • Added Walk On trigger, which runs the first time someone chats during the current stream.
  • Added Ad Triggers
    • Timers implemented for next ad, currently running ad, and no prerolls
    • Ad Scheduling triggers run based on the Twitch Ads manager.
      • NOTE: Twitch's servers don't correctly report when the ads start, there's a unknown gap between when ads are supposed to start and when they actually start.
    • Ad Start and Stop Triggers for when ads actually run
    • Timer state has been added for when the next ad will run and for how long is left in the current ad
  • Fix regex powered chat commands not properly matching (Thanks AtlasD_29)

Random

  • The new automation system allows for a random action which can randomly branch automation flow.

Philips Hue

  • Hue Groups now properly track their on/off state, so toggling will work (Thanks camelul)

Input

  • New Keyboard Shortcut Trigger. Triggers when you press the configured key combo.

Remote

  • Remote Button triggers can now be activated from Deckboard or Stream Deck (Thanks AnnieFuchsia and MisterGamingTV)

Overlays

  • Alerts can now have multiple media items, and will choose randomly between them when shown.
  • Alerts now properly wait for media to be loaded before trying to play, which should fix some random freezing. (Thanks Unfling)
  • The wheel can now adjust the way text is positioned (Thanks QuicksandGM)
  • Widgets can now be toggled visible and invisible with the Widget Visibility action. (Thanks SilverSquirrl)
  • The Bounce Emotes action allows sequences to manually inject emotes into the Emote Bouncer
    • REGRESSION: Emote Bouncer is missing support for emojis and some 3rd party emotes.

Stream Plans

  • Stream Plan Segments now have a deactivation automation

Dev Junk

  • Switched from Vuetify to PrimeVue
  • Completely rewritten in TypeScript
  • Schemas are now type driven
    • Proper Typescript typing
    • Serializing and Deserializing built in
    • Templating built in
    • Remote Schemas allow resolution in the overlay process (Useful for timers)
    • Exposed and Unexposed schemas allow for additional data queries only when the schema will be passed to automations. (Useful for lazily resolving Viewer information from Twitch API)
  • Plugins are now a collection of node modules
    • Modules
      • main is a module loaded in the main process
      • shared is a module that can be loaded by renderers, overlays, and main process
      • renderer is a module loaded by the renderer processes
      • overlay is an optional module loaded by the overlay webapp
      • native is an optional C++ module
    • DataInput uses dynamic components so plugins can provide their own inputs
    • DataView uses dynamic components so plugins can provide their own views
    • Documents, Tabs, Project Items, Resource Edits are all dynamic components and can be provided by plugins
  • Declarative action and triggers using defineAction and defineTrigger
    • Actions no longer need to manually template values they're handled via schemas now
  • Sound Devices changes are detected through windows API
  • Input detection driven by native module
  • TTS has been refactored in preparation for more TTS providers
    • Windows TTS has been re-written to not rely on the powershell and instead calls the windows API directly from a native module
  • Logging has been updated to log per session instead of one gigantic log

0.5.0 - The Everything Update - PreRelease

24 Jun 19:30
Compare
Choose a tag to compare

WARNING: This is a MAJOR change. It requires a data migration.

In order to migrate you need OBS open/connected and to sign into your twitch accounts.

Brand New UI

  • Completely Overhauled UI for a more productive workflow.
  • Tabs
    • Easily switch between editing multiple profiles, automations, and overlays
    • Split the window to edit and view two tabs at once
  • Overhauled Inputs
    • More dropdowns have autocomplete
    • {{ templates }} now have a helpful dropdown for easy use
    • Search for actions by typing instead of the fiddly accordion menu with the action palette
    • Improved time inputs so you don't have to
  • Unified Settings Menu
    • Settings are now all on the same page instead of broken up by plugin
  • Navigation Bar
    • Jump right to profiles, overlays, and automations in the side bar

New Automation System

  • Actions are now aware of how much time they take to run. They can be scheduled to run in parallel or in sequence using the new timeline style UI.
  • Actions are now interruptible, sounds can finally be stopped in the middle. (Thanks SilverSquirrl and MisterGamingTV)
  • Actions can now "result" values, which can be fed into more actions using {{ templates }}

Profiles

  • Triggers in profiles are now orderable
  • Triggers now have a "Trigger Stop" option which will prevent more triggers in the same profile from running after it. Useful for setting custom responses using Viewer Grouping and preventing the default trigger from running.
  • Activation conditions are now easier to configure when comparing some state to other state

Templates

  • Templates now have a user friendly drop down making them much easier to select!

Queues

  • The queue system replaces the old "sync" switch. Triggers can be submitted to a queue, and will wait on any other triggers in the queue.
  • The Queue Skip action will stop the currently running sequence.

OBS

  • Can now connect to multiple OBS on multiple machines!
  • The new Play Media action can run an OBS media source from start to finish. Showing it on start, and hiding at completion.
  • The Screenshot Action can save the current stream or a specific source to a PNG file.
    • The screenshot action results in a filepath which can be used by other actions.

Discord

  • The Discord Message action can now attach files, including screenshots taken by the Screenshot Action

Sound

  • Sounds can now change which device they play out of.
  • Sounds are finally interruptible and can be stopped. This makes testing automations much less annoying!
  • TTS Voices have been moved to their own resource. This will allow for more TTS providers in future updates.
  • Voice Triggers have been removed because they were unreliable. They will return in a future update.

Time

  • Added Timers (Thanks QuicksandGM)
    • Created like a regular variable
    • Can be used in activation conditions
    • {{ templated }} into overlays so they can be displayed
    • Added actions Set Timer, Offset Timer, and Toggle Timer

Twitch

  • Add robust viewer grouping system for finer controls over which triggers run for which viewers
  • user, userId, and userColor have now been rolled into one viewer. Simplifying how to use them in actions and templates.
    • To get userId use viewer.id
    • To get userColor use viewer.color
  • Added twitch info management, titles and tags can now use {{ templates }} and will update your info automatically
  • Channel Point Rewards can now use {{ templates }} to update their info automatically
  • Triggers can now be set to run on Channel Point Rewards not created by CastMate. (They cannot be auto-toggled though.)
  • Added Viewer Groups which are saved configurable groups of viewers. Usable by triggers to help configure who can trigger them.
  • Added Walk On trigger, which runs the first time someone chats during the current stream.
  • Added Ad Triggers
    • Timers implemented for next ad, currently running ad, and no prerolls
    • Ad Scheduling triggers run based on the Twitch Ads manager.
      • NOTE: Twitch's servers don't correctly report when the ads start, there's a unknown gap between when ads are supposed to start and when they actually start.
    • Ad Start and Stop Triggers for when ads actually run
    • Timer state has been added for when the next ad will run and for how long is left in the current ad
  • Fix regex powered chat commands not properly matching (Thanks AtlasD_29)

Random

  • The new automation system allows for a random action which can randomly branch automation flow.

Philips Hue

  • Hue Groups now properly track their on/off state, so toggling will work (Thanks camelul)

Input

  • New Keyboard Shortcut Trigger. Triggers when you press the configured key combo.

Remote

  • Remote Button triggers can now be activated from Deckboard or Stream Deck (Thanks AnnieFuchsia and MisterGamingTV)

Overlays

  • Alerts can now have multiple media items, and will choose randomly between them when shown.
  • Alerts now properly wait for media to be loaded before trying to play, which should fix some random freezing. (Thanks Unfling)
  • The wheel can now adjust the way text is positioned (Thanks QuicksandGM)
  • Widgets can now be toggled visible and invisible with the Widget Visibility action. (Thanks SilverSquirrl)
  • The Bounce Emotes action allows sequences to manually inject emotes into the Emote Bouncer
    • REGRESSION: Emote Bouncer is missing support for emojis and some 3rd party emotes.

Stream Plans

  • Stream Plan Segments now have a deactivation automation

Dev Junk

  • Switched from Vuetify to PrimeVue
  • Completely rewritten in TypeScript
  • Schemas are now type driven
    • Proper Typescript typing
    • Serializing and Deserializing built in
    • Templating built in
    • Remote Schemas allow resolution in the overlay process (Useful for timers)
    • Exposed and Unexposed schemas allow for additional data queries only when the schema will be passed to automations. (Useful for lazily resolving Viewer information from Twitch API)
  • Plugins are now a collection of node modules
    • Modules
      • main is a module loaded in the main process
      • shared is a module that can be loaded by renderers, overlays, and main process
      • renderer is a module loaded by the renderer processes
      • overlay is an optional module loaded by the overlay webapp
      • native is an optional C++ module
    • DataInput uses dynamic components so plugins can provide their own inputs
    • DataView uses dynamic components so plugins can provide their own views
    • Documents, Tabs, Project Items, Resource Edits are all dynamic components and can be provided by plugins
  • Declarative action and triggers using defineAction and defineTrigger
    • Actions no longer need to manually template values they're handled via schemas now
  • Sound Devices changes are detected through windows API
  • Input detection driven by native module
  • TTS has been refactored in preparation for more TTS providers
    • Windows TTS has been re-written to not rely on the powershell and instead calls the windows API directly from a native module
  • Logging has been updated to log per session instead of one gigantic log

0.4.19 - VoiceMod Fixes

03 Apr 20:41
Compare
Choose a tag to compare

VoiceMod

Update voicemod plugin to match the changes to VoiceMod's internal server. (Thanks christopolees)

0.4.18 - OBS Fixes

14 Feb 19:44
Compare
Choose a tag to compare

OBS

  • Fix CastMate sometimes not registering as connected to OBS
  • Fix Set Transform action not properly setting bounds size