/Josephine

A Discord bot with message auditing functions and other fun miscellaneous commands

Primary LanguageJavaScript

Josephine

A Discord Bot for auditing messages and other miscellaneous functions, using Discord.js.

This is a Discord bot that will read messages in a server and provide information on them, including how many messages a person has posted, the average number of messages a user posts, common words they will use, as well as providing graphs of how much activity a user has over time. Use !info or !graph and tag a user or channel to see this information. !count can be used to determine how many times a word has been said by each person or channel in a server. Messages are cached and her dictionaries are regenerated automatically every 30 minutes.

For moderation functions, Josephine can also list all users' last message time and add or remove roles depending on when their last message was using !listlastmessage and !roleadd. She can list users by a set of roles by using !rolehas and adding role names or tagging them. This can be useful for determining who has both of 2 roles, for example.

Josephine can add emojis given a link with !addemoji. The user saying it must have permissions to manage emoji on the server.

Josephine's function list can be accessed by typing !help.

Besides her usual message information functions, she can also do these miscellaneous functions:

!define will take the following word and give a definition from Google, including an audio reply.

Define Image

!emojify will take a message reply or text and add emojis, either read per word or with a 5% chance to add a random emoji anyway.

Emojify Image

!fortune will give a fortune cookie like message.

Fortune Image

!horoscope will give a user's horoscope for their birth sign.

Horoscope Image

!joke will tell a joke with a punchline behind spoiler text.

Joke Image

!math will solve an equation.

Math Image

!pop will give a grid of spoiler boxes with "pop" in them. The grid can be anywhere from 1x1 to 14x14.

Pop Image

!roll will roll a die. Specify with XdX to roll that many number sided dice.

Roll Image

!tarot will pull a tarot card.

Tarot Image

When using this, add a file called "Token.txt" with the bot token inside. Then use npm start to get started.