This article will serve as your go-to reference for how Discord's roles and associated permissions work. In here we'll cover:
- Role Colors
- Role Hierarchies
- Channel Permissions
Part One: Role Colors
Something that may not be immediately noticeable, but super helpful, is how roles behave in the role tab. To put it simply:
Members of a server inherit the permissions of the combined roles assigned to them.
Not only does this apply to permissions but to the color too! You can see the difference pretty easily here:
Even though Cats has all three roles, "PUBG" is the highest in the role list, therefore Cats inherit its delightful orange color. BB maker and Cats have the same roles with the exception of PUBG, so they inherit the next highest role and color, "Overwatch" and blue.
You can also drag to re-arrange roles and their position on the metaphorical totem pole:
In this instance, all I did was drag "PUBG" up to the top, above Overwatch. As a result, everyone has inherited its orange color, as well as PUBG being listed first under my role titles. I still have my old Overwatch role, but it's lower on the list, so I lose my shiny blue badge of honor.
You'll also see the color of your highest-sorted role in the user's list as well:
In this case, some roles have the "Display role members separately from online members" permission checked, but the others don't, such as the pink Rocket League role here. Each user in this list has a different highest role.
Part Two: Role Hierarchies
In addition to looking pretty, roles offer a very structured way to delegate permissions to users and establish anything from a multi-tiered public server admin system to a trusted buddy in your private server helping out here and there.
Role Linear Hierarchy:
The blurple arrow is your highest role; roles now follow a linear hierarchy. In simpler terms, the "metaphorical totem pole" is now a bit more literal in practice.
All roles equal to and above your roles will appear with a lock next to their name. This enables server owners to establish multiple roles with separate administrative powers that can't interfere with each other. Here are some of the tools that enable hierarchies to work:
This is the omega role! Giving this role to a user grants them all of the permissions in the permissions list! They also cannot be locked out of any voice or text channel, regardless of permissions. That's a tall order. This permission also lets users with that role assign any permission to roles underneath them in the hierarchy, though they still can't affect their role and any above them in the hierarchy. Real talk: with great permissions power comes great permissions responsibility. Assign with caution.
This permission allows a role to create new roles beneath them, then edit them accordingly. Keep in mind that this role comes 2nd to the Administrator role, and although you can add, edit, and assign new roles to users, you still can't edit your role and roles above yours. Additionally, you can only assign permissions that you have to roles under you. If your role doesn't have banning members enabled, you can't let other users ban them either. Duh.
Another important point to remember about managing roles is if you have multiple roles, you can't remove a permission from a lower role that would remove it from yourself.
Important note on adding roles: the @everyone role now serves as the basic template for all added roles. Want anyone in your server to add channels as they want? Assigning "Manage Channels" to @everyone will automatically grant that permission to all other roles created. Any role assigned to @everyone will be universal, regardless of assignment in higher roles.
Keep in mind that when you add a new role (if you're not the server owner), that the roles are added at the very bottom, right above the @everyone role, so that you can sort it as necessary, but not above your role.
Additional to the role sorting hierarchy, there's a special exception placed on banning, kicking, and nicknaming members: Even if users have ban/kick/nickname permissions, they cannot ban / kick / change nicknames of anyone with the same role or a role higher than theirs.
Part Three: Channel Permissions
If you're one of the more orderly types that enjoy the thrill of sorting your clothes into oodles of boxes, then the right-click menu has some helpful tools for you as well. These shortcuts apply when setting up individual text channel permissions, instead of working in the server settings.
This option will create a new text channel with the exact same role-specific permissions as the previous one selected. You'll be given the choice to name the new channel, then poof, done. You can go in and edit specific permissions once the channel is created.
Creating role-exclusive Text Channels:
When you (or anyone with the "manage channels" permission) creates a new channel, you'll see the option to select specific roles that can access the new channel. Selecting a role does two things in the permissions menu:
1. First, denies the @everyone role the "read messages" permission to this new channel, making it inaccessible and invisible to them.
2. Also, specifically adds an exception for the role(s) selected. You'll see both of these changes reflected in the Channel Permissions screen.