Leveling
Have your very own leveling system to boost community engagement and challenge your server members!
Last updated
Have your very own leveling system to boost community engagement and challenge your server members!
Last updated
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.
Browse the list of general settings for the Leveling module.
Change the embed color for the public embeds that are set alongside this module such as the leaderboard.
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.
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.
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.
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
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.
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.
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.
This option will allow you to change the background type for the leveling card, by default this is set to Image but can be changed between Color and Image.
If your Card Background is set to image, this setting will be displayed. Here you can paste an image link for the background of your level card. The recommended size is 1024x300 pixels.
If your Card Background is set to color, this setting will be displayed. Here you can change the background color for the level card using Hexadecimal (HEX).
Toggling this option on/off will display/hide the advanced settings for the level card. By default this is set to false (0/Off).
Here you can change the text color for the level card using Hexadecimal (HEX).
Here you can change the Fill Bar/Progress bar for the level card using Hexadecimal (HEX).
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.
Here you can change the user icon outline color for the level card using Hexadecimal (HEX).
Here you can change the Fill Bar/Progress bar background for the level card using Hexadecimal (HEX).
Here you can change the Fill Bar/Progress bar color when its full for the level card using Hexadecimal (HEX).
Here you can change the level text color for the level card using Hexadecimal (HEX).
Here you can change the experience progress text color for the level card using Hexadecimal (HEX).
Here you can change the experience percentage text color for the level card using Hexadecimal (HEX).
View the settings for message function of the Leveling module and what they do.
Here you can set the minimum number of XP points that will be given per message in numerical format (1, 2, 3, 4, etc).
Here you can set the maximum number of XP points that will be given per message in numerical format (1, 2, 3, 4, etc).
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).
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.
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.
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).
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.
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.
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.
Find out about the Channel & Role settings for the Leveling module.
Here you can select the role which will be considered admins. users with these roles will be able to edit other users' XP
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.
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.
Find out information about the Role Rewards settings for the leveling module and how each function works.
This option will allow you to enable/disable reward stacking, when enabled the role rewards will stack.
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.
Find out information about the XP Boost settings for the leveling module and how each function works.
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.
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.
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.
The leveling module has a wide range of commands, you can find these below.
This command will allow users to display their current XP progress as well as others.
This command will display the servers level leaderboard when triggered.
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.
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.
The leveling module has a wide range of events, you can find these below.
This event will track when a user levels up and send the level up message to the appropriate destination.
This event will track user messages and add XP points to a users total for each message, following the defined settings in the module.
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.
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.
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.