2025.2 Releases May 2025!
Check it Out!
Bit
Bit Source CodeBug & Suggestion Tracker
2024.1
  • Bit
  • Docs
  • Bit Plugins
  • Bit Changelogs
  • Bit Hosted
2024.1
  • Welcome
  • Updating
  • Commands
  • FAQ
  • Install Plugins
  • Dev
    • Create Plugins
      • Commands
      • Events
      • Run function on bot startup
      • plugin.json
      • update.json
      • Updating to Bit 2024.1
Powered by GitBook
LogoLogo

Copyright 2018-2025 Lockyz Media

On this page

Was this helpful?

Edit on GitHub
  1. Dev
  2. Create Plugins

Commands

Last updated 4 months ago

Was this helpful?

This guide is unfinished! We recommend following discord.js's guide for commands found here

Bit has some custom data inserted into the regular discord.js command object. Please read the following command example for information on this!

Command Example

const { EmbedBuilder, version: discordVersion, SlashCommandBuilder } = require('discord.js')
const moment = require('moment');
require('moment-duration-format');
const language = require('../../../config.json')

module.exports = {
    cooldown: 5,
    // Sets if the command can be used with the bot as a user-installed app or a guild-installed app.
    integration_types: {
        user: false,
        guild: true,
    },

    // Sets if the command can be used in a guild-channel, the bots DMs or a private channel (only works IF the command is user-installable, group DMs and regular user DMs)
    context_types: {
	guildChannel: true,
	botDM: true,
	privateChannel: true,
},

	data: new SlashCommandBuilder()
		.setName('info')
        .setNameLocalizations({
            de: 'info',
            fr: 'info',
        })
		.setDescription('Get advanced information about the bot.')
        .setDescriptionLocalizations({
            de: 'Erhalten Sie erweiterte Informationen über den Bot.',
            fr: 'Obtenez des informations avancées sur le bot.',
        })
        .setDMPermission(false),
	async execute(interaction) {
        const client = interaction.client
        var lan = language;
        const locale = require('../../../locale/'+lan+'.json')

        const botUptime = moment.duration(client.uptime).format(' D [days], H [hrs], m [mins], s [secs]');
        const memUsage = (process.memoryUsage().heapUsed / 1024 / 1024).toFixed(2);
        const guildSize = client.guilds.cache.size.toString();
        const userSize = client.users.cache.size.toString();
        
        var d = new Date();
        var n = d.getFullYear();
        const embed = new EmbedBuilder()
            .setTitle(locale.bot.name)
            .setDescription(locale.bot.description)
            .addFields(
                { name: locale.misc.support, value: "https://discord.gg/NgpN3YYbMM", inline: true },
                { name: locale.misc.developer, value: "Robin Painter", inline: true },
                { name: locale.misc.guilds, value: guildSize, inline: true },
                { name: locale.misc.users, value: userSize, inline: true },
                { name: locale.misc.uptime, value: botUptime, inline: true },
                { name: locale.misc.memory, value: `${Math.round(memUsage)} MB`, inline: true },
                { name: locale.misc.discordJS, value: `v${discordVersion}`, inline: true },
                { name: locale.misc.node, value: `${process.version}`, inline: true },
                { name: locale.misc.version, value: "v5.2.0", inline: true },
                { name: locale.misc.bugTracker, value: "https://tracker.lockyzdev.net/set_project.php?project_id=5", inline: true },
            )
            .setFooter({ text: locale.misc.copyrightText.replace('{year}', n)});
        interaction.reply({ embeds: [embed] })
	}
};
https://discordjs.guide/creating-your-bot/slash-commands.html#individual-command-files