Changelogs
Streamer.bot v0.2.1
Released 2023-09-01
While 0.2.0 launch didn't go as smoothly as I had planned, after a quick fix it was off and running.
To follow up on that, 0.2.1 brings in some more fixes, and a couple of extras with it.
New Features
- Add setting to commands to ignore internally parsed messages
- Add StreamElements connected/disconnected triggers
- Add Streamlabs connected/disconnected triggers
- Add 7 new triggers for Twitch connections
- Add a clear button for the action filter
- Add nerw VTubeStudioEvent
TrackingStatusChanged
, and accompanying trigger - Add new C# method
UnsetAllUsersVar
, this will unset the specified variable for all users - Add 4 new triggers for BetterTTV and SevenTV Adding/Removing emotes
- Add
Create
button to various triggers - Add delete confirmation when deleting a sub-action group
- Add 3 new C# methods for interactiong with quotes
- Add
IgnoreAliases
setting to GetCommands sub-action, this will return the first command only for each command if enabled - Add new Trigger,
Global Variable Updated
Updates
- Remove range restriction check on posX and posY in C# method VTubeStudioMoveModel
- Add various checks throughout setting uaser globals to prevent empty or null user ids
- When subscribing to EventSub subscriptions, no longer subscribe to all if Broadcaster account is not Affiliate or Partner
- Optimize C# method
SetTwitchUsersVarById
andSetYouTubeUsersVarsById
- Optimize C# method
GetUsersVar
, it runs much faster depending on the circumstances - Tweaks to Elgato Wave Link integration
- Tweaks to OBS Websocket5 library
- In the import dialog, don't show exclude all from import, if there are no actions or commands to import
- Add address/port checks when connecting to VTubeStudio
- Add address/port checks when connecting to Streamlabs Desktop
- Prevent logging of VTubeStudio auth data
Toast Notification Activation
trigger now adds the original toast information to the arguments- Tweaks to Twitch VIP handling
- Tweaks to Sub-action and Trigger item locations and sorting
- Rename
Perform Command
toRun a Program
- Add
isSubscribed
back for YouTube users - Better handling of VTubeStudio and timing out requests so they don't get stuck
- Add checks to VTubeStudio Raw for
undefined
json values - Twitch Reward global cooldown updated from int to long, this will effect the C# method
UpdateRewardCooldown
- Update
GetQuote
sub-action to accept%variables%
- Update
Get/Set Command State
sub-actions to display the command's name instead of the command - Update
Twitch Timeout User
sub-action to have similar fields as theTwitch Unban User
sub-action - Perform config upgrage on Twitch Timeout User sub-action to new format, be sure to check your timeout sub-actions!
- Range based triggers which are se to
greater than
, are now inclusive of that value in comparisons - Range based triggers which have a
min and max
, are now inclusive of the range in comparisons - Better handling of Twitch VIP and Moderator role information
Fixes
- Fix typos
- Fix crash in Test Trigger dialog, when clicking away from a cell with an empty value
- Fix
monthsGifted
beingany
in Twitch Gift Sub trigger test - Fix issues with C# method
SetTwitchUsersVarById
andSetYouTubeUserVarsById
- Fix issues with C# method
GetUsersVar
- Handle potential crash in VTubeStudio Trigger Hotkey sub-action dialog
- Handle potential crash in Twitch Gift Bomb handling
- Handle potential crash when editing a variable with auto-typing enabled
- Handle potential crash in CrowdControl Trigger dialogs
- Handle potential crash in Raid Start trigger test
- Handle potential crash in PerformCommand sub-action dialog when leaving a cell empty
- Handle potential crash in the Import Dialog when trying to exclude all actions/commands when there aren't any
- Handle potential crash in the
Twitch Reward Set Cooldown
sub-action - Handle potential crash in
GetCredits
when BitLeaderboard API calls fail - Handle potential crash in Twemoji Emote Handler
- Handle potential crash in OBS Websocket5 Version call
- Fix long startup times during DB upgrades
- Fix creation of a Midi Message trigger not saving the selected event correctly
- Handle potential crashes in OBS Websocket v4 and v5 handling
- Handle potential crash in
Write To File
sub-action when trying to write to a file user does not have permission to - Fix UI interactions freezing the UI when connecting/disconnecting to/from various services
- Fix endless retry loop for Streamer.bot website integration when remote connection is disabled
- Fix UI feedback when connecting to VTubeStudio
- Handle potential crash in
Twitch Chat Message
trigger test - Handle more potential crashes for Toast Notifications when trying to run on Windows 7, this is a Windows 10 and higher only feature
- Better handling of loading certain types on startup
- Handle potential crash in
CrowdControl TimedEffectUpdate
event - Handle potential crash in
OBS GetSceneItemProperties
sub-action dialog - Handle potential crash in Import Dialog with invalid data
- Potential crash in EventSub when a Rewards global cooldown is greater than int.MaxValue
- Handle potential crash in
Twitch Guest Star Guest Update
event - Fix being able to make an empty query search for Twitch Game Categories
- Handle potential crash in Global Variable Viewer when encountering empty-named variables
- Handle potential crash in
YouTube Gift Membership Received
trigger test - Fix
Process Started/Stopped
Trigger display not showing the criteria - Fix issue with non-blocking queue and Execute Code sub-actions
- Fix all
Patreon Trigger
tests crashing - Fix
YouTube SuperChat
andSuperSticker
triggers using the microamount and not a decimal value for range comparisons
Details
Global User Variables
A note about SetTwitchUsersVarById
and SetYouTubeUsersVarsById
, these 2 C# methods are completely broken in 0.2.0 and should not be used, they will set all the variables for the users specified to the value passed.
New C# Methods
void UnsetAllUsersVar(string varName, bool persisted = true);
QuoteData GetQuote(int quoteId);
int GetQuoteCount();
bool DeleteQuote(int quoteId);
The QuoteData
class
public class QuoteData
{
public DateTime Timestamp { get; set; }
public int Id { get; set; }
public string UserId { get; set; }
public string User { get; set; }
public string Platform { get; set; }
public string GameId { get; set; }
public string GameName { get; set; }
public string Quote { get; set; }
}