🎭 Reaction Roles
Let members pick their own roles from a panel — no staff involvement. Build a panel in the dashboard, choose how members interact with it (reactions, buttons, or a dropdown), and Strom keeps Discord in sync live: assigning a role when a member opts in and removing it when they opt out.
- Three panel styles: reactions, buttons, or a dropdown select menu.
- Built and edited entirely in the dashboard editor — changes sync to the live Discord message.
- Optional auto-remove: taking away a reaction/selection removes the role.
- Max roles per panel limit and a selection cooldown to prevent role-toggling spam.
- Up to 4 reaction-role panels per server.
Panel styles
| Style | How members use it |
|---|---|
| Reactions | Members react to the message with the mapped emoji to gain a role, and remove the reaction to drop it. |
| Buttons | Each role is a labelled button; clicking toggles the role. |
| Dropdown | A single select menu lists the roles; members choose one or more. |
Panel settings
| Setting | What it does |
|---|---|
Auto-remove (removeOnUnreact) | When on (default), removing the reaction/deselecting the option removes the role. Turn off for “opt-in only” panels. |
| Max roles | How many roles a member may hold from this panel at once (default 1). |
| Cooldown | Minimum seconds between a member’s role changes on the panel, to stop rapid toggling. |
| Multiple roles | Whether members can hold more than one role from the same panel (bounded by Max roles). |
How it works
- Open the Reaction Roles editor in the dashboard and create a panel.
- Add role options — pick a role and, for reaction panels, the emoji that maps to it.
- Choose the panel style and settings (auto-remove, max roles, cooldown).
- Publish. Strom posts (or updates) the panel message in your chosen channel.
- Members interact; Strom grants and removes roles automatically and keeps the panel message in sync as you edit it.
::: info Live sync Edits you make in the dashboard — renaming options, changing roles, swapping the style — are pushed to the existing Discord message in real time. You don’t need to repost the panel after every change. :::
Permissions
You need Manage Server to build panels. Strom needs:
- Manage Roles — to assign and remove the roles.
- Add Reactions and Read Message History — for reaction-style panels.
- View Channels, Send Messages, Embed Links — to post and maintain the panel.
Strom can only manage roles that sit below its own highest role. Drag Strom’s role above every role you want it to hand out, or assignment will silently fail.
Troubleshooting
::: details Clicking/reacting does nothing Check that Strom has Manage Roles and that its role is above the target role in the server’s role list. For reaction panels, Strom also needs Add Reactions and Read Message History. :::
::: details Roles aren’t removed when I unreact Auto-remove may be disabled for that panel. Enable Auto-remove in the panel settings if you want opting out to drop the role. :::
::: details “Panel limit reached” A server can have up to 4 reaction-role panels. Delete an unused panel before creating another. :::
