OptionalcustomOptionalenabledWhether the leveling system is enabled for this guild. Default: true
OptionalformulaXP formula to use for computing required XP per level. Default: "quadratic"
OptionalignoreOptionalmaxMaximum level a member can reach. 0 = no cap. Default: 0
OptionalmessageMessage/custom rewards that fire the levelReward event
OptionalmultipliersRole/channel-specific XP multipliers. All matching multipliers are stacked (multiplied together).
OptionalnotificationOptionalnoRoles that grant zero XP but are not the same as ignore. Members with these roles can still appear on the leaderboard.
OptionalroleRole rewards granted at specific levels
OptionalstackIf true, all earned role rewards are kept as the member levels up. If false, only the highest reward role is kept. Default: true
OptionalxpBase XP value used in the formula. linear: xpRequired = base * level quadratic: xpRequired = base * level^2 exponential: xpRequired = base * exponent^level Default: 100
OptionalxpCooldown between XP gains in milliseconds. Default: 60000 (60 seconds)
OptionalxpExponent used only for the "exponential" formula. xpRequired = xpBase * xpExponent^level Default: 1.5
OptionalxpMaximum XP awarded per message. Default: 25
OptionalxpMinimum XP awarded per message. Default: 15
OptionalxpGlobal XP multiplier applied on top of any role/channel multipliers. Default: 1
A custom JS expression string evaluated when formula = "custom". Available variables:
level,base,exponentExample: "base * level * (level + 1) / 2"