Role Remove (English)

The Role Remove command allows a user to remove a role to multiple users. This allows an automated process to remove a role to multiple users over a period of time with an approximate interval of 1 second. By default, the user must have a power of 2 (Admin) to use this command.

## Syntax

Like all commands, the Role Remove command needs to start with the server's command prefix. Then followed by the words "role remove". Then, in any order, you indicate a role with either mentioning it or putting the exact name of the role and then mentioning the specific users or using @everyone.

*A recommendation is to use a private channel whilst using this command as it will require you to ping the users when using this command.*

```
!role remove @role @everyone     -> @role is applied to everyone in the server over time.

!role remove @role @user1 @user2 -> @role is applied to @user1 and @user2 over time.

!role remove Role @everyone      -> @Role is applied to everyone in the server over time.

!role remove Role @user1 @user2  -> @Role is applied to @user1 and @user2 over time.

```

## How does it work?

Once the message is received the bot will check if your server actions remaining. Based on this it will either set the delay to 1 second or 10 seconds. This is a safety procedure to prevent overloading from one server.

It will then retrieve the role either mentioned or in-text in order to remove the role later. If the role isn't found it will log it and send an error.

It will then check if the message mentions the @everyone role to see if it should get everyone in the server or specific people. It will filter the people who don't have the role. If no one has the role it will log an error also if no one was mentioned it will log an error.

Finally, it will check if you (the user who issued the command) or the bot has access to those roles, if not then it will log an error.

If any error is detected at any point the command cuts to sending the error message and halting the command.

```
1. Get role from message (If Error log)

```

```
2. Check if mentions @everyone else check for user mentions (If no mentions then error)

```

```
3. Filter for users with the role (If no users remaining log error)

```

```
4. Check if user/bot can remove role themselves (If no then log error)

```

```
5. Remove role if no errors occurred OR send error message

```

```
6. If successful with no errors send message with number of role assignments done

```

## Errors and how to deal with them...

If there is an error at any point in the command it will give you a brief description of the error which is sometimes ineffective in explaining it. Here are some common errors you will face:

* **No users found:** There were no users found when the bot scanned the message. You MUST mention users in this case.

* **None of the users have the role:** All the mentioned users don't have the role so the bot is unable to remove the role.

* **No role mentioned:** The bot did not find a role in the message either because it was not mentioned or because the exact name could not be found. Take note that it is case sensitive and if the role mention is @public supports and you type *public support* and not *public support**s*** the bot will give you this error.

* **The role you are removing is greater than the bot's roles:** This error refers to the role hierarchy. The bot is unable to remove a role greater than it's own, this is a safety feature built-in Discord. To fix this simply move the bot role above the role you want to remove in the role manager.

* **The role you are removing is greater than your own roles:** This error happens when your highest role is lower than the role you are trying to remove. This is a bot feature to prevent users who have access to the command to remove an admin role from admins or in general just trying to do something they shouldn't. Look the official page for the role hierarchy.

* **Other error:** If another error occurs then join the support Discord.