Changelogs
Streamer.bot v0.2.1
What's new in Streamer.bot version 0.2.1
nate1280While 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
Createbutton to various triggers - Add delete confirmation when deleting a sub-action group
- Add 3 new C# methods for interactiong with quotes
- Add
IgnoreAliasessetting 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
SetTwitchUsersVarByIdandSetYouTubeUsersVarsById - 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 Activationtrigger 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 CommandtoRun a Program - Add
isSubscribedback for YouTube users - Better handling of VTubeStudio and timing out requests so they don't get stuck
- Add checks to VTubeStudio Raw for
undefinedjson values - Twitch Reward global cooldown updated from int to long, this will effect the C# method
UpdateRewardCooldown - Update
GetQuotesub-action to accept%variables% - Update
Get/Set Command Statesub-actions to display the command's name instead of the command - Update
Twitch Timeout Usersub-action to have similar fields as theTwitch Unban Usersub-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
monthsGiftedbeinganyin Twitch Gift Sub trigger test - Fix issues with C# method
SetTwitchUsersVarByIdandSetYouTubeUserVarsById - 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 Cooldownsub-action - Handle potential crash in
GetCreditswhen 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 Filesub-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 Messagetrigger 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 TimedEffectUpdateevent - Handle potential crash in
OBS GetSceneItemPropertiessub-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 Updateevent - 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 Receivedtrigger test - Fix
Process Started/StoppedTrigger display not showing the criteria - Fix issue with non-blocking queue and Execute Code sub-actions
- Fix all
Patreon Triggertests crashing - Fix
YouTube SuperChatandSuperStickertriggers 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; }
}