Dynamic On-Screen Voting

This extension does NOT tie into the Twitch polling system, it is 100% self-contained and only requires commands to be triggered. This extension will work whether you stream to any of the single listed platforms, or any combination of all four!!

Perfect for on-the-fly voting and/or if you vote on the same thing regularly, this also offers the option to save and load polls with 1 command!

Demonstrating Live Poll During Stream

Kick integration assumes you are already using the Kick.bot extension created by @sehelitar. I am NOT a contributor to that project, simply added support for it here to expand the functionality of the 'Play with Viewers' queue.


Download from Ko-fi

How-To Install Dynamic On-Screen Voting

In Streamer.bot click the Import button in the top menu. Drag the downloaded .sb file into the Import String field and click Import . You will see 2 Actions and 2 Commands

Importing On-Screen Voting Extension into Streamer.bot

Once imported, head over to the Commands tab and Right-Click on the group named Multi-Platform On-Screen Poll to Enable All commands

Enabling Voting Commands in Streamer.bot

For the last step in Streamer.bot, go to the Servers/Clients tab and ensure the Auto Start box is checked, and if it's not already running, press Start Server

Enabling Web Socket Server in Streamer.bot

SPECIAL NOTE: You'll notice duplicate triggers for every action. If you don't use Kick and do not have the Kick.bot extension installed, those triggers do not apply to you and will not affect how the extension works. (Feel free to delete them, or just leave them alone)

Viewing Triggers in Streamer.bot


Setting up OBS for On-Screen Voting

Select the Polling Manager Action, Right-Click on the Test Trigger, and select Test Trigger

Testing Trigger to Load Scene into OBS

This trigger will build the OBS Scene and Source for you, giving a confirmation via chat message upon completion, like the GIF below.

Create OBS Scene for Voting

The next thing you will want to do is "nest" this scene anywhere that you want to see your On-Screen Poll. Do NOT rename the Scene or Source, otherwise it will make another one the next time you run the !poll command. To nest the Scene, click on an already created Scene that you have in OBS, then go to the Sources and press the + to add a new source. Select Scene from the context menu and then click the Multi-Platform Polling scene.

Nesting OBS Scene as a Source into Other Scenes

OBS On-Screen Voting for the First Time

The Polling Manager Action has 2 folders that can be used to customize the poll in various ways. Click on the + sign to the left of the Group Name to expand the folder and see the editable arguments.

Customizable Options for OBS On-Screen Voting:

Customizable Options for On-Screen Voting Display

%multiPollDuration% will set the length of the poll. It has hard-coded minimum and maximum values, meaning if you put anything over/under that amount, it WILL default to those values %multiPollHideDelay% sets the duration (in seconds) that the poll will remain on screen UPON COMPLETION to show the results. %votePosition% determines which side of the screen the overlay will show on, accepts Left , Right, and L or R. %announcePollWinners% will enable (if set to 'True') or disable (if set to 'False') a chat message at the end of the poll that reads: "Users who voted for the winning option (option text): user1user1Platform, user2user2Platform, etc". %barFillColor% utilizes the Streamer.bot color picker to select what color fills the bar in on each vote cast. %barBackgroundColor% utilizes the Streamer.bot color picker to select the "background" or "empty" bar color for all of the options.

Select Streaming Platforms:

Select Streaming Platforms

IMPORTANT: Set each platform to 'True' that you will be LIVE streaming to only. If you are streaming to multiple platforms simultaneously, set all applicable platforms to 'True' and leave the others 'False'.


Commands Available for On-Screen Voting

Commands For Broadcaster/Moderators:

CommandDescription
!poll option1 // option2 // option3Dynamic, can be any number of options.
!poll save nameStores the options for the currently active poll to be recalled later. (Requires active poll)
!poll load nameRecalls a previously stored poll and runs it immediately. (Cannot be used if there is an active poll)
!poll remove nameRemoves a saved poll from the stored list.
!poll listLists the name(s) of all currently saved polls in a chat message.

Commands For Viewers:

CommandDescription
!vote #Votes for the corresponding option number. (Viewers can only cast one vote per poll)
© 2024 Mustached_Maniac. All rights reserved.