menu

blargbot is equipped with a number of miscellaneous commands. By default, blargbot responds to b!, blargbot, and mentions. You can add your own custom prefixes with the setprefix command.

Some commands have permission requirements. In order to satisfy them, you need to have a role with the name detailed in the Permissions section.

Usage legend:

<> - denotes a required parameter

[] - denotes an optional parameter

Some commands are able to take flag parameters. All flags are divided into flag codes (prefixed by -) and words (prefixed by --). You can provide them in any order, but they should all be specified at the end of a command.

For example, if a command takes a user input, you'd be able to use -u or --user.

b!command --user @user#1234
b!command -u @user#1234

You can also chain flag codes together. For example, -flag test would activate flags f, l, a, and give the content 'test' to g.

General Commands

avatar

Usage:

avatar [id/name/mention]

Role Needed: None

Gets a user's avatar

Flags:

  • -f/--format - The file format. Can be 'jpg', 'png', 'webp', or 'gif'. Defaults to 'png', or 'gif' if it's an animated avatar.
  • -s/--size - The file size. Can be 128, 256, 512, 1024, or 2048. Defaults to 512.
brainfuck

Usage:

brainfuck <code>

Role Needed: None

Executes brainfuck code.

Flags:

  • -p/--pointers - Shows a list of pointers after the execution.
  • -i/--input - Specifies the input for the , operator.
define

Usage:

define <word>

Role Needed: None

Gets the definition for the specified word. The word must be in english.

dmerrors

Usage:

dmerrors

Role Needed: None

Toggles whether to DM you errors.

econ

Usage:

econ <from> <to> <amount>

Role Needed: None

Converts currency using recent rates. Example:

User> blargbot econ USD CAD 1
blargbot> @User, 1.0 USD is equivalent to X.X CAD

Currency codes are not case sensitive.

emoji

Usage:

emoji <emoji> [size]

Role Needed: None

Gives you a large version of an emoji. If size is specified, makes the image that size.

Flags:

  • -s/--svg - Get the emote as an svg instead of a png.
emojify

Usage:

emojify <text>

Role Needed: None

Gets emojis based on input.

feedback

Usage:

feedback <feedback>

Role Needed: None

This command has three different functions for varying purposes. Please do not abuse it.

  • feedback - give me feedback about the bot
  • suggest - tell me something you want added or changed
  • report - let me know about a bug you found

Thank you for your support. It means a lot to me!

getprefix

Usage:

getprefix

Role Needed: None

Returns the command prefix for the current guild.

help

Usage:

help [command]

Role Needed: None

Returns a list of commands and custom commands. If a command name is specified, it will return a description of that command instead.

info

Usage:

info

Role Needed: None

Gets information about the specified user.

insult

Usage:

insult [name]

Role Needed: None

Generates an insult, directed at whatever name is supplied. If a name isn't supplied, defaults to 'Your'

invite

Usage:

invite

Role Needed: None

Gives you the bot's invite information.

lines

Usage:

lines

Role Needed: None

Gets the number of lines the bot is made of.

mods

Usage:

mods [online | o | away | a | dnd | d | offline]

Role Needed: None

Gets a list of mods on the guild.

names

Usage:

names [user] [flags]

Role Needed: None

Returns the names that I've seen the specified user have in the past 30 days.

Flags:

  • -a/--all - Gets all the names.
  • -v/--verbose - Gets more information about the retrieved names.
nato

Usage:

nato <text>

Role Needed: None

Translates the given text into the NATO phonetic alphabet.

ping

Usage:

ping

Role Needed: None

Pong!

Find the command latency.

poll

Usage:

poll <question> [flags]

Role Needed: None

Creates a poll for the given question and duration. If emojis are given, they will be used as options for the poll.

Flags:

  • -t/--time - How long before the poll expires, formatted as '1 day 2 hours 3 minutes and 4 seconds', '1d2h3m4s', or some other combination.
  • -e/--emojis - The emojis to apply to the poll.
  • -d/--description - The description of the poll.
  • -c/--colour - The colour of the poll (in HEX).
  • -a/--announce - If specified, it will make an announcement. Requires the proper permissions.
  • -s/--strict - If specified, only accept reactions that were in the initial list.
remind

Usage:

remind <text> -t <time>

Role Needed: None

Reminds you about something after a period of time in a DM.

Flags:

  • -t/--time - The time before the user is to be reminded, formatted as '1 day 2 hours 3 minutes and 4 seconds', '1d2h3m4s', or some other combination.
  • -c/--channel - If set, this will notify the user in current channel instead of in a DM.
roles

Usage:

roles

Role Needed: None

undefined
roll

Usage:

roll [dice] [modifier]

Role Needed: None

Rolls dice and adds a modifier. You can specify the number of dice and how many sides they have with the notation XdY, where X is number of dice and Y is number of sides. If no dice are specified, it defaults to 1d20.

rr

Usage:

rr [bullets] [emote]

Role Needed: None

Plays russian roulette with a specified number of bullets. If emote is specified, uses that specific emote.

seen

Usage:

seen <user>

Role Needed: None

Tells you the last time I saw a user speak!

ship

Usage:

ship <user1> <user2>

Role Needed: None

Gives you the ship name for two users.

spell

Usage:

spell [name]

Role Needed: None

Gives you a description for a D&D 5e spell.

stats

Usage:

stats [c]

Role Needed: None

Gives you information about the bot.

status

Usage:

status <code> [cat | dog]

Role Needed: None

Gets you an image of an HTTP status code.

syntax

Usage:

syntax [command name]

Role Needed: None

Gives you the 'syntax' for a command 😉

tag

Usage:

tag [<name> | create | edit | delete | rename | raw | info | top | author | search | list | favorite | report | test | help]

Role Needed: None

Tags are like public custom commands. You can create them on one guild, and use them on another. Anyone is capable of making tags. Tags use a tagging system, so they can can range from simple to complex. See the documentation page for more details.

By creating a tag, you acknowledge that you agree to the Terms of Service.

Subcommands:

<name> <args>
Executes a tag with the given name
create <name> <content>
Creates a new tag with the given name and content
edit <name> <content>
Edits an existing tag with given content, provided that you were the one who created it
delete <name>
Deletes the tag with the given name, provided that you were the one who created it
rename <tag> <name>
Renames the tag with the name of of the provided tag to the given name
raw <name>
Displays the raw code of a tag
info <name>
Displays information about a tag
top 
Displays the top 5 tags
author <tag>
Displays the name of the tag's author
search <name>
Searches for a tag based on the provided name
list [author]
Lists all tags, or tags made by a specific author
favorite [tag]
Adds a tag to your favourite list, or displays your favourite tags
report <tag> <reason>
Reports a tag as violating the ToS
test <code>
Executes code in a tag sandbox
help [command]
Returns general help, or help for the specified subcommand.
time

Usage:

time <timezone> [ <timezone2> <time> ]

Role Needed: None

Tells you the current time in the specified timezone. If timezone2 and time are specified, converts the time from timezone to timezone2. Time must be formatted as hh:mm[AM/PM], and timezones must use these timezone codes.

timer

Usage:

timer <time>

Role Needed: None

Sets a timer for the provided amount of time, formatted as '1 day 2 hours 3 minutes and 4 seconds', '1d2h3m4s', or some other combination.

todo

Usage:

todo [remove <item id> | add <item>]

Role Needed: None

Access your todo list.

To add items, do todo add <item>.

To remove items, do todo remove <item id>, where item id is the number shown when you do <todo> by itself.

tokenify

Usage:

tokenify <input>

Role Needed: None

Converts the given input into a token.

uptime

Usage:

uptime

Role Needed: None

Tells you how long the bot has been up for.

user

Usage:

user [id/name/mention]

Role Needed: None

Gets information about the specified user.

version

Usage:

version

Role Needed: None

Tells you what version the bot is currently running on.

voteban

Usage:

voteban [info <user> | <user> [reason]]

Role Needed: None

Sign a petition to ban somebody, or check the status of a petition.

warnings

Usage:

warnings [user]

Role Needed: None

Gets how many warnings you or a specified user has.

NSFW Commands

danbooru

Usage:

danbooru <tags...>

Role Needed: None

Displays three images obtained from danbooru.donmai.us using the provided tags. You can use up to 2 tags at a time. Results have the possibility of being NSFW. If the current channel is not designated as NSFW, a user needs to include the 'rating:safe' tag in order to use the command.

e621

Usage:

e621 <tags...>

Role Needed: None

Displays three images obtained from e621.net using the provided tags. You can use up to 6 tags at a time. Results have the possibility of being NSFW. If the current channel is not designated as NSFW, a user needs to include the 'rating:safe' tag in order to use the command.

rule34

Usage:

rule34 <tags...>

Role Needed: None

Displays three images obtained from rule34.xxx using the provided tags. The current channel needs to be marked as NSFW in order for the command to work.

Image Commands

art

Usage:

art [user]

Role Needed: None

Shows everyone a work of art.

Flags:

  • -I/--image - A custom image.
cah

Usage:

cah

Role Needed: None

Generates a random set of Cards Against Humanity cards.

caption

Usage:

caption [url] [flags]

Role Needed: None

Captions an image. If url isn't provided, you must give an attachment.

Flags:

  • -t/--top - The top caption.
  • -b/--bottom - The bottom caption.
  • -f/--font - The font to use (case insensitive). Use the command with the -l flag to view the available fonts. Defaults to impact.
  • -l/--list - Lists the available fonts.
cat

Usage:

cat

Role Needed: None

Displays a picture of a cat, taken from random.cat

clint

Usage:

clint [user]

Role Needed: None

I don't even know, to be honest.

Flags:

  • -I/--image - A custom image.
clippy

Usage:

clippy <text>

Role Needed: None

Clippy the paperclip is here to save the day!

clyde

Usage:

clyde <text>

Role Needed: None

Give everyone a message from Clyde.

delete

Usage:

delete [text]

Role Needed: None

Shows that you're about to delete something.

distort

Usage:

distort [user]

Role Needed: None

Turns an avatar into modern art.

Flags:

  • -I/--image - A custom image.
free

Usage:

free <caption> [flags]

Role Needed: None

Tells everyone what you got for free.

Flags:

  • -b/--bottom - The bottom caption.
pixelate

Usage:

pixelate [url] [flags]

Role Needed: None

Captions an image. If url isn't provided, you must give an attachment.

Flags:

  • -u/--user - A user avatar instead of a url
  • -s/--scale - The amount to pixelate by (defaults to 64)
retarded

Usage:

retarded <text> [flags]

Role Needed: None

Tells everyone who is retarded

Flags:

  • -u/--user - The person who is retarded.
  • -I/--image - A custom image.
shit

Usage:

shit <text> [flags]

Role Needed: None

Tells everyone what's shit. Use -p as the first argument to specify the text as plural.

Flags:

  • -p/--plural - Whether or not the text is plural (use ARE instead of IS).
starvstheforcesof

Usage:

starvstheforcesof [user]

Role Needed: None

WHO IS STAR BATTLING THIS EPISODE?

Flags:

  • -I/--image - A custom image.
thesearch

Usage:

thesearch [text]

Role Needed: None

Tells everyone about the progress of the search for intelligent life.

triggered

Usage:

triggered [user]

Role Needed: None

Shows everyone how triggered you are.

Flags:

  • -i/--invert - Inverts the image.
  • -h/--horizontal - Flips the image horizontally.
  • -v/--vertical - Flips the image vertically.
  • -s/--sepia - Applies a sepia filter.
  • -b/--blur - Applies a blur.
  • -g/--greyscale - Makes the image greyscale
  • -I/--image - A custom image.
truth

Usage:

truth <text>

Role Needed: None

Shows everyone what is written in the Scroll of Truth.

xkcd

Usage:

xkcd [number]

Role Needed: None

Gives you an xkcd comic. If a number isn't specified, it gives you a random one.

Admin Commands

announce

Usage:

announce <<text> | -reset>

Role Needed: Admin

Makes an annoucement to a configured role, or resets the announcement configuration.

ban

Usage:

ban <user> [days] [flags]

Role Needed: Admin

Bans a user, where days is the number of days to delete messages for. Defaults to 1.

If mod-logging is enabled, the ban will be logged.

Flags:

  • -r/--reason - The reason for the ban.
  • -t/--time - If provided, the user will be unbanned after the period of time. (softban)
blacklist

Usage:

blacklist [channel]

Role Needed: Admin

Blacklists the current channel. The bot will not respond until you do the command again.

ccommand

Usage:

ccommand <command name> <command content>

Role Needed: Admin

Creates a custom command using the BBTag language. Once created, whenever you say the command name, blargbot will respond with the command content. For example:

User> blargbot ccommand create test Hello, {username}. This is a test command.
blargbot> Created command test
User> blargbot test
blargbot> Hello, User. This is a test command.

Custom commands take precedent over all other commands. As such, you can use it to overwrite commands, or disable them entirely. If the command content is "null" (without the quotations), blargbot will have no output whatsoever, allowing you to disable any built-in command you wish. You cannot overwrite the 'ccommand' command. For more in-depth command customization, see the editcommand command.

Commands:

cc create <name> <content>

Creates a ccommand with the given name and content. The name must be unique.

cc edit <name> <content>

Edits an existing ccommand.

cc set <name> <content>

Provides the functionality of create and edit in a single command.

cc delete <name>

Deletes the specified ccommand.

cc rename <name> <new name>

Renames an existing ccommand to something else.

cc raw <name>

Displays the raw code of a given ccommand.

cc setrole <name> [role names...]

sets the roles required to execute the ccommand

cc help

Gets basic ccommand help.

cc sethelp <name> [help text]

sets the help message for the given ccommand

censor

Usage:

censor help

Role Needed: Admin

Creates message censorships. Subcommands:

  • ADD <text> [flags] - Adds a censor with for the provided text.
  • REMOVE - Brings up a menu to remove a censor
  • EDIT <text> [flags] - Brings up a menu to edit a censor
  • EXCEPTION <add | remove> [flags] - Adds or removes an exception.
  • RULE [flags] - Sets the censorship rules.
  • INFO - Displays information about censors.

Flags:

  • -R/--regex - Add/Edit: If specified, parse as /regex/ rather than plaintext.
  • -w/--weight - Add/Edit: How many incidents the censor is worth.
  • -r/--reason - Add/Edit: A custom modlog reason. NOT BBTag compatible.
  • -d/--deletemessage - Add/Rule/Edit: The BBTag-compatible message to send after a message is deleted. Adds override rules.
  • -k/--kickmessage - Add/Rule/Edit: The BBTag-compatible message to send after a user is kicked. Adds override rules.
  • -b/--banmessage - Add/Rule/Edit: The BBTag-compatible message to send after a user is banned. Adds override rules.
  • -u/--users - Exception: A list of users that are exempt from censorship.
  • -r/--roles - Exception: A list of roles that are exempt from censorship.
  • -c/--channels - Exception: A list of channels that are exempt from censorship.
changelog

Usage:

changelog

Role Needed: Admin

Sets the current channel as your guild's changelog channel. A message will be posted in this channel whenever there is an update. The bot requires the embed links permission for this.

editcommand

Usage:

editcommand < list 
    | setrole <commandname | "commandname,..."> [role name]... 
    | setperm <commandname | "commandname,..."> [perm number] 
    | toggle <commandname | "commandname,...">

Role Needed: Admin

Changes command-specific usage permissions.

argument description
list Shows a list of modified commands (role required/perms required)
setrole Sets the role(s) required in order to use the command(s)
setperm Sets the permissions required in order to bypass the role requirement (requires `permoverride` in the settings command to be enabled). This has to be a permission number, which can be calculated here
toggle Enables/disables the listed commands
farewell

Usage:

farewell [message]

Role Needed: Admin

Sets a farewell message for any user who leaves your guild. You can use the tagging system for more customization. For example:

User> blargbot farewell **{username}** has left. Bye!
blargbot> Greeting set. Simulation: **User has left. Bye!

Flags:

  • -c/--channel - The channel to put the farewell messages in.
greet

Usage:

greet [message]

Role Needed: Admin

Sets a greeting for any new user who joins your guild. You can use the tagging system for more customization. For example:

User> blargbot greet Welcome, **{username}**. Please read #rules.
blargbot> Greeting set. Simulation: Welcome, **User**. Please read #rules.

Flags:

  • -c/--channel - The channel to put the greeting in.
hackban

Usage:

hackban <user...> [days]

Role Needed: Admin

Bans a user who isn't currently on your guild, where user... is alist of user IDs or mentions (separated by spaces) and days is the number of days to delete messages for. Defaults to 1.

If mod-logging is enabled, the ban will be logged.

Flags:

  • -r/--reason - The reason for the ban.
kick

Usage:

kick <user> [flags]

Role Needed: Admin

Kicks a user from the guild.

If mod-logging is enabled, the kick will be logged.

Flags:

  • -r/--reason - The reason for the kick.
log

Usage:

log <list | enable <channel> <event name>... | disable <event name>...>

Role Needed: Admin

Toggles logging for the specified events. Available events are:

  • memberban - when a user gets banned
  • memberunban - when a user gets unbanned
  • memberjoin - when a user joins
  • memberleave - when a user leaves
  • messagedelete - when a message gets deleted
  • messageupdate - when a message gets updated
  • nameupdate - when a user changes their username
  • avatarupdate - when a user changes their avatar
  • nickupdate - when a user changes their nickname
  • all - enables all of the events
logs

Usage:

logs <number> [flags]

Role Needed: Admin

Creates a chatlog page for a specified channel, where `number` is the amount of lines to get. For more specific logs, you can specify flags.

For example, if you wanted to get 100 messages `stupid cat` deleted, you would do this:

logs 100 --type delete --user stupid cat

If you want to use multiple of the same type, separate parameters with commas or chain them together. For example:

logs 100 -CU -u stupid cat, dumb cat

Flags:

  • -t/--type - The type(s) of message. Value can be CREATE, UPDATE, and/or DELETE, separated by commas.
  • -c/--channel - The channel to retrieve logs from. Value can be a channel ID or a channel mention.
  • -u/--user - The user(s) to retrieve logs from. Value can be a username, nickname, mention, or ID. This uses the user lookup system.
  • -C/--create - Get message creates.
  • -U/--update - Get message updates.
  • -D/--delete - Get message deletes.
  • -j/--json - Returns the logs in a json file rather than on a webpage.
modlog

Usage:

modlog [disable | clear [number to clear]]

Role Needed: Admin

Enables the modlog and sets it to the current channel. Doing modlog disable will disable it. Doing modlog clear [number] will clear the specified number of cases from the modlog. Leaving number blank will clear all cases. When an admin does a moderation command (ban, unban, mute, unmute, and kick), the incident will be logged. The admin will then be encouraged to do reason <case number> <reason> to specify why the action took place.

Bans and unbans are logged regardless of whether the ban or unban commands are used.

mute

Usage:

mute <user> [flags]

Role Needed: Admin

Gives the user a special muted role. On first run, this role will be created. The bot needs to be able to manage roles to create and assign the role, and manage channels to configure the role. You are able to manually configure the role without the bot, but the bot has to make it. Deleting the muted role causes it to be regenerated.

If the bot has permissions for it, this command will also voice-mute the user.

If mod-logging is enabled, the mute will be logged.

You can also specify a length of time the user should be muted for, using formats such as 1 hour 2 minutes or 1h2m

Flags:

  • -r/--reason - The reason for the mute.
  • -t/--time - The amount of time to mute for, formatted as '1 day 2 hours 3 minutes and 4 seconds', '1d2h3m4s', or some other combination.
pardon

Usage:

pardon <user> [flags]

Role Needed: Admin

Pardons a user.

If mod-logging is enabled, the pardon will be logged.

This will not unban users.

Flags:

  • -r/--reason - The reason for the pardon.
  • -c/--count - The number of warnings that will be removed.
purge

Usage:

purge

Role Needed: Admin

Deletes all the messages in the current channel made by the bot, within 100 messages.

reason

Usage:

reason <caseid | latest> <reason>

Role Needed: Admin

Sets the reason for an action on the modlog.

roleme

Usage:

roleme <list | add | remove | edit>

Role Needed: Admin

undefined

Flags:

  • -a/--add - Add: A list of roles to add in the roleme
  • -r/--remove - Add: A list of roles to remove in the roleme
  • -p/--phrase - Add: The phrase to respond to
  • -C/--case - Add: Whether the phrase is case sensitive
  • -c/--channel - Add: The channels the roleme should be in
  • -m/--message - Add: The BBTag-compatible message to output on activation
rvoteban

Usage:

rvoteban (<user> | <flags>)

Role Needed: Admin

Removes the votebans for a specific user, or removes all votebans completely.

Flags:

  • -a/--all - Removes all votebans
setprefix

Usage:

setprefix [prefix]

Role Needed: Admin

Sets the custom command prefix for the guild. You can set it to anything. If no prefix is specified, disables the custom prefix.

settings

Usage:

settings [keys|help|set <key>]

Role Needed: Admin

Gets or sets the settings for the current guild. For key documentation, go here.

tidy

Usage:

tidy [amount] [flags]

Role Needed: Admin

Cleans a number of messages, defaulting to 100.

Flags:

  • -b/--bots - Remove messages from bots.
  • -i/--invites - Remove messages containing invites.
  • -l/--links - Remove messages containing links.
  • -e/--embeds - Remove messages containing embeds.
  • -a/--attachments - Remove messages containing attachments.
  • -u/--user - Removes messages from the users specified, separated by commas.
  • -q/--query - Removes messages that match the provided query. You can also use /regex/.
  • -I/--invert - Reverses the effects of all the flag filters.
unban

Usage:

unban <userid> [flags]

Role Needed: Admin

Unbans a user.

If mod-logging is enabled, the unban will be logged.

Flags:

  • -r/--reason - The reason for the unban.
unmute

Usage:

unmute <user> [flags]

Role Needed: Admin

Unmutes a user.

If mod-logging is enabled, the unmute will be logged.

Flags:

  • -r/--reason - The reason for the unmute.
warn

Usage:

warn <user> [flags]

Role Needed: Admin

Issues a warning.

If mod-logging is enabled, the warning will be logged.

If kickat and banat have been set using the settings command, the target could potentially get banned or kicked.

Flags:

  • -r/--reason - The reason for the warning.
  • -c/--count - The number of warnings that will be issued.