Leveling

Have your very own leveling system to boost community engagement and challenge your server members!

Note: This module makes use of the data storage and will use a lot of data calls to run. Information about the data storage can be found here.

Boost your servers activity levels by introducing a levels system to your server. The Leveling module will allow you to setup a highly customisable leveling system for both text based interactions and voice interactions.

General Settings

Browse the list of general settings for the Leveling 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:

Disabled

Current Channel (Sends the message to the channel the user levelled up in)

Custom Channel (Allows you to select a custom channel via channel selection)

Direct Message

Current Channel & Direct Message

Custom Channel & Direct Message

Custom Channel

By selecting either (Custom Channel or Custom Channel & Direct Message) above, this option will be displayed. Here you can select the custom channel to send the level up message to when a user levels up.

Level Up Server Message

By enabling the level up message above, this option will be displayed. Here you can edit the level up message that is sent to the server when a user levels up. All module variables can be found on the customisation panel.

Level Up Direct Message

By enabling the level up message and selecting one of the Direct Message options above, this option will be displayed. Here you can edit the level up message that is sent to the user when they levels up. All module variables can be found on the customisation panel.

Level Card Settings

Note: This section is only available to users with a Premium Subscription.

Card Type

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

Advanced Settings

Enabling the Advanced Settings for the level card above will display a wide range of new advanced customisation 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).

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 (Not Recommended).

Voice XP Settings

Note: This section is only available to users with a Premium Subscription.

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.

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.

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.

Add Role Rewards

Here you can define some roles to award users upon reaching a set level. Selecting roles from the role dropdown and setting a level target will bind those roles to that level target and grant users the selected roles when they reach said level.

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.

Add Role Boosts

Here you can define some roles to award users with XP Boosts. Selecting roles from the role dropdown and setting a boost percentage will bind those roles to that boost percentage and grant users with the selected roles a XP boost of the set percentage.

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.

/leaderboard

This command will display the servers level leaderboard when triggered.

/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 users XP points.

/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 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 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.

Warning: It's advised that you do not edit the events or commands unless you have a good understanding of BotGhost and the Custom Event & Command Builder. You can always reset the module to default if you should happen to make a mistake while editing the events/commands.

Last updated