How To Allow Users To Self Assign Their Roles On Discord Server.
Discord servers by default only allow admins to set user roles. However, it would be nice to let users choose their own roles, as this would save administrators some of the responsibilities. While it is possible to do this, there is no direct path on the settings page, but you can easily do it using Discord bots. Let’s see how.
Allow users to set their own roles on Discord servers
I’ll walk you through the entire process with an example. Here I have a server called Cubers where people can talk about Rubik’s cube algorithms. But there are different methods like CFOP, Roux and ZZ. Since each user has their own preferences in choosing a method for solving the cube, I wanted users to choose their method themselves. This way, people who have chosen the CFOP role can access all the channels that discuss CFOP. And this is how I did it.
In order for users to have to assign roles themselves, we must first create roles. To do this, you need to open Discord select a server click Server Name Server Settings Roles Click the + button next to roles.
Now you can name your role and also set the permissions they have on your server and save the changes.
You now have roles and permissions for people with these roles to access. All we need to do now is let people assign roles on their own. To do this, open the Mee6 Discord bot website and log into your Discord account.
And allow the app to access your account. This will provide access to your account.
Read: How to set up an AFK channel on Discord
Now select the server on which you want to enable self-assignment of roles and click “Continue” in the pop-up window.
Once logged in, select the plugin called Reaction Roles in the plugins section and click Yes! to enable the plugin.
This is a clever workaround for automatic role assignment. It works like this: whenever a new user joins your Discord, they are greeted with a welcome channel where they can take a quick look at the server, they can assign a role simply by responding with an emoji in the channel. It’s really smart when you think about it.
Now choose a channel where people can assign their roles. Usually, #Welcome, #Select_role, #Get_Started are some examples for channels.
Now in the Reactions and Roles section, click Add Reaction and select an emoticon as a representation of that reaction. You can choose multiple roles or one role in this reaction. Users who select this reaction will be assigned all roles in this reaction.
Similarly, you can add multiple reactions. By default, you can only add 2 reactions, if you want to add even more, you must choose any Mee6 Premium plan. Now, in the Messages section, explain to people that they should choose any role. And also explain which emoticons mean which reaction. So that people can choose an emoticon and assign roles in this reaction.
In the reaction modes section, select default or vice versa. If the user selects any reaction, they will be assigned the default reaction roles. While in reverse mode the role will be removed when users click on react, this is great for disabling certain server notifications.
Allow members to select multiple roles. The section will be enabled by default so people can select multiple roles, but you can disable it if you like.
And click save changes. That’s it, you’ve successfully created a way for users to assign roles. You can open a server, go to a channel and test yourself.
In any case, there is a final step to make sure everyone sees this message. Go to Server Settings Roles and make sure Text Reader and Voice Messages are enabled. Also, don’t forget to enable “Add reactions” in the role settings for everyone.
Packaging
There are many bots that can help you create a server where people can assign their own roles, such as Nakedo, Monotron, etc. But with Mee6 this process is much more convenient and faster, so other options are less recommended. Nakedo pushes you to learn many command lines to work, whereas monotron requires you to install an application on your desktop to work.
So what do you think of this method? Let me know in the comments.
Related: How to Enable Push-To-Talk on Discord