Leveling (XP) Module

Award XP for messages and voice activity, level-up announcements, role rewards, and optional XP shop.

Overview

Members earn XP on a cooldown per message. Optional voice XP while connected to voice channels.

Level thresholds grant roles automatically. Level-up can post to a channel or stay silent.

XP shop panel lets members spend XP on roles via buttons (if configured).

Setup

  1. Enable XP module.
  2. Set XP per message, cooldown seconds, and optional voice XP rate.
  3. Add level → role mappings (level number + Discord role).
  4. Optional: level-up channel, shop channel, shop items.

Key settings

  • Cooldown — prevents spam grinding; typical values 60–120 seconds.
  • Level roles — bot role must be above reward roles in hierarchy.
  • Announce level-up — toggle channel announcements vs DM (if enabled in config).
  • Shop — define items with XP cost and target role; panel uses buttons.

Usage

XP accrues automatically — no user command required for basic leveling.

Members use the XP shop panel buttons to purchase configured roles when the shop is enabled.

Troubleshooting

  • No XP gained → module enabled? bot can read and send messages in that channel?
  • Roles not granted → bot role above reward roles.
  • Level-up spam → increase cooldown or disable announcements.
  • Shop button fails → user needs enough XP; item still in stock; role hierarchy.