BotGhost Documentation
Support ServerYouTubeMarketplaceBotGhost PremiumSign in
  • Welcome to BotGhost
  • Guidelines & Privacy
  • Changelogs 2025
    • Changelogs 2024
    • Changelogs 2023
  • BotPanel Documentation
  • Getting Started
    • Create Your First Bot
      • Create Your Second Bot
    • Invite Your Bot
    • Standard Practices
      • Advanced Practices
    • Mobile Application (PWA)
  • Support
    • BotGhost Support
    • Frequently Asked Questions
  • Premium & Priority Hosting
    • Priority Hosting
    • Our Premium Features
    • Plans & Payment Methods
    • Manage Your Subscription
    • Upgrade Your Bot
    • Refund & Cancellation Policy
    • Beta Features
  • General Settings and Collaboration
    • Settings
    • Collab
    • Status
    • Active Developer Badge
    • Marketplace
  • Custom Commands & Events
    • Command & Event Builder
      • Sharing Commands and Events
      • Advanced Options
    • Actions
      • Message Actions
        • Send or Edit a Message
          • Button
          • Select Menu
        • Edit a Button or Select Menu
        • Send a Form
        • Delete a Message
        • Publish a Message
        • React to a Message
        • Pin a Message
      • Custom Variable Actions
        • Set Variable
        • Run Equation on Variable
        • Delete Variable
      • API Actions
        • Send an API Request
        • Execute an IFTTT Trigger
      • Loop Actions
        • Run a Loop
        • Stop a Loop
      • Voice Actions
        • Join a Voice Channel
        • Leave a Voice Channel
        • Voice Move a Member
        • Voice Kick a Member
        • Voice Mute or Unmute a Member
        • Voice Deafen or Undeafen a Member
      • Role Actions
        • Add Roles
        • Remove Roles
        • Create a role
        • Delete a role
        • Edit Role
      • Channel Actions
        • Create a channel
        • Edit a channel
        • Delete a channel
      • Thread and Forum Actions
        • Create a Thread
        • Edit a Thread
        • Delete a Thread
      • Server Actions
        • Kick a member
        • Ban a member
        • Timeout a member
        • Change a members nickname
        • Purge Messages
        • Create Server Invite
      • Other Actions
        • Wait before running another action
        • Manipulate some text
        • Send an error log message
        • Set a unique variable
        • Change the Bot's Status
        • Note
      • [LEGACY] Reply Actions
        • Plain Text Reply
        • Embed Reply
        • Random Reply
        • Send a message to a channel
        • Direct Message a User
        • Send a Message with attached buttons
          • Buttons
        • Send a message with a select menu
          • Menu Option
    • Conditions
      • Comparison Condition
      • Permission Condition
      • Chance Condition
      • Channel Condition
      • Role Condition
      • User Condition
      • Premium Check Condition
    • Options
      • Text Option
      • Number Option
      • User Option
      • Channel Option
      • Role Option
      • Choice Option
      • Attachment Option
    • Events
      • Timed Events
      • Webhooks
    • Data Storage
      • Collections
      • Objects
    • IFTTT
    • Variables
  • Server Management
    • Moderation
    • Discord Automod
    • Tickets
    • Welcomer
    • Verification
    • Statistic Channels
    • Modmail
    • Auto-React
    • Sticky Roles
    • Emoji Manager
    • Polls Filter
    • Automod
    • Logging
  • Messages
    • Timed Messages
    • Reaction Roles
    • Autoresponder
    • Embed Builder
    • Sticky Messages
    • Polls
    • Global Chat
    • Media Channels
  • AI
    • ChatGPT
    • Image Generation
  • Game Integrations
    • Roblox Verification
  • Social Integrations
    • YouTube
    • Twitch
  • Community Engagement
    • Leveling
    • Temp Voice Channels
    • Suggestions
    • Invite Tracker
    • Starboard
    • Question Of The Day
    • Giveaways
  • Fun Modules
    • Economy & Minigames
    • Birthdays
    • Counting
  • Utility
    • Translation
    • Weather
Powered by GitBook
On this page
  • Watch the Tutorial
  • Settings
  • General Settings
  • Level Card Settings
  • Message XP Settings
  • Voice XP Settings
  • Channels & Roles
  • Role Rewards
  • Your Role Rewards
  • XP Boosters
  • Your Boosts
  • Variables
  • Commands
  • Events

Was this helpful?

  1. Community Engagement

Leveling

Setup an awesome leveling system for your server!

Last updated 1 month ago

Was this helpful?

Some of the features of this module require a to function. You can however use the module with a free subscription.

The module will allow you to setup a highly customizable leveling system for both text based interactions and voice interactions.

Watch the Tutorial


Settings

General Settings

In this area, you can setup and customize the general settings for the commands and events of this module.

Embeds Color

Change the embed color for the public embeds that are set alongside this module such as the leaderboard.

Max Level

This option will allow you to define a maximum level users can reach with the leveling module. Setting this option to 0 will disable it meaning there will be no level limit. If a limit is defined, users will not be able to surpass it.

Additional Required XP Per Level

This option will allow you to change the default XP increment upon level up. On level up, the required experience will increase by the set amount. For instance, if this setting is set to 50 and the previous level required 200 XP to level up, the next level will require 250 XP. Also, the set amount will correspond to the required experience to reach the level 1.

Clear Leveling Data on Leave

This option will allow you to toggle on/off data clearing on user leave, if enabled (default) once a user leaves the server it will automatically clear their activity data.

Send a Message on Level Up

This option will allow you to define how and if a level up message should be sent once a user levels up. By default this is set to disabled however, you can choose between:

Selection
Action

Disabled

Does not send any message on level up.

Current Channel

Send the message to the channel the user leveled up in.

Custom Channel

Send the message to a selected channel.

Direct Message

Send a direct message to the user that leveled up.

Current Channel & Direct Message

Send a message to the channel the user leveled up in and send a direct message to the user that leveled up.

Custom Channel & Direct Message

Send the message to a selected channel and send a direct message to the user that leveled up.

Custom Channel

In this dropdown you can pick the channel that you would like level up messages to be sent to. This setting is only visible when a custom channel option has been selected in Send a Message on Level Up.

Level Up Server Message

Here you can edit the level up message that is sent to the server when a user levels up. All variables can be used. A list of additional variables you can use is listed in Variables. This setting is only visible when a server message option has been selected in Send a Message on Level Up.

Level Up Direct Message

Here you can edit the level up message that is sent to the user when they levels up. All variables can be used. A list of additional variables you can use is listed in Variables. This setting is only visible when a direct message option has been selected in Send a Message on Level Up.

Level Card Settings

[👑] Card Type

Here you can change the type of card you'll be using.

If this dropdown type is selected then the card will be sent as an embed message with the level card settings.

Example Card

If this dropdown type is selected then you can choose to enable and use [👑] Advanced Card Settings as well as [👑] Main Color and [👑] Filled Bar Color [👑] Advanced Card Settings

Enabling the Advanced Settings for the level card above will display a wide range of new advanced customization option for the level card. By default it is set to disabled. This is not compatible with the Embed Card option.

[👑] Main Color

Here you can change the color of the text for the level card using Hexadecimal (HEX). This option is only available with Advanced Settings disabled.

[👑] Circle Color

Here you can change the user icon outline color for the level card using Hexadecimal (HEX).

[👑] Empty Bar Color

Here you can change the Fill Bar/Progress bar background for the level card using Hexadecimal (HEX).

[👑] Filled Bar Color

Here you can change the Fill Bar/Progress bar color when its full for the level card using Hexadecimal (HEX).

[👑] Level Text Color

Here you can change the level text color for the level card using Hexadecimal (HEX).

[👑] Experience Progress Color

Here you can change the experience progress text color for the level card using Hexadecimal (HEX).

[👑] Experience Percentage Color

Here you can change the experience percentage text color for the level card using Hexadecimal (HEX).

Example Card

If this dropdown type is selected then you can choose to enable and use [👑] Advanced Card Settings as well as [👑] Main Color and [👑] Filled Bar Color.

[👑] Background Color

Here you can change the background color for the level card as a plain color.

[👑] Advanced Card Settings

Enabling the Advanced Settings for the level card above will display a wide range of new advanced customization option for the level card. By default it is set to disabled. This is not compatible with the Embed Card option.

[👑] Circle Color

Here you can change the user icon outline color for the level card using Hexadecimal (HEX).

[👑] Empty Bar Color

Here you can change the Fill Bar/Progress bar background for the level card using Hexadecimal (HEX).

[👑] Filled Bar Color

Here you can change the Fill Bar/Progress bar color when its full for the level card using Hexadecimal (HEX).

[👑] Level Text Color

Here you can change the level text color for the level card using Hexadecimal (HEX).

[👑] Experience Progress Color

Here you can change the experience progress text color for the level card using Hexadecimal (HEX).

[👑] Experience Percentage Color

Here you can change the experience percentage text color for the level card using Hexadecimal (HEX).

[👑] Main Color

Here you can change the color of the text for the level card using Hexadecimal (HEX).

[👑] Filled Bar Color

Here you can change the color of the filled (left) half of the progress bar on the card using Hexadecimal (HEX).

Example Card

If this dropdown type is selected then you can choose to enable and use [👑] Advanced Card Settings as well as [👑] Main Color and [👑] Filled Bar Color.

[👑] Background Image

Choose the image you would like to use as the background and input it in the form of a URL. A default link is provided.

[👑] Advanced Card Settings

Enabling the Advanced Settings for the level card above will display a wide range of new advanced customization option for the level card. By default it is set to disabled. This is not compatible with the Embed Card option.

[👑] Circle Color

Here you can change the user icon outline color for the level card using Hexadecimal (HEX).

[👑] Empty Bar Color

Here you can change the Fill Bar/Progress bar background for the level card using Hexadecimal (HEX).

[👑] Filled Bar Color

Here you can change the Fill Bar/Progress bar color when its full for the level card using Hexadecimal (HEX).

[👑] Level Text Color

Here you can change the level text color for the level card using Hexadecimal (HEX).

[👑] Experience Progress Color

Here you can change the experience progress text color for the level card using Hexadecimal (HEX).

[👑] Experience Percentage Color

Here you can change the experience percentage text color for the level card using Hexadecimal (HEX).

[👑] Main Color

Here you can change the color of the text for the level card using Hexadecimal (HEX).

[👑] Filled Bar Color

Here you can change the color of the filled (left) half of the progress bar on the card using Hexadecimal (HEX).

Example Card

Message XP Settings

View the settings for message function of the Leveling module and what they do.

Minimum XP per Message

Here you can set the minimum number of XP points that will be given per message in numerical format (1, 2, 3, 4, etc).

Maximum XP per Message

Here you can set the maximum number of XP points that will be given per message in numerical format (1, 2, 3, 4, etc).

Cooldown

Here you can define the cooldown period between messages receiving and not receiving XP points, messages sent during the specified cooldown period will not grant the user any experience points. This option takes a numerical format (1, 2, 3, 4, etc). Setting this to 0 will disable the cooldown completely.

Voice XP Settings

The leveling module also comes with a voice channel XP function which allows users to accumulate XP points by partaking in a voice channel. By joining a voice channel, the bot will follow a precise formula, which is: A * ( 1 - e ^ ( - B * secs in voice ) ). This will give a different amount of XP basing on the time in seconds the user has remained in the voice channel.

However, the amount of XP given per second will slowly decrease, to prevent spam / AFK users (example if the user stays for a second he will get 1 point, 2 secs 2.9 points, 3 secs 3.7 and so on). It will be calculated once the user leaves the voice. A and B are parameters and can be edited using the 'Voice XP Settings'.

A is the max XP that can be gained in a session, and B the "speed" that value A will be reached. However, the recommended values are 1000 and 0,0005. The user does not need to talk to gain XP.

[👑] Enable Voice XP

Enabling/Disabling this option will activate/deactivate the ability to use the voice XP function, respectively. The below settings will only be displayed when it is enabled and hidden when disabled. By default this option is disabled.

[👑] Minimum Time in Voice

This setting allows you to configure the minimum time in seconds required to stay in the voice channel to gain at least 1 experience point. This is defined by seconds and takes a a numerical format (1, 2, 3, 4, etc).

[👑] XP per Session (A)

This option will allow you to define the maximum amount of XP an user can gain by staying in a voice channel without leaving. The recommended value for this setting is 1000. Do not change this value if you don't know what you're doing, otherwise the XP may be given incorrectly.

[👑] XP Gain Speed (B)

This option will allow you to define the bot will give users XP by staying in a voice channels. The recommended value for this setting is 0,0005. Do not change this value if you don't know what you're doing, otherwise the XP may be given incorrectly.

[👑] Cooldown

Here you can define the cooldown period between receiving and not receiving XP points, during the specified cooldown period XP points will not be granted to the user. This option takes a numerical format (1, 2, 3, 4, etc). Setting this to 0 will disable the cooldown completely.

Channels & Roles

Find out about the Channel & Role settings for the Leveling module.

Admin Role

Here you can select the role which will be considered admins. users with these roles will be able to edit other users' XP.

Channel Restrictions

Here you can set some channel restrictions choosing between None, Disable on all channels except or enable on all channels except. When enabled a new channel selection box will be displayed allowing you to input channels.

Type
Details

No Channel Restrictions

If this option is selected, no channel restrictions will be applied.

Disable for these channels

Based on the channels input, they will not provide XP for users.

Enable these channels

Based on the channels input, only these channels grant XP, the rest won't.

Role Restrictions

Here you can set some role restrictions choosing between None, Disable on all roles except or enable on all roles except. When enabled a new role selection box will be displayed allowing you to input roles.

Type
Details

No role restrictions

If this option is selected, no role restrictions will be applied.

Disable for these roles

Based on the roles input, users who have these roles won't gain XP.

Enable these roles

Based on the roles input, only users with these roles gain XP, the rest won't.

Role Rewards

Find out information about the Role Rewards settings for the leveling module and how each function works.

Stack Rewards

This option will allow you to enable/disable reward stacking, when enabled the role rewards will stack.

Level

Input the level that this role reward shall be given at.

Role Reward

In this field you can select the role you would like to give.

To save the role reward's settings, you need to click "Add" in the bottom-right corner of the settings. This will reset the fields so you can set up another role reward.

Your Role Rewards

Here you can manage your currently active role rewards. The same settings as Role Rewards apply. You are able to edit / delete these rewards in the bottom right. A maximum of 100 role rewards is present.

To save the edits you made on the role reward's settings, you need to click "Edit" in the bottom-right corner of the settings.

XP Boosters

Find out information about the XP Boost settings for the leveling module and how each function works.

Sum XP Boosts

Enabling this option will sum the XP boosts, where as disabling will disable it. This is set to disabled by default but can be toggled on and off as desired.

Randomize Boosts

Enabling this option will make it so instead of giving the set amount of xp boost to the user, the amount of experience received from the boost will go around 1% and the boost percentage assigned to the user.

Boost Percentage

This field modifies the percentage of XP that the user will receive when boosted.

Boost Type

This type of boost will make an increase in XP in a certain channel.

Boosted Channel

In this selection you can choose the channel in which you want the boost to occur in.

Enable in Threads

If this toggle is enabled then the boost will also apply to the threads in the channel that the boost is occurring in.

This type of boost will affect users with a certain role.

Boosted Role

In this selection you can choose the role that the boost is affecting.

To save the boost's settings, you need to click "Add" in the bottom-right corner of the settings. This will reset the fields so you can set up another boost.

Your Boosts

In this section is where the added boosts can be edited / deleted. There is a maximum of 100 boosts.

To save the edits you made on the boost's settings, you need to click "Edit" in the bottom-right corner of the settings.


Variables

The leveling module collects leveling data and sorts out levels for each user and their XP. These variables below can be used to reference that data in this module.

These Variables can only be used in this module.

Variable
Details

{level}

Displays the user's current level

{xp}

Displays the user's experience

{required_xp}

Displays the required experience to reach the next level

{rank}

Displays the rank of the user


Commands

The leveling module has a wide range of commands, you can find these below.

/rank

This command will allow users to display their current XP progress as well as others.

/level leaderboard

This command will display the server's level leaderboard when triggered. Use the buttons below to navigate through the leaderboard. The button in the middle allows you to go to a specific position in the leaderboard. Change the value of the users-per-page option to show a different amount of users per page (defaults to 10).

/level edit-xp

This is one of the admin commands for the module, users with the defined admin roles will be able to use this command to edit a user's XP points. You can add / set / remove a custom amount of levels / XP.

/level reset-leaderboard

This is one of the admin commands for the module, users with the defined admin roles will be able to use this command to reset the servers level leaderboard.

Events

The leveling module has a wide range of events, you can find these below.

Level Up

This event will track when a user levels up and send the level up message to the appropriate destination.

Message Experience

This event will track user messages and add XP points to a users total for each message, following the defined settings in the module.

Voice Experience - Join

This event will track when a user joins a voice channel and start giving them XP points if you have the Voice XP Settings function enabled.

Voice Experience - Leave

This event will track when a user leaves a voice channel and stop giving the user XP points, the voice events will only work if you have enabled the Voice XP Settings function above.

Clear on Leave

If you have the clear on Leave option enabled, this event will trigger when a user leaves the server and clear their Leveling data, this includes XP, Levels, etc.


It's advised that you do not edit the commands and events unless you have a good understanding of BotGhost and its Command Builder. If you encounter any issues, you might want to reset the module for it to work again as intented.

Additionally, a copy of the edited commands / events will be created if you update the module.

Features in this section are limited to users.

Features in this section are limited to users.

Leveling
Premium Subscription
Premium
Premium