!command
¶
Minimum Role Required: Moderator
!command add [limiter]<command> <response...>
¶
Create a custom command.
If <command>
is in the form of main-sub
, it may be run later as either !main-sub
or !main sub
.
limiter
signifies the minimum role required to access the command.+
: Moderator-Only$
: Subscriber-Only
%VARIABLES%
may be used to create dynamic responses.
If !<command>
already exists, its response is updated.
[Jello] !command add waffle Time to feed %ARGS% some waffles!
[CactusBot] Added command !waffle.
[BreachBreachBreach] !waffle Innectic
[CactusBot] Time to feed Innectic some waffles!
!command remove <command>
¶
Remove a custom command.
[Epicness] !command remove waffle
[CactusBot] Removed command !waffle.
[Innectic] Oh no, my waffles! /cry
!command list
¶
List all custom commands.
[Xyntak] !command list
[CactusBot] Commands: explosions, kittens, potato
!command enable <command>
¶
Enable a custom command.
[artdude543] !command enable typescript
[CactusBot] Command !typescript has been enabled.
!command disable <command>
¶
Disable a custom command.
[Innectic] !command disable typescript
[CactusBot] Command !typescript has been disabled.
!command count <command> [action]
¶
Retrieve or modify the count
value for a custom command.
If action
is not specified, the count
is returned.
[AlphaBravoKilo] !command count derp
[CactusBot] !derp's count is 9001.
Otherwise, the value is modified.
If action
is a number (optionally preceded by an =
), the count value is set to that exact number.
[Kondrik] !command count derp 9053
[CactusBot] Count updated.
Otherwise, action
may begin with either a +
or -
, to increase or decrease the count value, respectively.
[MindlessPuppetz] !command count derp +12
[CactusBot] Count updated.
Variables¶
Variables enable dynamic responses based on the message
%USER%
¶
The username of the user who ran the command.
[2Cubed] !command add kittens %USER% likes kittens!
[CactusBot] Added command !kittens.
[ParadigmShift3d] !kittens
[CactusBot] ParadigmShift3d likes kittens!
%ARGN%
¶
The N
th argument passed with the command, where N
is a nonnegative integer.
[ParadigmShift3d] !command add throw Hey, %ARG2%, have a %ARG1%!
[CactusBot] Added command !throw.
[Alkali_Metal] !throw potato Innectic
[CactusBot] Hey, Innectic, have a potato!
%ARGS%
¶
All passed arguments, combined. (Excludes the command itself.)
[Innectic] !command add hug %USER% hugs %ARGS%!
[CactusBot] Added command !hug.
[BreachBreachBreach] !hug the whole chat
[CactusBot] BreachBreachBreach hugs the whole chat!
%COUNT%
¶
The number of times the command has been run.
[misterjoker] !command add derp Joker has derped %COUNT% times!
[CactusBot] Added command !derp.
[ripbandit] !derp
[CactusBot] Joker has derped 193 times!
%CHANNEL%
¶
The name of the channel.
[Rival_Laura] !command add welcome Welcome to %CHANNEL%'s stream!
[CactusBot] Added command !welcome.
[Epicness] !welcome
[CactusBot] Welcome to Xyntak's stream!
Modifiers¶
Change the output of variables. To use a modifier, append |
and the modifier to the end of the variable name.
Multiple modifiers may be chained, and will be evaluated from left to right.
upper
¶
Replace all lowercase letters with their uppercase equivalents.
%USER% -> 2Cubed
%USER|upper% -> 2CUBED
lower
¶
Replace all uppercase letters with their lowercase equivalents.
%USER% -> ParadigmShift3d
%USER|lower% -> paradigmshift3d
title
¶
Make the first letter and all letters following non-alphanumeric characters capitalized.
%ARG1% -> potatoes
%ARG1|title% -> Potatoes
tag
¶
Remove the initial @
, if it exists.
%ARG1% -> @xCausxn
%ARG1|tag% -> xCausxn
%ARG1% -> UnwrittenFun
%ARG1|tag% -> UnwrittenFun
[artdude543] !command add +raid Let's go raid @%ARG1|tag%! beam.pro/%ARG1|tag%
[CactusBot] Added command !raid.
[Chikachi] !raid @Innectic
[CactusBot] Let's go raid @Innectic! beam.pro/Innectic
[alfw] !raid TransportLayer
[CactusBot] Let's go raid @TransportLayer! beam.pro/TransportLayer
shuffle
¶
Shuffle the text.
%ARG1% -> eenofonn
%ARG1|shuffle% -> fnonneoe
%ARG1% -> @eenofonn
%ARG1|tag|shuffle% -> ononneef
!alias
¶
Minimum Role Required: Moderator
Add and remove aliases for commands.
!alias add <alias> <command> [args...]
¶
Add alias alias
for command
, with arguments args
.
[duke] !command add ip-hypixel mc.hypixel.net
[CactusBot] Added command !ip-hypixel.
[2Cubed] !alias add hypixel ip-hypixel
[CactusBot] Alias !hypixel for !ip-hypixel created.
[TransportLayer] !command add echo %ARGS%
[CactusBot] Added command !echo.
[ParadigmShift3d] !echo Hello, world!
[CactusBot] Hello, world!
[pingpong1109] !alias add cave echo Echoooo!
[CactusBot] Alias !cave for !echo created.
[ParadigmShift3d] !cave Is anyone theeeere?
[CactusBot] Echoooo! Is anyone theeeere?
!alias remove <alias>
¶
Remove alias alias
.
[CallMeCyber] !alias remove cave
[CactusBot] Alias !cave removed.
!alias list
¶
List all aliases.
[pylang] !alias list
[CactusBot] Aliases: hypixel (ip-hypixel), meow (kitten).
!repeat
¶
Minimum Role Required: Moderator
Send the contents of a command at a set interval.
!repeat add <interval> <command>
¶
Add a repeat for a specific command.
interval
is the amount of time between messages, in seconds. The minimum is60
.command
is the command response to send at the interval.
[misterjoker] !repeat add 1200 waffle
[CactusBot] Repeat !waffle added on interval 1200.
[ParadigmShift3d] Yay! Time to eat all the waffles. :D
!repeat remove <command>
¶
Remove a repeat.
[AlphaBravoKilo] !repeat remove waffle
[CactusBot] Repeat for command !waffle has been removed.
[Innectic] Aww... no more waffles.
!repeat list
¶
List all repeats.
[impulseSV] !repeat list
[CactusBot] Active repeats: waffle, kittens.
!quote
¶
!quote [id]
¶
Minimum Role Required: User
Retrieve a quote. If a numeric id
is supplied, return the quote with the specific identifier. Otherwise, choose a random quote.
[cass3rz] !quote
[CactusBot] "Someone stole my waffles!" -Innectic
[TransportLayer] !quote 12
[CactusBot] "Potato!" -2Cubed
!quote add <quote...>
¶
Minimum Role Required: Moderator
Add a quote.
[Daegda] !quote add "Python 3.6 is out!" -pylang
[CactusBot] Added quote #37.
!quote edit <id> <quote...>
¶
Minimum Role Required: Moderator
Edit the contents of a quote.
[alfw] !quote edit 12 "Potato salad!" -2Cubed
[CactusBot] Edited quote #12.
!quote remove <id>
¶
Minimum Role Required: Moderator
Remove a quote.
[QueenOfArt] !quote remove 4
[CactusBot] Removed quote #4.
!config
¶
Minimum Role Required: Moderator
Set a configuration option.
!config <follow|subscribe|host>
¶
Edit the announcement messages for events.
!config <follow|subscribe|host> message
¶
Get the response for the event announcement.
[acg1000] !config follow message
[CactusBot] Current Response: `Thanks for following, %USER%!`
!config <follow|subscribe|host> message <response...>
¶
Update the response for an event announcement. The %USER%
variable may be used for username substitution.
[misterjoker] !config announce follow Thanks for following the channel, %USER%!
[CactusBot] Updated announcement.
*ParadigmShift3d follows*
[CactusBot] Thanks for following the channel, ParadigmShift3d!
!config announce <follow|subscribe|host> [on|off]
¶
Toggle a specific type of event announcement. Either on
or off
may be used to set the exact state.
[Jello] !config announce follow toggle
[CactusBot] Follow announcements are now disabled.
*Innectic follows*
*CactusBot does not respond*
!config spam <urls|emoji|caps> <value>
¶
Change the configuration value for a spam filter.
Running the command without the value
will return the current value in the config.
urls
accepts eitheron
oroff
, which allows or disallows URLs, respectively.emoji
accepts a number, which is the maximum amount of emoji which one message may contain.caps
accepts a number, which is the maximum “score” which a message may have before being considered spam.- The “score” is calculated by subtracting the total number of lowercase letters from the total number of uppercase letters.
[DnatorGames] !config spam urls off
[CactusBot] URLs are now disallowed.
[QuirkySquid] Whoa, check out google.com!
*CactusBot times out QuirkySquid*
[QueenofArt] !config emoji 5
[CactusBot] Maximum number of emoji is now 5.
[LordOfTheUndead] !config emoji
[CactusBot] Maximum amount of emojis allowed is 5
[pingpong1109] Wow! :O :O :O :D :D :D
*CactusBot times out pingpong1109*
!trust
¶
Minimum Role Required: Moderator
Add and remove trusts.
Trusted users can bypass spam filters.
!trust <user>
¶
Toggle user
‘s trusted status.
[alfw] !trust Innectic
[CactusBot] @Innectic is now trusted.
[alfw] !trust Innectic
[CactusBot] @Innectic is no longer trusted.
!trust add <user>
¶
Trust user
.
[Rival_Laura] !trust add 2Cubed
[CactusBot] @2Cubed has been trusted.
[2Cubed] twitter.com/2Cubed
!trust remove <user>
¶
Remove user
‘s trust.
[CallMeCyber] !trust remove 2Cubed
[CactusBot] Removed trust for @2Cubed.
[2Cubed] Noooo! /cry
!trust list
¶
List all trusted users.
[DnatorGames] !trust list
[CactusBot] Trusted users: Innectic, eenofonn, duke.
!multi
¶
Generate a multistream link.
!multi [service]:[channel]
¶
service
can be one of the following:
b
(Beam)t
(Twitch)h
(Hitbox)y
(Youtube)
channel
represents the name of the channel on that platform
[ParadigmShift3d] !multi b:neat t:stream h:to y:watch
[CactusBot] https://multistream.me/b:neat/t:stream/h:to/y:watch/
!social
¶Store and retrieve social data.
!social [services...]
¶Retrieve the URL for social services.
If any
services
are provided, the data for only those will be returned. Otherwise, all social URLs will be returned.!social add <service> <url>
¶Minimum Role Required: Moderator
Store a social URL.
!social remove <service>
¶Minimum Role Required: Moderator
Remove a social URL.