The autolevel plugin provides a guild leveling system that can also reward roles to members for participating in chat and voice.
The heimdallr autoleveling system also provides a means to have multiple guild leveling systems running at the same time. This can be used for things such as having specific category participation rewarding particular roles over another category which may reward another role. Each leveling system can be customized to have its own configuration.
Name | Description | Default Level | Usage |
---|---|---|---|
or
|
Shows the users current points and levels in the current location that the command is run. | 0 |
or
|
!top
|
Shows guild top 10 plus your ranking in the guild | 0 | !top
|
or
|
Allows the moderator to list all autolevel indexes the user belongs to currently. | Moderator |
or
|
or
|
Displays how many points are required to reach a specific rank. Can be used to determine how many points to set in the config. | Moderator |
or
|
or
|
Adds a specified number of points to the user in the specified index. If no index is selected the default '0:0' is used which may or may not exist. | Administrator |
or
|
or
|
Removes a specified number of points to the user in the specified index. If no index is selected the default '0:0' is used which may or may not exist. | Administrator |
or
|
!alevel import {type} {guildid} [index]
|
Allows importing of mee6 or tatsumaki scores into a guild. type can be either |
Global + Admin |
!alevel import tatsumaki 76685590585671680 [index]
|
Option | Description | Type | Default |
---|---|---|---|
include_roles | Which specific roles are included. If nothing is specified all roles are included. | snowflake list | [] |
exclude_roles | Which specific roles are excluded. | snowflake list | [] |
include_channels | Which specific channels are included. If nothing is specified all channels are included. | channelfield list | [] |
exclude_channels | Which specific channels are excluded | channelfield list | [] |
include_voice | Which voice channels are included if any in this configuration. No voice channels are included by default | channelfield list | [] |
include_voice_category | Which specific categories will have all child voice channels included in this configuration. | channelfield list | [] |
include_category | Which specific categories are included | channelfield list | [] |
exclude_category | Which specific categories are excluded | channelfield list | [] |
multiplier | Dict of how many points are awarded for each message or minute of voice activity | dict | None |
multiplier_roles |
Dict of any roles that when applied award an additional multiplier of points off the base value. Format is
|
dict | None |
weight | Applies a weighting to each multiplier type. For example the default weighting for message is 5 and the default multiple for message is 25. Weight will +/- the weight (5) and the points awarded will fall within this range (20-30). | dict | None |
levels | Dict defining the number of points and the appropriate role that will be added to the user. | dict | None |
keep_previous | If previously added roles will be kept when gaining the subsequent level | bool | False |
announce_msg | Message to be posted when the user reaches a level | str | None |
announce_chan | Channel the message will be posted to | channelfield | None |
announce_dm | If the message will be DM'd to the user | bool | False |
seconds_per_point | Number of seconds that must wait for another point to be applied | int | 60 |
category | Dict containing a category id and configuration using all above options except another category | dict | None |
level_footer_url | Image URL (must be real, well-formed) for the level footer. Will default level footer to guild icon if not defined. | str | None |
Option | Description | Type | Default |
---|---|---|---|
message | Number of points per message | int | 25 |
voice | Number of points per 1 minute of voice activity | int | 25 |
Option | Description | Type | Default |
---|---|---|---|
message | +/- how many points of multiplier message points | int | 5 |
voice | +/- how many points of multiplier voice points | int | 5 |
seconds | +/- how many seconds of seconds_per_point | int | 15 |
autolevel:
seconds_per_point: 1
keep_previous: true
multiplier:
message: 8
levels:
1000: 536728628680196126
2000: 536728691795951619
3000: 536728730714898442
category:
9843950989345098345:
include_roles:
- 3245098734095345980340
- 239045823094823094823
include_voice_category:
- 9843950989345098345
multiplier:
message: 12
voice: 25
multiplier_roles:
536728691795951619: 2
weight:
message: 2
voice: 10
seconds: 4
levels:
500: 2385947349805897345
1500: 3245987345987345987
3000: 34534509834509340598
10000: 324590834509853450985
keep_previous: true
seconds_per_point: 15
announce_msg: {user} has leveled up!! yeet!
announce_chan: 3454908448974987444
2394823904823487897:
exclude_channels:
- 238945723472384234987
- 2354987324598734598755
multiplier:
message: 100
levels:
10000: 3458973458937534598
25000: 23458974328974234984
50000: 3459083450983458738
seconds_per_point: 30
keep_previous: true
The autolevel plugin requires an option to be set in the config.yaml
for the tatsumaki API key.
other:
TATSUMAKI_API_KEY: '3298472389-4723948723-498723'