Troubleshooting
The Panel Does Not Send
Check:
config.enabledis true.channel_idis a real text/forum-compatible channel ID.- The bot can send messages and embeds in the channel.
- The dashboard API is connected if you are sending from the dashboard.
- Run
/reactionroles resend panel:<name>to force a fresh panel.
The Bot Cannot Assign A Role
Most role assignment problems are Discord hierarchy issues.
Check:
- The bot has Manage Roles.
- The bot’s highest role is above every self-assignable role.
role_hierarchy_checkis enabled so the plugin blocks unsafe assignments.- The role ID still exists.
- The target role is not managed by another integration.
Users Hit The Max Role Limit
If max_roles_per_user is 0, there is no limit. If it is greater than 0,
users can only hold that many roles from the panel.
To bypass the limit for staff, add staff role IDs to
permission_bypass_roles.
Reaction Roles Do Not Work
Check:
- The panel type is
REACTorMIXEDwithreactionEmojis. - The bot added the reactions to the panel message.
- The bot has Add Reactions and Read Message History.
- If
auto_remove_user_reactionsis enabled, the bot also needs Manage Messages. - The reaction emoji exactly matches the configured emoji.
Select Menu Does Not Show All Options
Discord select menus support up to 25 options. Split large role sets into:
- multiple panels
- sub-panels
- buttons plus select menus
- a
MIXEDpanel with chained sub-panels
Buttons Are Missing
Discord allows a maximum of 5 rows per message and 5 buttons per row. If a panel has too many buttons, the plugin limits what can be rendered. Use select menus or sub-panels for large role sets.
Duplicate Panels Appear
Use /reactionroles resend panel:<name> for a specific panel, or clear stale
panel records if the database points to deleted or replaced messages. The plugin
normally verifies stored message IDs on startup and re-sends only when needed.
Dashboard Changes Do Not Apply
If the dashboard stores config in MongoDB, editing the local
configuration/reactionroles.json5 file may not update the live plugin. Save
through the dashboard and restart AthenaBot if needed.
Logs Are Not Sent
Check:
log_role_changesis true.log_channelcontains a real channel ID.- The bot can send embeds in the log channel.
- Role changes are actually happening.