Documentation
Everything you need to know about Discord Role Guardian. Detailed command reference, setup tutorials, and troubleshooting guides.
Quick Setup Guide
Get started with Discord Role Guardian in minutes
Command Reference
Complete documentation for all available commands
Reaction Roles
/setup-reaction-rolesUsage:
/setup-reaction-roles channel:<channel> title:<title> description:<description> roles:<format>Examples:
/setup-reaction-roles channel:#roles title:"Choose Your Roles" description:"React to get roles" roles:🔴:123456789,🔵:987654321/setup-reaction-roles channel:#get-roles title:"Game Roles" description:"Pick your games" roles:🎮:111222333,🎨:444555666Role format: emoji1:roleID1,emoji2:roleID2 - Bot automatically adds reactions. Embeds show only title and description for a cleaner look.
/remove-reaction-rolesUsage:
/remove-reaction-roles message-id:<id>Examples:
/remove-reaction-roles message-id:123456789012345678Button Roles
/setup-button-rolesUsage:
/setup-button-roles channel:<channel> title:<title> description:<description> roles:<format>Examples:
/setup-button-roles channel:#roles title:"Select Your Roles" description:"Click buttons to get roles" roles:Gamer:123456789:primary,Artist:987654321:success/setup-button-roles channel:#get-roles title:"Game Roles" description:"Pick your favorite games" roles:Valorant:111222:danger,Minecraft:333444:success,Fortnite:555666:primaryRole format: label:roleID:style,label:roleID:style - Supports 4 button styles: primary (blue), secondary (gray), success (green), danger (red). Maximum 25 buttons (5 rows of 5). Includes toggle functionality and DM notifications when roles are added/removed. Persistent storage survives bot restarts.
/remove-button-rolesUsage:
/remove-button-roles message-id:<id>Examples:
/remove-button-roles message-id:123456789012345678Removes the button role configuration. The message itself remains but buttons will no longer function.
Welcome & Leave System
/setup-welcomeUsage:
/setup-welcome channel:<channel> message:<message> [embed-color:<color>] [rules-channel:<channel>] [role-channel:<channel>]Examples:
/setup-welcome channel:#welcome message:"Welcome {user} to {server}! You are member #{count}!" embed-color:#00ff00/setup-welcome channel:#general message:"Hey {user}, check out the rules!" rules-channel:#rules role-channel:#rolesPlaceholders: {user} = mention user, {server} = server name, {count} = total member count. Default color: #00ff00. Welcome embeds now use personalized title 'Welcome [Username]!' with optional rules and role channel mentions. Cleaner format without username, account created, or user ID fields.
/setup-leaveUsage:
/setup-leave channel:<channel> message:<message> [embed-color:<color>]Examples:
/setup-leave channel:#goodbye message:"Goodbye {user}! We'll miss you!" embed-color:#ff0000/setup-leave channel:#general message:"{user} has left {server}"Placeholders: {user} = username, {server} = server name. Default color: #ff0000. Leave messages now display with cleaner embeds without footer containing user ID and timestamp.
Leveling System
/setup-levelingUsage:
/setup-leveling enabled:<true/false> [announce-channel:<channel>] [xp-min:<15>] [xp-max:<25>] [cooldown:<60>] [announce-level:<true>] [announce-xp:<false>]Examples:
/setup-leveling enabled:true announce-channel:#level-up xp-min:15 xp-max:25 cooldown:60/setup-leveling enabled:true announce-channel:#general xp-min:10 xp-max:30 announce-xp:trueXP range: 1-100 per message. Cooldown: 10-300 seconds. Level formula: Level = √(XP/100)
/add-level-roleUsage:
/add-level-role level:<1-100> role:<role>Examples:
/add-level-role level:5 role:@Novice/add-level-role level:10 role:@Expert/add-level-role level:25 role:@LegendRoles are automatically assigned when members reach the specified level. Supports up to Level 100
/rankUsage:
/rank [user:<user>]Examples:
/rank/rank user:@usernameShows XP progress bar, current level, and XP needed for next level
/leaderboardUsage:
/leaderboard [limit:<5-25>]Examples:
/leaderboard/leaderboard limit:15/leaderboard limit:25Default shows top 10. Top 3 get medal badges (🥇🥈🥉)
Ticket System
/setup-ticketUsage:
/setup-ticket panel-channel:<channel> category:<category> staff-role-1:<role> [staff-role-2-5:<roles>] [transcript-channel:<channel>] [embed-color:<color>]Examples:
/setup-ticket panel-channel:#create-ticket category:Support staff-role-1:@Support/setup-ticket panel-channel:#tickets category:Tickets staff-role-1:@Mod staff-role-2:@Admin transcript-channel:#transcriptsSupports up to 5 staff roles. Bot role must be above staff roles in hierarchy. Creates button panel for users to open tickets
/ticket-statsUsage:
/ticket-statsExamples:
/ticket-statsShows total tickets, active tickets, closed tickets, and current configuration
Scheduled Messages
/schedule-messageUsage:
/schedule-message name:<name> channel:<channel> type:<once/daily/weekly/monthly> time:<HH:MM> message:<message> [timezone-offset:<offset>] [day-of-week:<0-6>] [day-of-month:<1-31>]Examples:
/schedule-message name:announcement channel:#announcements type:once time:14:30 message:"Event starts now!" timezone-offset:+6/schedule-message name:daily-reminder channel:#general type:daily time:09:00 message:"Good morning!"/schedule-message name:weekly-event channel:#events type:weekly time:19:00 day-of-week:5 message:"Friday event!"/schedule-message name:monthly-update channel:#updates type:monthly time:12:00 day-of-month:1 message:"Monthly recap!"Time in 24-hour format (HH:MM). Weekly: 0=Sunday, 6=Saturday. Timezone offset from UTC (e.g., -5 for EST, +5:30 for IST)
/list-scheduledUsage:
/list-scheduledExamples:
/list-scheduledShows name, schedule type, channel, timezone, and message preview for all scheduled messages
/remove-scheduledUsage:
/remove-scheduled name:<name>Examples:
/remove-scheduled name:announcementHas autocomplete showing all scheduled message names. Cancels timer immediately without restart
Server Management
/resetUsage:
/resetExamples:
/reset⚠️ CANNOT BE UNDONE! Removes: welcome/leave messages, reaction roles, button roles, leveling system + all XP, scheduled messages, ticket system. Deletes panel messages. No restart needed.
Troubleshooting
Common issues and how to fix them
Solutions:
- Verify the bot has Administrator permission
- Check if the bot is online and appears in the member list
- Try kicking and re-inviting the bot
- Ensure you're using slash commands (/) not prefix commands
Solutions:
- Bot role must be higher than the roles being assigned
- Check bot has Manage Roles permission
- Verify emoji is from the same server or is a standard emoji
- Make sure message ID is correct
Solutions:
- Ensure leveling is enabled with /setup-leveling
- Check if the channel has proper bot permissions
- XP only counts every 60 seconds per user (anti-spam)
- Bot must have Read Message History permission
Solutions:
- Verify bot has Send Messages permission in target channel
- Check timezone settings match your location
- Confirm schedule wasn't accidentally removed with /list-scheduled
- Bot must remain in server for schedules to work
Can't find what you're looking for? Check our GitHub for more resources or contact us directly.