Special Identifiers (Variables in other bots) are pieces of text that are translated in Mix It Up to unique properties. Below you'll find all of the general Special Identifiers that can be used from within Mix It Up. These can be used in variety of different types of Actions in most text box that you see.
NOTE: Special Identifiers that are unique to a specific area can be found on the Wiki page for that corresponding feature. For example, if you want to see what Special Identifiers are usable for a specific Event Command, you would want to visit the Event Command page of the Wiki. Below is a non-comprehensive list of all pages that list unique feature Special Identifiers:
$top10time = A list of the top 10 watch time users (EX: #1) @CountessSaiku - 10H & 20M, #2) @VerbatimT - 6H & 37M, ...)
$topXtime = A list of the top X watch time users, where X is any number greater than 0 (EX: #1) @CountessSaiku - 10H & 20M, #2) @VerbatimT - 6H & 37M, ...)
For Top 10 special identifiers for Currency & Rank, see the Currency page and Rank page
For Top 10 special identifiers for Bits Cheered, see Bits Cheered Special Identifiers
$commandname = The name of the command that this is being performed in. This value will change if you call any sub-command using the Command Action.
$streamingplatform = The name of the streaming platform that the current command was triggered on. (EX: "Twitch")
$linebreak = A line break to separate text into multiple lines. This special identifier won't work with all features in Mix It Up (EX: Chat does not support line breaks in chat, so this will do nothing. To insert a single line break in the overlay action, use <br>
tag instead of $linebreak).
$unicode = Displays a Unicode character based on the decimal value placed after it. There are several websites you can go to & look up various Unicode characters, including the two below. When you go to one, you are either looking for the decimal number (it will only have the digits 0-9) or the number inside of the HTML Code reference for it (EX: ¬ = 172). Simply place that number immediately after this special identifier to have it be replaced with that Unicode character. (EX: $unicode937 = Ω )
User Special Identifiers are specific to the user who is running your command. Our user-based Special Identifiers all fit a pattern & once you understand that pattern, it hopefully becomes very easy to use them. Every Special Identifier below starts with "$user" and is then followed by the "thing" you want to know about that user (EX: If you want to know the "name" of a user, you would use $username).
For example, if I (SaviorXTanren) were to use a command called "!bux" in chat, all of the Special Identifiers below would be based on me:
Target Special Identifiers allow you to simplify your commands by having one Special Identifier that ends up being the user that command is "targeted" for. When using this Special Identifier, the user that is selected will be one of two possible users depending on how the command is used:
If there are arguments for the command and the first one is a user (EX: "!shoutout @SaviorXTanren"), then the target will be the first argument (EX: SaviorXTanren). This would be the same as the "$arg1user_____" set of Argument Special Identifiers
If there are no arguments OR the first argument is NOT a user, then the target will be the user who ran the command. This would be the same as the "$user____" set of User Special Identifiers
Using the Target User Special Identifiers is exactly the same as how you would use any of the User Special Identifiers, except they all start with "targetuser___" instead of "user___":
Streamer Special Identifiers are specific to the Streamer themselves. For example, if I (SaviorXTanren, the person streaming) were to use a command called "!bux" in chat, all of the Special Identifiers below would be based on me:
Argument Special Identifiers reference the text that is typed after a command, with each bit of text corresponding to a number. For example, if I run the command "!promote @SaviorXTanren 50", then the 1st argument would be "@SaviorXTanren" and the 2nd argument would be "50".
$allargs = All text after the command
$argcount = The total number of arguments (EX: 2)
$arg1text = Argument 1, $arg2text = Argument 2, etc...
$arg1user____, $arg2user____, etc = The user information if the argument is a user. All User special identifiers can be used this way (EX: $arg1username will get you the username of the 1st argument user). Please see the User Special Identifiers for all that you can use with this.
$argX:Ytext = Allow you to get a set of arguments that are between (X & Y) and including X & Y. For example, if the arguments to a command were "Here Is A Really Cool Set Of Arguments", then "$arg2:5text" would be replaced with "Is A Really Cool". "Is" is the 2nd argument and "Cool" is the 5th argument, so I get those values and everything in-between.You can also specify a max number larger than the total might be, it'll return UP TO that amount, but no more. For example, doing $arg2:99text would end up giving me every argument except the first one (Let's assume there aren't more than 99 arguments).
$argdelimited1text, $argdelimited2text, etc = Argument text that has been delimited (separated) based on the "|" character with leading & trailing spaces automatically removed. (EX: The text "Hello World | How are you| on this fine day" would have 3 arguments of $argdelimited1text, $argdelimited2text, $argdelimited3text containing the respective text of "Hello World", "How are you", "on this fine day").
$argdelimitedcount = The total number of delimited (separated) arguments.
Random Special Identifiers will randomly pick a value based on what the Special Identifier is for and will fill in the respective Special Identifiers with that value.
Each time you use a Random Special Identifier, it generates a unique instance of randomness. Random values are not persisted between each usage of a Random Special Identifier. For example, if you have two chat actions that both have $randomnumber10 in them, each chat action will make a different random number. If you are using a random result across multiple actions / text boxes, you must save the result out first to something, such as a Special Identifier Action or a Counter Action first, then use the Special Identifier from that in your other actions.
$randomnumber___ = Creates a random number from 1 to whatever number it specified at the end, including that number. (EX: $randomnumber100 would generate a random number between 1-100, including 1 & 100)
$randomnumberX:Y = Creates a random number between X & Y, including both X & Y. (EX: $randomnumber10:20 would generate a random number between 10-20, including 10 & 20)
Random user selection can be done via the various random user Special Identifiers below.
Each time you use a Random User Special Identifier, it generates a unique instance of a random user. Random values are not persisted between each usage of the Random User Special Identifier. For example, if you have two chat actions that both have $randomusername in them, each chat action will attempt to find a different random user. However, it also possible that a previous user is re-selected as a new random user; the number of users in your stream will factor into the probability of that. If you are using a random user across multiple actions / text boxes, you must save the result out first to something such as a Special Identifier Action, then use the Special Identifier from that in your other actions.
Certain accounts are automatically excluded from the below random user Special Identifiers. These include the Streamer account, the Bot account, & and users marked as Specialty Excluded. If there are no other accounts in your channel besides those, these Special Identifiers WILL NOT work.
$randomuser____ = Selects a user at random from your stream's chat. All User special identifiers can be used this way (EX: $randomusername will get you the username of a random user). Please see the User Special Identifiers for all that you can use with this.
$randomfolloweruser____ = Selects a follower at random from your stream's chat. All User special identifiers can be used this way (EX: $randomfollowerusername will get you the username of a random follower user). Please see the User Special Identifiers for all that you can use with this.
$randomsubscriberuser____ = Selects a subscriber at random from your stream's chat. All User special identifiers can be used this way (EX: $randomsubscriberusername will get you the username of a random subscriber user). Please see the User Special Identifiers for all that you can use with this.
$randomregularuser____ = Selects a regular at random from your stream's chat as determined by the Regular role defined under Settings -> Users. All User special identifiers can be used this way (EX: $randomregularusername will get you the username of a random regular user). Please see the User Special Identifiers for all that you can use with this.
Stream Special Identifiers are ways to reference information about your stream & channel information.
If you are looking for the Special Identifiers for the exact moment you receive bits, please see the Twitch Bits Cheered Event. This includes the bits amount, message supplied, and any other unique special identifier.
Do NOT use the $latest special identifiers in events! If you are looking for the Special Identifiers for the exact moment when an Event occurs, please see the Events page for all the unique Special Identifiers that can be used for each Event.
The Latest Special Identifiers are not recommend to be used in general, as there are many nuances to how they work that can cause problems for users that do not fully understand. If you are trying to display information on the latest events that have occurred, such as someone following or subscribing, consider instead using the Label Overlay Widget to accomplish this.
The Latest Special Identifiers act as a way to keep track of what the most recent occurrence was for various events that occur throughout a stream and are persisted between Mix It Up sessions. These special identifiers should not be used in event commands as they can be delayed by a few seconds. These Special Identifiers should be used for when you want to display this information PERSISTENTLY somewhere and have it automatically update as it changes. For example, let's say you wanted to have some text at the bottom of your stream that constantly showed who the last person to follow was. You could use $latestfolloweruser___ inside an Overlay Widget with a refresh timer of 5 seconds; this would then display the last person to follow and automatically update the text when a new person follows.
Any Special Identifiers that end with "user____" act like any other User-based Special Identifier. Please see the User Special Identifiers for all that you can use with this.
When a donation is triggered, an additional set of Special Identifiers are made available for all actions that are part of the Donation Received event. The regular set of Special Identifiers for all commands are still the same (EX: $username will be the username of the user who donated), but these are additional ones you may use. Please note that not all donation services will support all special identifiers.
$donationsource = The name of the donation service (EX: Streamlabs, TipeeeStream, etc)
$donationamount = The total currency amount, along with the appropriate currency symbol, of the donation if it's known. Some donation services, such as TreatStream, do not specify the cost of the donation. (EX: "$12.50")
$donationamountnumber = The total currency amount as a pure decimal number of the donation. (EX: 12.50)
$donationamountnumberdigits = The total currency amount as a pure number of the donation without a decimal point. (EX: 1250)
$donationtype = The type of, if any, that is associated with the donation. Currently, this is only used for TreatStream donations to indicate the name of what treat was selected.
$donationmessage = The message, if any, that is associated with donation.
$donationimage = The image, if any, that is associated with donation.