#2: Reaction Roles and Self Assignable Roles
Author: NaviKing#3820
See also
Different use cases of the same topic are described in #1: Configuring the Administration Module
One popular bot feature is the ability to have self-assignable roles and reaction (button) roles. Self assignable roles are roles that user’s are able to freely add to and remove from themselves via a bot, while reaction (button) roles refer to a method of assigning these roles by clicking on a button on a specific message.
GiselleBot has both of these features, and this article will give you a brief overview of how you can set up your very own self-assignable roles and reaction roles. If you want to learn more about how self-assignable roles work, you can take a look at the documentation here: Self-Assignable Roles
Step 1: Create a Role Group
The very first thing you need to do to create a self-assignable role is to add an existing role to a Role Group. A Role Group is simply any set of roles grouped together via GiselleBot‘s !asar command. For example:
!asar 1 "Role 1" @Role 2
will add both Role 1 and Role 2 to group 1 of your self assignable roles. You can confirm this by using the !lsar command to see the list of current self-assignable roles. Don’t worry, you can add more roles later and even remove roles using the !rsar command.
Users can immediately assign and remove roles to themselves using the !iam and !iamnot commands once they have been assigned to a Role Group, but you can also configure your Role Group settings further and even set up a reaction role menu for ease of use.
Step 2: Configure your Role Group
The next step is to make sure you configure your Role Group settings properly. Although this step is optional, it’s worth becoming familiar with the default settings and being aware of the potential options.
You can configure a self-assignable Role Group by using the !sargs command with the ID of the group you want to configure (e.g., !sargs 1). A detailed explanation of each option can be found on the documentation page (see Self-Assignable Roles), but a few use cases are described below.
Let server boosters choose a color for themselves by creating a Role Group of different colored roles. Set up the Nitro Booster role as a required role and enable the prerequisites check feature.
Have people choose their favorite faction in a game by creating a Role Group with a role for each faction. Set the mode to Single and enable removing the existing role when assigning another role in the group. Alternatively, set the mode to Multiple and have people choose up to 2 or 3 of their favorite factions!
Have people assign a role to themselves to acknowledge they have read your server rules. Add your verification role to its own Role Group, enable single mode, and then enable requiring one role in the group at all times after the initial assignment. This way people will be able to assign the role to themselves, but not remove it. Note: Don’t forget you need to set up your server role and channel permissions for a verification role to have any effect, which has nothing to do with GiselleBot! You can read more about this here.
Summary
After you create a self-assignable role group, you can then customize it and turn it into a reaction role menu. Although customizing the default behavior of a role group is optional, remember that you can’t create a reaction role menu without a self-assignable role group.
Remember, this guide doesn’t cover all of the self-assignable role commands. Be sure to check out the full documentation (Self-Assignable Roles) if you get stuck, and feel free to ask additional questions on the GiselleBot‘s Support Server (https://discord.gg/vY5zdmzukb) if you’re still having problems after looking at the documentation!