Commands - OtaK/AwesomeBot GitHub Wiki

Listed on this page are the various commands that AwesomeBot contains, along with short descriptions of what those commands do. Click on a command name for detailed information on that command.

How to Use Commands

Public commands are available in any channel/server where the bot is connected. The bot will respond when the message begins with his mention, for example: @AwesomeBot <command> <option1> <option2>. This can be changed per-server, however. You can always use @AwesomeBot help to get the syntax for a specific server. For PM commands, simply start the message with the command name.

General Commands

Each of the following are available for use in a public chat. Tag the bot and use one of these commands.

Command Description
8ball Predicts the answer to a question
about Tells you all about the bot and where to get more info
alert Allows members to message the admins
anime Searches anime shows using Hummingbird
appstore Searches the Apple App Store for one or more apps
archive Produces a JSON file of the last n messages in the channel
avatar Posts a user's profile picture
ban Removes a member from the server and prevents them from coming back
calc Quickly evaluate a mathematical expression
cat Random picture of a cat!
catfact Random fact about cats
chatterbot Displays the chatterbot currently in use
choose Randomly chooses from a set of options
convert Converts between units of measurement and currencies
cool Sets a command cooldown for the channel
countdown Set a timer for an event
ddg DuckDuckGo Instant Answers
emoji Fetches the large version of an emoji
eval Maintainer only: executes some JS code
fortune Tells your fortune (not really)
games Lists the games being played on this server in descending order
gif Gets a GIF from Giphy with the given tags
giveaway Easy way to randomly give away a secret of some sort
help Shows the complete list of bot commands and features specific to this server or help for a single command
image Searches Google Images with the given query and returns the first or a random result
imdb Provides movie and TV show data
imgur Uploads an image to Imgur
info Lists basic stats about this server
join Returns the OAuth URL to add the bot to a server
joke Tells a random joke!
kick Removes a member from the server
linkme Searches the Google Play Store for one or more apps
list In-chat to-do list
manga Searches manga data
meme Generates a dank new meme
messages Shows the number of messages a user has sent in the past week
nuke Deletes number of messages in a channel, optionally only from specific user.
numfact Random fact about a number
ping A useful command to tell if the bot is alive
points A quick way to get the number of points for a user
poll Quick way to run a poll on a server
pokedex Searches Pokemon database by Pokedex number
profile An all-in-one command to view or set information about users
quiet Turns off the bot in the channel
reddit Gets the top 1-5 HOT posts from a given sub on Reddit
remindme Set a reminder for yourself in a given number of days, hours, minutes, or seconds
role View or give yourself roles
roll Generate a random number. Without any parameters, this will roll a 6-sided die
room Allows anyone to create a temporary channel with a few other members
rss Gets 1-5 entries from the provided RSS feed
say Says something in the chat
search Searches Google for a given query; returns the top 1-5 hits
shorten Uses goo.gl to shorten or decode a URL
stats Shows the most active members, richest users, most played games, and most used commands on the server for this week
stock Fetches basic information about a stock symbol from Yahoo! Finance
strikes Shows strikes for a user
tag A quick snippet response system, inspired by the command in 42
time Gets the time in a city or country
translate Uses Microsoft Translate to translate a word/phrase into another language
trivia AwesomeTrivia, a fun question-and-answer group quiz game
twitter Fetches the Twitter timeline for a given user and shows the last 1-5 tweets
urban Defines the given word from Urban Dictionary
vote Votes on an active poll or shows ongoing results
weather Gets the current weather and forecast for the given location from MSN Weather
wiki Shows the first three paragraphs of the Wikipedia article matching the given search query
wolfram Displays an entire Wolfram|Alpha knowledge page about a given topic or person
xkcd Fetches today's XKCD comic or by ID
year Displays the exact amount of time until next year!
youtube Gets a YouTube link with the given query, including channels, videos, and playlists

Anything else will be passed to the active chatterbot Program O.

8ball

Usage: 8ball followed by a question

The 8-Ball was a toy that would give you a preset answer after you asked it a question and shook the toy. This command emulates that toy. Giving you one answer out of the selection of preset responses, use it to predict your future or make potentially life-changing decisions. The 8-Ball is never wrong.

about

The about command tells you about the bot and where to find additional information. It does not take any parameters or options. In the official AwesomeBot, it returns the following:

about message

anime

Usage: anime <search query>followed by the number of your desired selection

This command allows you to quickly look up information on a certain anime from Hummingbird.

appstore and linkme

Usage: appstore app1[,app2,...] or linkme app1[,app2,...]

Have you ever wanted to quickly link a cool app for someone? This command lets you do just that. It doesn't even require tagging the bot; regardless of platform, you can easily search for app listings and pull up their ratings and prices. For the Google Play store, use linkme; for the Apple App Store, use appstore. The syntax is the same for both commands, but we will use linkme for examples here.

To fetch an app link, send a message with linkme <app name> and the bot will send a listing with the name, developer, rating, price, and URL. You can fetch multiple apps by using linkme app1, app2, app3. Some apps are restricted by region, but AwesomeBot searches the US store by default.

avatar

Usage: avatar <username>

Wanted to see someone's avatar, but didn't want the spam that comes with profile? Well this one's for you. Simply say avatar followed by the username of the person whose avatar you want to see. It's that's easy.

ban

Usage: ban <username>

Pretty straightforward this one, bans the username specified in the command.

cat

Usage: cat

Would you like a picture of a cat? Of course you would, which is why this command exists. If you're lucky you might even get a gif.

catfact

Usage: catfact

Entertain your server with more facts about cats than you ever imagined!

choose

Usage: choose option1|option2|...

Sometimes you have a tough decision to make, and the best way out is to seek AwesomeBot's wisdom - use the choose command. Provide 2 or more options, separated by |, and AwesomeBot will randomly pick one.

convert

Usage: convert <numerical quantity> <original unit> to <desired unit>

This command converts between units of measurement and currencies. Here's a list of supported units:

  • Length
    • mm
    • cm
    • m
    • in
    • ft
    • mi
  • Mass
    • mcg
    • mg
    • g
    • kg
    • oz
    • lb
  • Volume
    • mm3
    • cm3
    • ml
    • ltr
    • m3
    • km3
    • tsp
    • tbsp
    • in3
    • fl-oz
    • cup
    • pnt
    • qt
    • gal
    • ft3
    • yd3

You can also use standard currency codes, with data provided by Open Exchange Rates, or F or C for temperature conversions.

emoji

Usage: emoji <emoji or name>

We don't know why you'd ever want to use this, but here it is: provide the name of an emoji or just a plain emoji as the parameter for this command and you'll get a larger version (iOS emojis, sorry).

eval

Usage: eval <code>

If you are the bot maintainer, you can use this command to run some JS code for testing purposes. This is useful for live debugging.

games

Lists all of the games being played on the server in descending order of number of players. Also shown are the specific members playing each game and the cumulative time spent on each game in the past week.

gif

Fetches a GIF from Giphy with the given tags. There isn't anything else to it; just use gif <tags to search for> and let the memes flow...

help

Usage: help [<command name>] [public]

We've gone full meta. This command provides information about bot commands. With no options, you'll receive a complete list of commands and features specific to the server via PM. If you include a command name as a parameter, you can view the extended help for that command. Using the public option at the end will show the appropriate help content in the main chat instead of via PM.

image

Usage: image <query> [random]

Much like the GIF command, the image command simply fetches the top Google Image Search result for a given query. Using the random option at the end will make it a random hit instead of top (for example: image AwesomeBot random).

imdb

Usage: imdb <search query>

Searches IMDb for your search query and returns the most relevant result.

imgur

Usage: imgur followed by a URL to an image

Quick and simple command to upload an image to Imgur and give you a hotlink to it.

info

Usage: info

Displays basic information on your server, such as the number of members and the server owner.

join

With the new Discord official API, bots cannot accept normal invites to servers. Instead, you can use this command (it does not take any parameters) to get the OAuth URL for the bot, which will allow you to add it one of your servers. Note that you must have the Manage Server permission in a server to add a bot to it.

joke

This one is dead simple. Use the command and it will tell you a joke!

kick

Usage: kick <username>

Much like the ban command, this command will kick the specified username.

list

Usage: list <new entry> or list ["done", or "remove">] [<no. to finish or remove>]

A basic to-do list for your server. New entries are added with the first command, and entries can be marked complete or deleted with done and remove respectively. Simply typing list will display your entire to-do list.

manga

Usage: manga <search query>followed by the number of your desired selection

This command allows you to quickly look up information on a certain manga from Manga Eden.

meme

Usage: meme image name|top text|bottom text

Dank memes are loved by many, but there's never enough for everyone. With AwesomeBot, you can create new memes using the meme command. Provide the name of the meme image, top text, and bottom text as parameters separated by |. For example, you could use meme one doesn't simply|one does not simply|defeat awesomebot:

awesomebot meme

messages

Usage: messages [<user or "me">]

This command is much like the points command, providing a simple way to check the number of messages you or another user have sent on the server in the past week. Use without a parameter to view the list for the entire server, use the me option to check for yourself, or provide a username as the parameter.

numfact

Usage: numfact <number>

Use this command to get an interesting (if a little useless) fact on the number you chose. Did you know that a haiku has 17 syllables in it? Well now you do! (numbers must be in arabic numeral form)

ping

The simplest command of them all! Ping gives you basic runtime stats for the bot: version, uptime, number of servers/users, and, if available, the status page URL. This command is also really useful for checking if the bot is alive. For more information on the status page, click here.

ping command

points

Usage: points [<user, "me" or "lottery">]

The points command provides a minimal way to check how many points a user has or get a list of all the members with positive points on the server. points me gets your points, points <username>, and just points lists users' points on the server in descending order.

We'll also take this opportunity to describe the AwesomePoints karma system. This is one of AwesomeBot's exclusive features, and it's integrated throughout the bot. It works much like karma on Reddit, but can be disabled per-server and there's no downvoting. Use @user +1, @user ^, @user up, ^ (for the previous message) to upvote a user. This will give them 1 point without taking any away from you. @user gild, on the other hand, will give the user 10 points from your points. On servers with spam/NSFW filter enabled, you'll lose 50-100 points for violations. If the server has stats enabled, you'll get points proportional to your activity level if you are one of the 5 most active on the server at the end of the week.

Another way to get points is by winning the PointsBall lottery. Use points lottery to buy a ticket, which costs 500 points. You can buy as many tickets as you wish, only limited by the number of points you have. You can use points lottery end to choose the lottery winner immediately or wait an hour. There are some restrictions on this, though. There must be at least one other person who bought a lottery ticket and the winner cannot be a blocked user, so try not to spam when buying tickets. PointsBall winnings increase with time, starting at 20 and going up to 1 million before the count resets. There's no way to tell how much you win until the winner is chosen, which adds to the fun!

profile

Usage: profile <username>

This is the all-in-one command to view information about users. If no parameters are provided, it will show your user profile. This includes ID, avatar URL, points, strikes, the time you joined the server, when you last opened Discord, and any custom information you have set. If the parameter is a username, that user's profile will be displayed.

quiet

Usage: quiet <"all" or no. of seconds>

This command is admin-only. It allows you to turn the bot off the in the current channel, or all channels with the all option. Alternatively, use a number of seconds as the parameter to turn the bot off for that amount of time. You can turn the bot back on at any time with the start or start all commands.

reddit

Usage: reddit <subreddit> [<count>]

Fetches the n HOT posts from a given subreddit. If count is not provided or is not within 1 and 5, n defaults to 5. When providing the subreddit, exclude /r/ from the name. The response will include the score, title, poster, and link for each result.

remindme

Usage: remindme <numerical quantity> <"d", "h", "m", or "s"> <note> or remindme to <note> in <numerical quantity> <"d", "h", "m", or "s">

Sets a reminder to do something in a given amount of time. You'll get the reminder via PM. Reminders are persistent across bot restarts. Make sure to use the above syntax. It's that simple.

remindme example

role

Usage: role or if custom roles are enabled on your server

By default role will display a list of the roles in your server as well as the users who have those roles. If you have role selection enabled on your server, you can you this command to add yourself to a role by typing role <rolename>. You can add other users to roles with role <role name or hex code>[|<username or hex code>].

roll

Usage: roll [<minimum number inclusive>] [<maximum number inclusive>]

The roll command generates a random number. Without any parameters, it will roll a 6-sided die. With one parameter, a number between 1 and <number> (inclusive) will be rolled. Otherwise, include a minimum integer and maximum integer as the range for the random number.

rss

Usage: rss <feed name> [<count>]

Gets the top n articles from an RSS feed. Feeds are registered per-server, with the one default being gnews for Google News. Bot admins may have added additional RSS feeds in the server; you can view these in the help command. You can also provide a full RSS feed URL for other feeds. Count is a value between 1-5 and defaults to 5 if it is not provided. The response for this command will include the title of each RSS article.

say

Usage: say <what you want the bot to say>

The say command makes the bot say something. This might seem useless, but if you delete the message with your command afterwards, it can give the impression that the bot is sentient ;)

search

Usage: search <query> [<count>]

Have you ever been too lazy to switch out of Discord and Google something? AwesomeBot saves the day! This command allows you to retrieve n results from Google for a given query. Use count to specify the number of hits to return (1-5), or exclude it to use the default of 5.

shorten

Usage: shorten <URL>

Quickly shorten URLs with this command. It's pretty simple: provide a full URL as the parameter to get a shortened goo.gl link, or provide a goo.gl URL to get the full target link.

stats

Usage: stats [clear]

The stats command is the frontend for the AwesomeBot's comprehensive stats system. It shows the most active members, richest members (by points), most played games, and bot command usage on the server in the past week. If you are a bot admin, you can use the clear option to reset stats. Here's an example of the stats command output:

stats example

stock

Usage: stock <symbol>

Fetches information about a given stock symbol from Yahoo! Finance. That's pretty much it. Here's an example:

stock command example

strikes

Usage: strikes or strikes <username>

Use this command to view a list of users on your server who have strikes, or see detailed information on a user's strikes if the command is used with a username.

tag

Usage: tag <key>|[<value or ".">]

Inspired by the tag command in the 42 bot, this command provides access to a database of custom tags. To set a tag, use, for example, tag Bob|...the Builder!. This will make the bot return ...the Builder! whenever you use tag Bob. You can use tag Bob|. remove the value for this tag. There are a few built-in tags: shrug, lenny, some copypastas, and the name of any Twitch emote. Bot admins can delete all tags on the server with tag clear. You can view all tags by using the command without any parameters.

time

Usage: time <city>

Members of the Discord community are located all around the world, in different timezones. Use this command to check the time in a certain city or country, or without a parameter to check the UTC time.

translate

Usage: translate <text> <source lang> to <target lang>

Discord is a global service, with users speaking a variety of languages. This command allows you to easily translate a word or phrase from a given language to your native tongue. For example, translate Gracias ES to EN will return Thank you. You must use language codes (e.g. EN, ES, etc.) instead of the full language name.

trivia

Usage: trivia <start, end, next, or answer> [<question set to use>]

One of AwesomeBot's best features is its fun, built-in group trivia game. You can start a game in a public channel with trivia start (to use the default set) or trivia start <question set name> (to use a custom set; a list of custom sets is available in the help command). Once started, you can use trivia next to skip trivia <answer> to provide a response. Your answer doesn't have to match the real answer exactly, but should be within a few characters' difference. You'll be awarded 5 points for each correct answer. Once you're done, use trivia end to view your group score.

twitter

Usage: twitter <username> [<count>]

The Twitter command uses TwitRSS.me to fetch a Twitter user's timeline. By default, 5 tweets are returned, but you can include the count parameter set a value between 1 and 5.

urban

Usage: urban <word>

If you've ever wanted to quickly grab a definition, this command is for you! It shows the community-sourced definition of the given word/phrase and its score.

urban command example

vote

Usage: vote [<no. of option>]

Before using this command, you must start a poll in the channel. Then, you can use the vote command without any parameters to show the current results, including the number of votes for each option and current winner. Or, you can provide the number of the option you want to vote for as a parameter. For example, in this poll:

What's your favorite flavor of ice cream?
    0: Chocolate
    1: Vanilla
    2: Strawberry
    3: Other

a vote for "Vanilla" would be: vote 1

weather

Usage: weather <location> [<"F" or "C">]

This command gets the current weather conditions and forecast from MSN Weather for the provided location, including temperature, wind speed, and precipitation. If you wish, you can add F or C as an option at the end of the command to change the temperature units. You can set a default location by PMing the bot profile Location,<city>; then you can use the weather command without any parameters.

weather command example

wiki

Usage: wiki <article name>

Well, this is pretty simple: this command fetches the first 3 paragraphs of a Wikipedia article. Make your query as specific as possible.

wiki command example

wolfram

Usage: wolfram <query>

For more detailed information than a Wikipedia article, you can use the wolfram command to get the full Wolfram|Alpha result for a query. This includes all sections and images.

year

The precise time until next year!

year command

youtube

Usage: youtube <search term(s)>

This command searches YouTube for the provided keyword(s) and return the first result, which could be a video, playlist, or channel. Discord will allow you to play videos inline.

NSFW Commands

Each of the following NSFW commands are available for use in a public chat. Tag the bot and use one of these commands.

Command Description
e621 Searches by tag on e621.net
rule34 Searches by tag on rule34.xxx
safebooru Searches by tag on safebooru.org

PM commands

The following commands work via PMing the bot on Discord. Tagging the bot is not necessary.

Command Description
afk Sets an AFK message to be shown when you are tagged
config Provides a link to the online settings page for a server or the bot in general
mentions Lists the messages in which you have been tagged in the past week
pmmentions Toggles the option to have messages in which you are tagged be sent to you via PM
poll Starts a new poll in the main chat
profile Adds a value in your user profile
reminders Shows pending reminders and allows you to cancel
remindme Set a reminder for yourself in a given number of days, hours, minutes, or seconds
say Says something in the main chat
vote Discreetly votes on a poll in the main chat

Anything else will be passed to Cleverbot.

afk

Usage: afk <message>

Sometimes you know you're going to be away from keyboard (AFK) for some time and want to let others know if they tag you. With AwesomeBot, you can use the afk command to set a message (e.g. afk doing the dishes) via PM and when someone tags you in any server, they'll get: @you is AFK: doing the dishes. When you're back, use afk . to remove the message or just send a message in any server (and the AFK message will be auto-removed).

config

Usage: config [<server name>]

This command's sole purpose is to give you a link to the bot's web interface (the maintainer must have set this up). If you're the bot maintainer, use config without any parameters to access the maintainer console. If you want to configure a single server, provide the exact server name as the parameter to access the admin console.

Login is done using a token that is present in the URL that you will receive. You can either click the link or enter the token in the box on the status page. The timeout for each online console session is 5 minutes, so you must either logout or wait that time to use the command again.

mentions

Usage: mentions <server name>

Shows the full list of messages in which you have been mentioned in the past week on the given server. This is a handy way to check the mentions you've missed since you were away. The list includes the content of the message, time it was sent, and author, sorted in reverse chronological order. When you use the command, the list is cleared until you are mentioned again.

pmmentions

Usage: pmmentions [<server name>]

This command is an extension of the mentions command; it toggles the option to have messages in which you are mentioned sent to you via PM when you are offline. This is best used if you've muted a server and still want notifications or if you can't rely on Discord's push notification system. Running the command for the first time will turn this option on in the given server; running it again will turn it off again.

Without any parameters, this command will toggle the option in all servers and display your current configuration.

poll

Usage: poll <server name> <channel name>

Another one of AwesomeBot's best features is his ability to conduct live, in-chat polls; this command is the way to start one. Given that the bot admins in the server have enabled the poll option, you can provide the server name and channel name (exclude the #) as parameters to get started with creating a poll. You will be prompted for the title of the poll and the options. You can use the default yes/no option by responding with . or make your own, separated by commas. You can abort at any time with poll close, or use that same command to end the poll when everyone has voted. Here's an example of creating a poll:

poll example

Once the poll has been started, you can vote publicly in the channel in which it was created or discreetly via PM.

profile (PM)

Usage: profile <key>,<value or ".">

The profile PM command is how you add information to your user profile. Separate the name of the section and the value with a comma. Once you've added a section, remove it by using . as the value.

profile (PM) example

reminders

Usage: `reminders []

Without any parameters, this command shows a list of pending reminders you've set along with how much time is remaining on them. If you provide the name of a reminder as the parameter, the bot will cancel it.

say (PM)

Usage: say <server name> <channel name> <what to say>

This command is an admin-only version of the public say command, useful for reminding members of the rules. Provide the server name and channel name (exclude the #) as the first two parameters and what you want the bot to say as the third parameter (you can use the usual Discord markdown syntax for this). The bot will speak in the main chat and other members will not be able to tell who sent the message.

vote (PM)

Usage: vote <server name> <channel name> <no. of option>

Sometimes, you don't want your vote on a (sensitive) poll to be public, and that's totally fine! With AwesomeBot, you can vote on a public poll via PM using this command. Provide the server name and channel name (exclude the #) as the first two parameters and the number of the option you want to vote for as the third parameter. Of course, you can only vote once, but you could use . as the third parameter here to remove your vote and then vote again.

⚠️ **GitHub.com Fallback** ⚠️