Explore

Advertise

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Ad

Remove Ads

Artemis

Artemis

5

โ€ข

0

Invite

Vote (1)

An allround bot, automod, leaderboard, remindme, stream noticifations and custom commands.


Project Artemis

Discord Moderation, support and music bot.

Open Issues License Stars Forks Code Size DiscordWebsite

Artemis is an all-round Discord bot, who's purpose is to provide your server with a powerful moderation and support bot! For example purposes the prefix used for bot commands in this file are !

Features

  • Admin Cases
  • Music commands
  • Support Tickets
  • Cleverbot integration
  • Moderation commands
  • Custom Commands

Table_of_Contents

First_Use

Adding_the_bot

To add the bot you can go to Artemis's website or follow the direct invite It is important to give Artemis proper permissions(administrative) and a high spot in the role hierachy to ensure most functions work properly.

Permissions_overview

For Artemis itself the best option is to give her Administration permissions and a high spot in the role hierachy.

You might have noticed that there are permision levels in the command tree, this is basically what rights users have to use these commands, I have made a difference between Regular users, Helpers, Moderators and Administrators. I will now explain the permission system:

  • Permission level 0

    • Regular users regardless of their permissions can use these commands
  • Permission level 1

    • Users with the permission MUTE_MEMBERS may use these commands, this level has helpers in mind.
  • Permission level 2

    • Users with the permission KICK_MEMBERS may use these commands, this level has moderators in mind.
  • Permission level 3

    • Users with the permission BAN_MEMBERS may use these commands, this level has administrators in mind.
  • Permission level 4

    • Users who own the bot may use these commands, this does NOT include server owners.

To give a user all rights to use all commands with exception of level 4 give the users all 3 relevant permissions in their role.

Setting_up_the_channels

Within a channel use the command !setup --setup=channels This will give you a step by step initialization of the channels.

  • Welcome channel will post a small embed for the entering/verified user.
  • Mute channel is where muted users are dropped
  • Verification channel is where new members are dropped and have to perform a small verification test.
  • Reaction Role channel is where Artemis will check if you have setup reaction roles and where users will have to get the roles.
  • Highlight channel is where messages with 3 tea reactions on their message will be displayed, it's simular to a starboard
  • Stream Notification channel is where streams from twitch will show up, you have to add streamers to your own list to let them pop up.
  • Logs channel is where the enabled logs go.

Setting_up_the_settings

Within a channel use the command !setup --setup=settings

  • Stream (at)here pings: if this option is ON then streams that go online will be pushed out with an @here notification.
  • Automod: If this is ON then anti discord invites, word filter and the phrase filter will be active.
  • Guild Prefix: Basically what symbol has to be used before a command E.G: a!setup
  • Point and level gathering: If this option is ON then users will gather points and level up respectivly.
  • Guilds default role: This option allows you to select a role(by mentioning it or using the ID) which Artemis will read as the default role, to use Artemis properly you will have to set this up as it will unlock the muting command.
  • Bonus Points: Thanking users and congratulating them will give the target user a set of points, this option allows you to edit how many points they get.
  • Bots Welcome image: When a user joins the server and is verified then in the welcoming channel an embed appears, this embed has the option to use an image, that is what this option does. This setting wants you to give it an URL.
  • Bot responses: When a sentence starts with artemis the bot will parse it and use cleverbot to give a reply. when this setting is ON it will do that.
  • Welcoming message: Users who join the server will receive a DM from your server to notify they joined it, you can supply extra text such as information about what channels they should use etc.

Setting_up_the_logs

Within a channel use the command !setup --setup=logs This command will give you a step by step walktrough of which Logs are supposed to be ON and which one should be OFF

Setting_up_the_levels

Within a channel use the command !setup --setup=levels When this command is used it will ask you if you want to create or remove a level-up. When you pick create it will give you a small step by step walktrough of which level and which role should be attached to each other. When you pick remove the command will ask you to provide the level which has to be untied from a role.

Setting_up_a_support_channel

Within a channel use the command !setup --setup=support when this command is used it will ask you to mention a channel, this channel will be the core channel where support sessions are used, you will also be asked if there is something like a guru/scholar/know-it-all role and if there is you are allowed to mention the role or their role ID so that when a support ticket is opened the role gets pinged.

Brief_overview_of_moderation_commands

The following commands will create an admin case, these cases can be reviewed, edited and invalidated:

  • mute
  • kick
  • ban
  • warn

When these commands are used Artemis will also try to DM the user in question to inform them about the moderation action taken against them.

Advanced_Use

Adding_streamers

By using the command !streamer StreamerName the streamername will be added to your personal guild database. By using the same command again you can remove the streamer from your list. When adding a streamer it will first check if it's a valid streamer, if not it will return an error which is completely fine.

When a streamer is on your list Artemis will regulary check if the streamer is online, if they are then Artemis will send a notification to the stream notification channel.

Setting_the_Reaction_Roles

This is probably what you were looking for right? Alright let's try to make this as easy to explain as possible.

You will need a reaction role channel which will be setup with the command !setup --setup=channels

Now you need to have a role which you create in your server settings. for this example we will call the role @ArtyPatty with the role ID 12345678 NOTE: The role you create and want to be a reaction role has to be below Artemis's role in the role hierachy

Now that we have a role we use the command !role --action=add The processor will ask what role should be a reaction role, now you reply with either @ArtyPatty OR the role ID 12345678 When you hit enter Artemis will check if the role exists, if it does then the processor will ask you which emote should be tied to the role, for this example we will use the emote ๐Ÿ‘, you can also use a custom emoji. When you hit enter then the processor will tell you that the role has been added to the self-assignable list.

Click on the reaction role channel in your channel list. If the channel is empty just write a new message in there, this message may contain everything. Now that there is a message in there right click the message and hit Copy ID. In the same channel use the command !react ๐Ÿ‘ --message=MESSAGE_ID_YOU_COPIED This will add a reaction emote to the message you provided with the message ID, when users click on this reaction the user will get the role that has been tied to the ๐Ÿ‘ emoji.

Commands

Category: administrative

Command name: !add

Permission level: 2 Description:

This command allows you to add or remove points from a user or role.
This command needs parameters.

Example usage: !add --user=userID --points=20
Example usage: !add --user=@mention --points=20
Example usage: !add --user=roleID --points=20
Example usage: !add --user=@roleMention --points=20
Example usage: !add --user=userID --points=-20

Command name: !ban

Permission level: 3 Description:

This command allows you to ban a user with a reason
 you can also specify parameters for time.
Acceptable time parameters are: second OR minute OR hour OR day OR month OR year
Using this command without time parameter results always in a permanent ban.

Example usage: !ban userID --reason=This is a reason --time=10 hour
Example usage: !ban @mention --reason=This is a reason --time=10 minute

Command name: !case

Permission level: 1 Description:

View
 edit
 invalidate and lookup cases.
Cases are created for mutes
 warns
 kicks and bans.

Example usage: !case --view=3
Example usage: !case --user=@mention
Example usage: !case --edit=3
Example usage: !case --invalidate=3

Command name: !eval

Permission level: 4 Description:

Evaluate a piece of code.
This command allows you to execute smaller commands and such from the chatbox.

Example usage: !eval Math.random() * 10

Command name: !kick

Permission level: 2 Description:

Allows the user to kick another user.

Example usage: !kick @mention --reason=Fill out reason here
Example usage: !kick userID --reason=Fill out reason here

Command name: !lookup

Permission level: 1 Description:

Lookup user info.
This command shows you pas nicknames
 usernames
 wanrings
 latest cases and such.

Example usage: !lookup --user=@mention
Example usage: !lookup --user=userID

Command name: !massrole

Permission level: 2 Description:

This command allows you to give everyone a role.
Please use a role ID if you are in a public channel.

Example usage: !massrole roleID
Example usage: !massrole @roleMention

Command name: !message

Permission level: 1 Description:

This command allows you to see messages send in your server.
This command compliments the privacy respecting deletion logs.
It allows you to see a message that has been deleted/send in channels where you do not expose the user in question.

Example usage: !message --message=messageID
Example usage: !message --user=@mention
Example usage: !message --user=userID

Command name: !mute

Permission level: 1 Description:

Mute a specified user.
Mutes are always permanent without the time flag.
Acceptable time flags are: second
 minute, hour, day, month, year

Example usage: !mute @mention --reason=Reason here --time=10 minute
Example usage: !mute userID --reason=Reason here --time=10 day

Command name: !permissions

Permission level: 1 Description:

This command allows you to see what permissions the bot has in the channel you use the command in.
  
  Example usage: !permissions

Command name: !permit

Permission level: 2 Description:

Allows the user of this command to ellevate another user permission level for one charge.
Permission changes with this command are good for one charge.
You can only bestow a permission level to another use that matches your own.

Example usage: !permit userID --level=2
Example usage: !permit @mention --level=2

Command name: !phraseban

Permission level: 1 Description:

Allows you to add or remove blocked phrases.
To use this in action you need to have automod enabled!

Example usage: !phraseban --action=add
Example usage: !phraseban --action=delete

Command name: !preban

Permission level: 3 Description:

Allows the user to ban another user even if they are not in your guild.
This command leaves no logs and will not remove past messages from the banned user.
However this command allows you to pre-emptively ban a user.

Example usage: !preban userID
Example usage: !preban @mention

Command name: !purge

Permission level: 1 Description:

Allows you to purge messages in the current channel.
The limit decided by the API is 100 messages.

Example usage: !purge 100
Example usage: !purge 2

Command name: !steal

Permission level: 1 Description:

Steal an emoji or image and make it an emoji in your own server.
  
Example usage: !steal https://example.com/emote.gif --name= EmoteName
Example usage: !steal <:KEKW:730486351970959501> --name= EmoteName

Command name: !unban

Permission level: 3 Description:

This command allows you to unban a user.
Unbanning a user is only possible if they are actually banned!

Example usage: !unban userID
Example usage: !unban @mention

Command name: !unmute

Permission level: 1 Description:

This command allows you to unmute a user.
Do note that the user has to be muted to actually be able to use this command.

Example usage: !unmute userID
Example usage: !unmute @mention

Command name: !warn

Permission level: 1 Description:

Warns the target user.
Without the time flag the warn lasts forever.
Acceptable time flags are: second
 minute
 hour
 day
 month
 year

Example usage: !warn userID --reason=Reason here --time=30 day
Example usage: !warn @mention --reason=Reason here --time=30 hour

Command name: !wordban

Permission level: 1 Description:

Allows you to add or remove blocked words.
To use this in action you need to have automod enabled!

Example usage: !wordban --action=add
Example usage: !wordban --action=delete

Category: general

Command name: !avatar

Permission level: 0 Description:

This command allows you to see your own or another users avatar.

Example usage: !avatar
Example usage: !avatar --user=userID
Example usage: !avatar --user=@mention

Command name: !command

Permission level: 0 Description:

This command will attempt to display all available commands to your server.
  The command may be elaborated upon to ask the bot to explain a certain command in detail.
  
  Example usage: !command ping
  Example usage: !command

Command name: !emoji

Permission level: 0 Description:

Show a big version of an emoji.
  
Example usage: !emoji <:KEKW:730486351970959501>

Command name: !generate

Permission level: 4 Description:

generate

Command name: !manual

Permission level: 0 Description:

This command is able to fetch Linux manual pages.
  
Example usage: !manual neofetch

Command name: !ping

Permission level: 0 Description:

This command checks the latency between the server
 discord and yourself.
  
Example usage: !ping

Command name: !proton

Permission level: 0 Description:

This command allows you to check if a steam game runs via proton on Linux.
*Courtesy of ProtonDB*

Example usage: !proton subnautica

Command name: !remindme

Permission level: 0 Description:

This command allows you to set a reminder.
This command needs the time parameter!
Acceptable time flags are: second
 minute, hour, day, month, year

Example usage: !remindme This is an example reminder --time=1 hour
Example usage: !remindme Another example reminder --time=2 day

Command name: !search

Permission level: 0 Description:

Search the internet within Discord!
This command will pull your search query trough StartPage.

Example usage: !search Why do farts smell?

Command name: !translate

Permission level: 0 Description:

Translate any language to English.
Nearly every language is supported.

Example usage: !translate Hoe gaat het met U?

Command name: !user

Permission level: 0 Description:

Lookup some basic information about a user.

Example usage: !user --user=@mention
Example usage: !user --user=userID

Command name: !uwu

Permission level: 0 Description:

Convert text to the horrifying UWU speech.

Example usage: !uwu Welcome to the jungle!

Command name: !bug

Permission level: 0 Description:

Report a bug in the bot.
Abuse will be punished.

Example usage: !bug

Category: music

Command name: !np

Permission level: 0 Description:

This command shows you the current song that is playing.
Music needs to be playing to be able to use this command.

Example usage: !np

Command name: !pause

Permission level: 0 Description:

This command allows you to pause the music player.
Music needs to be playing for you to use this command.

Example usage: !pause

Command name: !play

Permission level: 0 Description:

Play a song.
You need to be in a voice channel to use this command.

Example usage: !play Never gonna give you up
Example usage: !play https://www.youtube.com/watch?v=dQw4w9WgXcQ

Command name: !queue

Permission level: 0 Description:

This command allows you to view the music queue.
Music has to be playing for you to be able to use this command.

Example usage: !queue

Command name: !resume

Permission level: 0 Description:

This command allows you to resume a paused music player.
Music has to be playing AND paused for you to use this command.

Example usage: !resume

Command name: !skip

Permission level: 0 Description:

This command allows you to skip songs in the queue.
Compare the number within !queue to the song you want to skip.

Example usage: !skip
Example usage: !skip 4

Command name: !speen

Permission level: 0 Description:

When there is no music playing
 trigger a vinesauce spin.
This is purely for fun and all rights belong to vinny.

Example usage: !speen

Command name: !stop

Permission level: 0 Description:

This command allows you to stop the music player.
You need to be inside a voice channel AND there has to be music playing for you to be able to use this command.

Example usage: !stop

Command name: !vol

Permission level: 0 Description:

This command allows you to change the volume of the music player.
Volume changes persist trough music changes
 but only if the bot has not left the voice channel.

Example usage: !vol 10
Example usage: !vol 50
Example usage: !vol 100

Category: server

Command name: !board

Permission level: 0 Description:

This command will show you the top 10 points holders.
  
Example usage: !board

Command name: !cc

Permission level: 2 Description:

Custom command creation and deletion.
This command allows you to make or delete a custom command
 commands made like this are fairly simple.

Example usage: !cc --action=create
Example usage: !cc --action=view
Example usage: !cc --action=delete

Command name: !level

Permission level: 0 Description:

This command allows you to show your own or another user level and points.
This command also shows the amount of warning points and received bonusses.

Example usage: !level --user=userID
Example usage: !level --user=@mention

Command name: !migrate

Permission level: 4 Description:

f

Command name: !numbers

Permission level: 0 Description:

This command shows the member sizes of the self asignable roles.

Example usage: !numbers

Command name: !react

Permission level: 1 Description:

This command allows you to add a reaction to a message within the channel you use this command in.
You have to use the emoji itself to use this command
 both regular and custom emojis are supported.

Example usage: !react ๐Ÿ‘ <:KEKW:730486351970959501> --message=messageID

Command name: !role

Permission level: 2 Description:

This command allows you to add or remove a self asignable role.
You can specify a role within the process with either a roleID or a role mention.
Emojis askes can be custom emojis or regular emojis.

Example usage: !role --action=add
Example usage: !role --action=delete

Command name: !say

Permission level: 1 Description:

Make the bot say stuff within other channels.

Example usage: !say Hello I am a bot! --channel=ChannelID
Example usage: !say Me so hungry. --channel= ChannelMention

Command name: !setup

Permission level: 3 Description:

This command allows you to setup important server settings.
This command allows step by step configuration.

Example usage: !setup --setup=channels
Example usage: !setup --setup=settings
Example usage: !setup --setup=logs
Example usage: !setup --setup=levels
Example usage: !setup --setup=support

Example usage: !setup --view=channels
Example usage: !setup --view=logs
Example usage: !setup --view=levels
Example usage: !setup --view=settings

Command name: !topic

Permission level: 1 Description:

This command allows you to set a topic or create/view them.
Without parameters this command will pull a random topic and applies it.

Example usage: !topic
Example usage: !topic Example Topic text --action=create
Example usage: !topic --action=view

Category: stream

Command name: !streamer

Permission level: 2 Description:

This command allows you to add or remove streamers from the stream list.
For this to be in action you need to have setup a streaming channel.

Example usage: !streamer StreamerName

Category: support

Command name: !done

Permission level: 0 Description:

Close an in-use support session.
You can only use this command within an in-use support session.

Example usage: !done

Command name: !help

Permission level: 0 Description:

This command allows you to create a support session.
The channel this command is used in needs to be a designated support creation channel as setup in !setup --setup=support

Example usage: !help

Command name: !open

Permission level: 0 Description:

This command allows you to reopen a previous support ticket.
This command is to be used in a designated support creation channel.

Example usage: !open 20

Command name: !view

Permission level: 0 Description:

This command allows you to view a previous support ticket.
  
Example usage: !view 10

Ratings & Reviews


5

1 review

Reviews can be left only by registered users. All reviews are moderated by Top.gg moderators. Please make sure to check our guidelines before posting.

5 stars

1

4 stars

0

3 stars

0

2 stars

0

1 star

0


PerryPal
PerryPal
โ€ข

over 2 years ago

This is the only bot that I have ever needed. Logs, Moderation, Fun, you name it, this has a command for it. And given that I am a bot developer myself, this bot does the work of 4 separate bots. I moderate a server with a support channel system, and Artemis is able to handle those channels better than the standard ticket bot. My favourite features:(music, support, react roles, advanced modera ... (edited)

0


Details

Prefix

a!

Socials

artemis.rest

Discord Support Server

GitHub

Tags

    Moderation

    Leveling

    Music

    Fun

    custom commands

    admin cases

Creators

.initrd

.initrd