Oh god, another thing Artemis may be controlling
- Index
To even begin you need to make sure you are actually allowed to add bots to your server
Adding the bot is simple, you either hit the button Add Bot
on:
- https://artemisbot.eu/
Or you use the direct link:
- https://discord.com/oauth2/authorize?client_id=440892659264126997&permissions=8&scope=bot
Artemis is a multi-function bot.
- Moderation
- Warn system
- Case sytem
- Translation
- Internet Search
- Verification
- And more...
Go to https://artemisbot.eu/ and login there.
Then hit the tab Server Control
.
Click the server you want to modify, then scroll down to Channels
.
-
Welcome
- This channel is used to display the welcome message for new users
-
Logs
- This channel is used to display several type of logs.
-
Mute/Verify
- This channel is used to verify new users and store muted members. For this channel to be effective you need to use the role provided by Artemis
~/members
and give ONLY THIS role access to channels you would want to be locked. When a user gets muted all those channels will be invisible for the muted user, and verifying users may get access to these channels if they pass the captcha.
- This channel is used to verify new users and store muted members. For this channel to be effective you need to use the role provided by Artemis
-
HighLights
- When a message in one of the channels gets 3 🍵 emotes, the bot will try to highlight it. This channel will be used to store highlighted messages.
-
Reaction Roles
- This channel will be used to use reaction roles. Make sure that this channel is completely empty apart from the message(s) containing the role emotes.
-
Stream Notification
- This channel will be used to display if a user goes live on Twitch.
This is gonna get complicated oh boi.
I am going to make this a sort of step by step guide for the ease of it, follow along Pond.
- Setup your Reaction Role Channel.
- Pick a role you want to be self-assignable.
- Use the command Rolemanage to make it self asignable
- Create a new emoji (This has to be a custom emote), and give it the EXACT same name as the role you made self-asignable
- Go to the channel which you picked for the reaction role channel.
- Place a message there (You can use Embed), it does not matter what the message is, but perhaps information of what the role does.
- Right click the message you just made and select
copy ID
. - Now it's time to use React, use the ID on your clipboard as messageID and the emoji name you created which should be the exact same name as your role.
- If everything went well a new reaction should be under the message of which you copied the ID from.
- Click it to test if it worked.
- If Artemis sends a message like
Joined ****
then you are done here, you setup a reaction role.
This channel is also used for verification, time to pay some attention.
When Artemis first joins a new Guild she will create a role called ~/Members
.
This is the role she gives out to new users (or users who verified) and takes away from users who get muted.
Make absolutely sure that only users with the role ~/Members
have access to the channels you want them to see if they verify.
If you did this right, then both muting and verifying should work just nicely.
Artemis was created by:
Richard Dorrestijn
Discord: UtopicUnicorn#0383
A big thanks goes out to all the MIT licensed projects that I could use as reference guides, and of course to stackexchange.
This section will cover the commands Artemis has. Note that not every command may be available, because I don't update this guide quite as much as my bot. My apologies about that.
All of the below commands require you to use a prefix in front of them which you can setup on https://artemisbot.eu.
Example: !help
In this guide/wiki I am using the !
prefix, this is of course changable on the Artemis website.
Mod commands need the user who uses the commands to have at least kick permissions, and Artemis needs proper permissions, to simplify everything it might be best to give Artemis administrator permissions, which she prompts when getting added to a server.
When you have a verify channel set up and you have AutoMod on Strict mode (Which prevents verifying) you can use this command to manually approve users. This is also the command you want to use when a user has bad eyesight and such to the point where they cannot see the captcha.
Example usage: !verify @mention
Using this command will try to ban a user or users. Do note that Artemis needs valid permissions and needs to be above the user in the role hierachy. Using this command will also create a Case.
Example usage: !ban @mention [Reason for the ban]
Example usage: !ban @mention @mention @mention
Example usage: !ban userID userID userID
Cases are automatically generated when using certain commands. A case is used to keep track of the baddies.
Example usage: !case view caseNum
Example usage: !case user userID
Example usage: !case reason caseNum [Reason here]
Embeds are used to make some text look prettier. The first line contains the embed title, the rows/lines after that will be the content of the embed. Do note that this command needs you to use newLines (Shift + enter).
Example usage:
!embed [Title]
[Content]
[Content]
[Content]
This is possibly a dangerous command, this command allows you to remove a user's data from the database as long as the user is within your guild. This means that all user records such as warnings, last warning message, user level, user points and if the user is muted will be removed.
Example usage: !forceremove userID
This command will attempt to kick the user you specify. To properly use this command make sure that Artemis is in a higher role hierachy slot than the user you try to kick. Using this command will also generate a Case.
Example usage: !kick @mention
This command will mute the user you specify. The action will create a Case. Do note that without proper role permissions, channel permissions this command will fail. This gets explained in Mute_Channel.
Example usage: !mute @mention
Example usage: !mute 5 hour @mention
Example usage: !mute 5 second @mention
Example usage: !mute 5 minute @mention
Example usage: !mute 5 day @mention
Nick will allow you to change a user's nickname.
Example usage: !nick @mention [New Nick Name]
Purging is one of the main features of a Discord bot. This command will wipe a specified ammount of messages from the channel you use it in. Due to API limitations you can only purge 100 messages at a time, and only up to 2 weeks ago. Artemis allows you to purge from a mentioned user too, and a keyword which will remove n amount of messages containing the word.
Example usage: !purge 100
Example usage: !purge @mention 100
Example usage: !purge KeyWord 100
The support command is used to view, edit and set support related things. Support cases are shared across any server, basically creating a sort of stackexchange-like system. You do not need to have support channels set up to view cases.
To accept support cases you will have to use the command !support set
within the channel you wish to make a support channel (The same command will also unset the support channel).
Now that you have a support channel set up your members will have to simply say help
inside the support channel, they will be prompted to ask their question.
When the user submits the question, the support case will have been opened, and users may help the user who opened the question.
When the session is done (user uses the command !done
or lets the case expire) the one who answered the question should use !support answer caseNum [Answer here]
to add the answer to the database.
Example usage: !support set
Example usage: !support view caseNum
Example usage: !support answer caseNum [Answer here]
Example usage: !support user @mention
The topic command is used to change the topic of a situation, this topic is completely unrelated from mostly anything else.
Example usage: !topic
This command will unmute the mentioned member, this action will generate a Case. Users who have been properly muted will have their warning points reset after the unmute command. Their reasons (if given) do not get reset in the case system.
Example usage: !unmute @mention [Reason]
Within the Artemis Bot Network are a lot of servers which cover related topics (in Artemis's case it's space related and Linux related). Related servers often attract users from the same pool, usedata simply tells you if a user has been misbehaving in other servers, it will not show actual data of the user, only how many times a user has been warned and if the user has been muted in a server Artemis is also in.
Example usage: !userdata userID
This command makes use of existing webhooks, if there is no webhook in the channel you have set this up Artemis will create one if possible.
This command will convert all messages send within the server it has been setup in to be converted to uwu
speech.
It's a horrible thing, but people love it.
Example usage: !uwu
This command will warn a user, it will also generate a Case.
When a user is warned the warning point table for the user will be increased by 1.
When a user has 3 or more warning points and when the muting channel has been setup properly and the ~/Members
role has been properly applied to the channels, the user will be muted.
Example usage: !warn @mention [Reason]
This command allows you to see how many warnings a user has and what the latest reason of a warn was. It will also show if a user has been muted. An additional usage of this command is that it can reset warnings to 0.
Example usage: !warnings
Example usage: !warnings @mention
Example usage: !warnings @mention reset
Server commands need the user who uses the commands to have at least kick permissions, and Artemis needs proper permissions, to simplify everything it might be best to give Artemis administrator permissions, which she prompts when getting added to a server.
Automod is a tool which can help moderators out a little bit in their daily tasks,
Automod includes:
- A word filter (Filters are guild/server specific and will have to be setup by using the Wordlist command)
- Anti discord invites
- Anti spam
- Anti mention (If a user scrapes a list of users and uses that to mention everyone, if doen twice the user gets muted.)
- Anti Verification (if Strict mode is on)
Strict mode is used against raids, or when you want users to be verified manually by using Approve
Example usage: !automod
Example usage: !automod on
Example usage: !automod off
Example usage: !automod strict
This command allows you to see which users in your guild/server have are don't have a certain role you specify.
Example usage: !check yes roleName
Example usage: !check not roleName
This command is a core command for Reaction_Roles.
This command only accept CUSTOM emojis, you can add as many to this command as a message can hold. When used properly the React command will react to the message you specified with the specified emojis.
The react command in combination with the message ID should ONLY be used WITHIN the channel the message originates from.
Example usage: !react MessageID EmojiName EmojiName EmojiName
This is a core command for Automod.
Without arguments the wordlist will be shown, to somewhat protect people from seeying bad words the wordlist will be shown within spoiler tags. When you add words to the list, when Automod is ON users without the kick permission will get their full message removed without notice when they use a word on the list. This system is not perfect and is not meant to be used as your main moderator.
Example usage: !wordlist add Word1 Word2 Word3
Example usage: !wordlist del Word1 Word2 Word3
Mscore commands need the user who uses the commands to have at least kick permissions, and Artemis needs proper permissions, to simplify everything it might be best to give Artemis administrator permissions, which she prompts when getting added to a server.
This command allows you to gift or retract points from a user if leveling is on for your guild/server.
Example usage: !add @mention -100
Note the minus symbol
Example usage: !add @mention 100
This is a semi-core command for Reaction_Roles.
This command will allow you to add or remove a role from the self-asignable role list.
When a role is self-asignable then a user may use !join
or !leave
to obtain and remove the role for themselves.
Do note that Artemis's role needs to be higher in the role hierachy than the role you try to add/remove.
Using this command with success will add the role to the list if it was not there, and remove it from the list if it was there.
You can check which roles are self-asignable with the Numbers command.
Example usage: !rolemanage RoleName
Commands in this category do not need special permissions
This command will show the user a help menu which is only controlable by the user who called for it. It will show every command available sorted into categories. Users can also get a command explained by adding the commandname to the help command.
Example usage: !help
Example usage: !help rolemanage
This will explain the command named rolemanage
This command will show the user detailed information about the guild/server they are in.
Example usage: !info
This is basically self promotion for me. This command shows my GitHub, Paypal, Website and my main Discord Server as well as my username with discriminator. It will also hold a link to add Artemis to your own server.
Example usage: !invite
This will show the user if they have Autotranslation on for themselves. They can change this on the Artemis website if they please, by default this is off.
Example usage: !opt
This is just a ping command, checks the lag between messages...
Example usage: !ping
This is a command that allows the user to set a reminder for themselves. When the time comes for them to be reminded they will be pinged in the channel they used the command in. Using the command without arguments will show you how to use the command as well as active reminders.
Example usage: !remindme
Example usage: !remindme 10 hours [reminder]
Seconds, minutes and hours are supported
Example usage: !remindme delete clear
Delete all reminders for yourself
Example usage: !remindme delete DeletionKey
Delete only the reminder matching the deletion key
This command allows you to search google... within Discord...
Example usage: !search [keywords]
This command will show you detailed info about yourself or the user specified. It can also be used in combination with Specs to share your system info.
Example usage: !userinfo
Example usage: !userinfo @mention
Example usage: !userinfo userID
Commands in this category do not need special permissions
This command will show the leader board regarding points and levels. It also holds a small competative rank vs other servers with Artemis.
Example usage: !board
Users can use this command when there are self-assignable roles. This command will give the user the coresponding role if it exists.
Example usage: !join RoleName
Users can use this command when there are self-assignable roles. This command will take away the coresponding role from the user if it exists.
Example usage: !leave RoleName
This command will show a neat graphic card for with level/points info as well as warnings for the user who uses this command. You can also specify it further by providing an userID or @mention.
Example usage: !level
Example usage: !level @mention
Example usage: !level userID
This command is a core command for Rolemanage.
When this command is used it will show all available self-asignable roles along with the number of members who have that role.
Example usage: !numbers
Commands in this category do not need special permissions
This command will pull an available question from AskUbuntu using their API. It is a garbage API though, so just use search.
Example usage: !ask [question]
This command has a distribution list of 900+ entries.
When this command is used it will display a total random distribution from the list in the classical I am using Arch BTW
format.
Example usage: !btw
This command will show one part of a 2 part story between rms and linus.
Example usage: !linus
This command allows you to view manual pages provided by cheat.sh
Example usage: !man neofetch
This command allows users to see if a package they need/look for is available in the Arch repos or the Ubuntu repos.
Example usage: !package arch [packageName]
Example usage: !package ubuntu [packageName]
This command will search the Proton Database and Steam API for the game you specify. It will show if a game is native to Linux, or if Proton partially or fully supports it.
Example usage: !proton subnautica
This command will show one part of a 2 part story between rms and linus.
Example usage: !rms
This command will allow you to upload a piece of text to your Userinfo. Usually people use this command to share their system specification.
Example usage:
!specs neofetch
output
output
Commands in this category do not need special permissions
This command will show the user their own or other profile pictures.
Example usage: !avatar
Example usage: !avatar @mention
This will show a random bird picture.
Example usage: !bird
This command will show a random cat picture. These cats are my own.
Example usage: !cat
This command will show the user a random cat fact.
Example usage: !catfact
This command allows you to convert:
- CM to Inch
- Inch to CM
- Celcius to Fahrenheit
- Fahrenheit to Celcius
Example usage: convert NUM cm
Example usage: convert NUM inch
Example usage: convert NUM celcius
Example usage: convert NUM fahrenheit
Shows the user a random dog picture.
Example usage: !dog
This will show a bigger version of the custom emoji you provide.
Example usage: !emoji :glitch:
This will show a random wanted poster for yourself or the user you specify.
Example usage: !fbi
Example usage: !fbi @mention
This command will show you a random fox picture.
Example usage: !fox
This will show the user a random geeko picture, honk honk.
Example usage: !honk
This will display an image as if hugging the specified user.
Example usage: !hug @mention
RESTRICTED COMMAND, CONTACT ME IF YOU NEED ACCESS
Example usage: !lenny
This will fully load a webpage within the bot's code and then return the loading speed to the user.
Example usage: !p https://artemisbot.eu
A small collection of single and double screen wallpapers. The command will return a random wallpaper.
Example usage: !wallpaper s
Single screen wallpaper
Example usage: !wallpaper d
Double screen wallpaper
This command will show you a small description of the wikipedia page you search for.
Example usage: !wiki GNU/Linux
This command will show you an XKCD comic.
Example usage: !xkcd
Shows the most recent comic
Example usage: !xkcd NUMBER
Shows the specified comic coresponding to the number you provided
Example usage: !xkcd random
Shows a random comic
Commands in this category do not need special permissions
This will show if a notification in a set stream channel will show up for the user. This can be changed on the Artemis website, by default this is ON.
Example usage: !stream
Commands in this category do not need special permissions
Shows the queue if there is music playing.
Example usage: !np
Pauses the music player.
Example usage: !pause
Plays a specified song or adds it to the queue if there is a song playing already.
Example usage: !play YtURL
Example usage: !play Search Query
If the music player was paused then this command will resume it.
Example usage: !resume
Skips the song it currently is playing. If you provide the coresponding song number provided by Np it will skip that exact song.
Example usage: !skip
Example usage: !skip 4
This skips the 4th song in the queue
This will stop the music player.
Example usage: !stop
This will change the volume of the music player from 1-100
Example usage: !vol NUM