Get Started › Reaction Roles
Reaction Roles
Let members add or remove roles by reacting to a specific message.
Replace [prefix]
with your server’s prefix. For Calamity the prefix is ,,
.
You can post a simple plain text message or a styled embed as the reaction-roles post. Both work.
1) Create the target message
Post the message users will react to (plain text or embed). Copy its Message ID (Right-click → Copy ID).
// example (plain text)
pick your roles below
// example (embed)
{embed}$v{title: pick your roles}$v{description: react with the emojis below}
2) Add an emoji → role mapping
Link one emoji to one role for the chosen message.
// syntax
,,reactionrole add <message id> <role> <emoji>
// example
,,reactionrole add 123456789012345678 @Member ✅

3) Limit how many roles users can pick
Set a maximum number of reaction roles a user can have from this message.
// syntax
,,reactionrole amount <message id> <amount>
// example (max 2 roles)
,,reactionrole amount 123456789012345678 2

4) Remove a mapping
Detach a role from the message. The emoji becomes unrelated to roles.
// syntax
,,reactionrole remove <message id> <role>
// example
,,reactionrole remove 123456789012345678 @Member

5) Reset all mappings on a message
Clears every emoji → role mapping from the selected message.
// syntax
,,reactionrole reset <message id>
// example
,,reactionrole reset 123456789012345678
Tips
- Ensure the bot can manage roles and its role is above the target roles in the server role list.
- Both standard and custom emojis work. For custom emojis, the bot must have access to the emoji’s server.
- If you heavily edit the target message, re-check your mappings or reset and add them again.