Roody Roody / Article
Modules

Level system

What does it do? It awards XP per message, levels members up and hands out roles as rewards. Members check their progress with /rank.

Available commands

/rank

Level and experience card. With no parameter it shows yours; with user it shows another member's.

/rank user:@member

/top

Ranking of the server's members with the highest level and XP.

/estadisticas

General module statistics: average XP, distribution by level, messages counted.

/niveles-totales

The sum of levels reached by every member of the server.

Configuration from the dashboard

All configuration happens in /dashboardLevels module.

Enabling and XP

  • Enable the module.
  • XP per message (min / max): the XP range Roody awards for each counted message. It picks a random value between the two.
  • XP cooldown: seconds between messages that count. Stops spam from inflating the ranking.

Level-up notification

  • Customisable level-up message (with user and level variables).
  • Send by direct message to the member instead of in the channel.

Rank card

  • Show the card with a progress bar, avatar and position.
  • Show the server rank and/or the global one.
  • Background colour and accent colour of the card.

Level rewards

In the rewards tab you can define which role is granted at which level. Details:

  • You can define several roles for different levels.
  • By default, roles stack (when you reach the next one, you keep the previous). The module lets you change this behaviour from the dashboard.
  • The bot's role has to sit above the roles it hands out.

Exclusions

  • Ignored channels: messages in these channels don't count towards XP.
  • Ignored roles: members with any of these roles don't accumulate XP.

Handy for spam channels, bots, off-topic or purely staff roles.

Variables available in the level-up message

  • {level} — the new level reached. {xp} — accumulated XP.
  • {user} / {username} — the user's name. {mention} — mention (@).
  • {displayName} — nickname. {id} — ID. {tag} — full name.
  • {created} / {joined} — when they created the account / joined.
  • {server} — server name. {memberCount}, {boostCount}

The user variables ({id}, {created}, {joined}…) only appear if the user is still in the server when they level up.

Permissions Roody needs

  • View Channel / Send Messages / Embed Links (for announcements)
  • Attach Files (for the rank card image)
  • Manage Roles (if it hands out rewards; the bot's role must sit above the roles it grants)

Practical tips

  • The default cooldown is designed for active servers without penalising people who take part. If the ranking inflates too fast, raise it.
  • Ignore spam/bot channels to keep the levels from being polluted.
  • Announce level-ups by DM if your server is noisy — people appreciate it and it doesn't fill the chat.
  • The message/level requirements in the giveaways module are based on this system. If you want to use them, keep this module enabled from the start.

Related links

Was this article helpful?

Your answers help us improve the documentation.

0% found this helpful (0 ratings)

Comments

Share your experience or ask anything about this article.