A complete framework to implement a leveling system using discord.js v13
✨ Beginner friendly
✍ Full customization
☁ LightWeight
🦺 Does not use your discord bot token
Keep in mind that there are docs for this project here
const { Client, Intents } = require('discord.js')
// create a new client with discord.js
const client = new Client({
intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES]
})
const { EasyLeveling } = require('discord-easy-leveling')
const config = {
TOKEN: 'sUp3r-s3Cr31-t0K3n'
}
// options for the package
// this can be changed based of your needs
const options = {
startingXP: 0,
startingLevel: 1,
levelUpXP: 100,
database: 'sqlite' // or 'json'
}
const leveling = new EasyLeveling(client, options)
// creating a new 'EasyLeveling' client
client.leveling = leveling
// now you can access the leveling module everywhere!
client.on('ready', () => {
console.log(client.user.tag + ' is ready!')
})
client.on('messageCreate', (message) => {
if(message.author.bot) return
// will not add xp is the message author is bot
client.leveling.addLevels(message.author.id, message.guild.id, message.channel.id)
// add levels to message author in message guild
// the first parameter is message author's id
// the second parameter is message guild's id
// the third parameter is message channel's id
})
client.leveling.on('UserLevelUp', (newLevel, lastLevel, userId, guildId, channelId) => {
// This event is fired when a user level up
client.channels.cache.get(channelId).send(`Congrats <@${userid}>! You have advanced to level ${newLevel}. Your old level was level ${lastLevel}`)
})
// login with discord bot token
client.login(config.TOKEN)
Having problems using the packge? Join our discord server to get help!