Error: Cannot find module './src/commandstools/ping.js' - javascript

Code: Just a command handler. Here is the code to my command handler:
const { REST } = require(`#discordjs/rest`);
const { Routes } = require(`discord-api-types/v9`);
const fs = require("fs");
module.exports = (client) => {
client.handleCommands = async () => {
const commandFolders = fs.readdirSync(`./src/commands`);
for (const folder of commandFolders) {
const commandFiles = fs.readdirSync(`./src/commands/${folder}`).filter((file) => file.endsWith(".js"));
const { commands, commandArray } = client;
for (const file of commandFiles) {
const command = require(`../../src/Commands/${folder}/${file}`);
commands.set(command.data.name, command);
commandArray.push(command.data.toJSON());
console.log("Command: $(command.data.name) has passed through the handler");
}
}
const clientId = "1020364253842116720";
const rest = new REST({ version: `9` }).setToken(process.env.token);
try {
console.log("Started refreshing application (/) commands.");
await rest.put(Routes.applicationCommands(clientId), {
body: client.commanndArray,
});
console.log("Successfully reload application (/) commands.");
} catch (error) {
console.error(error);
}
// change this marc if you add it to more servers
};
};
Error:
Error: Cannot find module '../../src/Commands/tools/ping.js'
Require stack:
- C:\Users\gacoo\Desktop\Radon\src\functions\handlers\handleCommands.js
- C:\Users\gacoo\Desktop\Radon\src\bot.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1075:15)
at Module._load (node:internal/modules/cjs/loader:920:27)
at Module.require (node:internal/modules/cjs/loader:1141:19)
at require (node:internal/modules/cjs/helpers:110:18)
at client.handleCommands (C:\Users\gacoo\Desktop\Radon\src\functions\handlers\handleCommands.js:15:33)
at Object.<anonymous> (C:\Users\gacoo\Desktop\Radon\src\bot.js:23:8)
at Module._compile (node:internal/modules/cjs/loader:1254:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1308:10)
at Module.load (node:internal/modules/cjs/loader:1117:32)
at Module._load (node:internal/modules/cjs/loader:958:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'C:\\Users\\gacoo\\Desktop\\Radon\\src\\functions\\handlers\\handleCommands.js',
'C:\\Users\\gacoo\\Desktop\\Radon\\src\\bot.js'
]
}
I am running Node.js v18.14.1.
I cannot see the problem with it at all, please help it is for a multipurpose discord bot.

If s.readdirSync('./src/commands') is successful, you don't need to go back two directories to get to src:
const command = require(`./src/Commands/${folder}/${file}`);

Related

I cant run js script

hello all, is my script of discord bot
It's is my script JavaScrypt
const botconfig = require("./botconfig.json");
const Discord = require("discord.js");
const fs = require("fs");
const bot = new Discord.Client({disableEveryone: true});
bot.commands = new Discord.Collection();
bot.aliases = new Discord.Collection();
fs.readdir("./commands/", (err, files) => {
if(err) console.log(err);
let jsfile = files.filter(f => f.split(".").pop() === "js");
if(jsfile.length <= 0){
console.log("Couldn't find commands.");
return;
}
jsfile.forEach((f, i) =>{
let props = require(`./commands/${f}`);
console.log(`${f} loaded!`);
bot.commands.set(props.help.name, props);
props.help.aliases.forEach(alias => {
bot.aliases.set(alias, props.help.name);
});
});
})
bot.on("ready", async () => {
console.log(`${bot.user.username} is online on ${bot.guilds.size} servers!`);
bot.user.setActivity(`In Development`);
bot.user.setStatus('online');
bot.on("message", async message => {
if(message.author.bot) return;
if(message.channel.type === "dm") return;
let prefix = botconfig.prefix
let messageArray = message.content.split(" ");
let args = message.content.slice(prefix.length).trim().split(/ +/g);
let cmd = args.shift().toLowerCase();
let commandfile;
if (bot.commands.has(cmd)) {
commandfile = bot.commands.get(cmd);
} else if (bot.aliases.has(cmd)) {
commandfile = bot.commands.get(bot.aliases.get(cmd));
}
if (!message.content.startsWith(prefix)) return;
try {
commandfile.run(bot, message, args);
} catch (e) {
}}
)})
bot.login("MTAwNzkyMDIyMDIyNjIwNzc2NQ.GldCmn.1jWZEr1ALjADcZvbAnDHkrhpy6OBlzpjcFMw8w");
my error:
throw new TypeError(ErrorCodes.ClientMissingIntents);
^
TypeError [ClientMissingIntents]: Valid intents must be provided for the Client.
at Client._validateOptions (C:\Users\4bino\node_modules\discord.js\src\client\Client.js:480:13)
at new Client (C:\Users\4bino\node_modules\discord.js\src\client\Client.js:78:10)
at Object.<anonymous> (C:\Users\4bino\OneDrive\Рабочий стол\economybot-master\index.js:4:13)
at Module._compile (node:internal/modules/cjs/loader:1105:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
at node:internal/main/run_main_module:17:47 {
code: 'ClientMissingIntents'
}
I do not understand what to do, please help with this problem
I'm trying to run this script for the discord bot
I tried to look for a solution to this problem in other resources, but I didn't find anything
I have already installed the discord package.js but it looks like he can't find some module
My Node version.js is v16.16.0

i am trying to make a discord bot using discord.js and im making an even handler but im getting this error

SyntaxError: Unexpected token 'const'
at Object.compileFunction (node:vm:352:18)
at wrapSafe (node:internal/modules/cjs/loader:1032:15)
at Module._compile (node:internal/modules/cjs/loader:1067:27)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Module.require (node:internal/modules/cjs/loader:1005:19)
at require (node:internal/modules/cjs/helpers:102:18)
at Client.client.loadEvents (/Users/jacobzaldivar/Desktop/bot/index.js:21:38)
at Object.<anonymous> (/Users/jacobzaldivar/Desktop/bot/index.js:23:8)
(base) jacobzaldivar#jacobs-mbp bot %
here's my code if you need it
const bot = require("..")
const { getFiles } = require("../util/functions")
module.exports = (bot, reload) => {
const {client} = bot
let events = getFiles("../events/", ".js")
if (events.length === 0){
console.log("No events to load")
}
events.forEach((f, i) => {
if (reload)
delete require.cache[require.resolve(`../events/${f}`)]
const event = require(`../events/${f}`)
client.events.set(event.name, event)
if (!reload)
console.log(`${i + 1}. ${f} loaded`)
})
if (!reload)
initEvents(bot)
}
function triggerEventHandler(bot, event, ...args)
const {client} = bot
try {
if (client.events.has(event))
client.events.get(event).run(bot, ...args)
else
throw new Error(`Event ${event} does not exist`)
}
catch(err){
console.error(err)
}
function initEvents(bot) {
const {client} = bot
client.on("ready", () => {
triggerEventHandler(bot, "ready")
})
}
Missing some formatting, indicated below.
const bot = require("..")
const { getFiles } = require("../util/functions")
module.exports = (bot, reload) => {
const {client} = bot
let events = getFiles("../events/", ".js")
if (events.length === 0){
console.log("No events to load")
}
events.forEach((f, i) => {
if (reload)
delete require.cache[require.resolve(`../events/${f}`)]
const event = require(`../events/${f}`)
client.events.set(event.name, event)
if (!reload)
console.log(`${i + 1}. ${f} loaded`)
})
if (!reload)
initEvents(bot)
}
function triggerEventHandler(bot, event, ...args) { //missing the {
const {client} = bot
try {
if (client.events.has(event))
client.events.get(event).run(bot, ...args)
else
throw new Error(`Event ${event} does not exist`)
}
catch(err){
console.error(err)
}
} //missing the }
function initEvents(bot) {
const {client} = bot
client.on("ready", () => {
triggerEventHandler(bot, "ready")
})
}

Error using discord-buttons: "Class extends value undefined is not a constructor or null"

I tried to make a button in Discord.js. However, when I wrote the code, I found that there was an error during startup.
I don't know why this error is happening. I checked many related questions online, but none of my problems were solved, and I even became even more confused.
This is my code:
const config = require("./config.json");
const Discord = require('discord.js');
const bot = new Discord.Client();
require('discord-buttons')(client);
const fs = require("fs");
const client = new Discord.Client({disableEveryone: false});
const moment = require("moment");
const { MessageButton, MessageActionRow } = require('discord-buttons')
client.commands = new Discord.Collection();
fs.readdir("./commands/", (err, files) => {
if(err) console.log(err);
let jsfile = files.filter(f => f.split(".").pop() === "js");
if(jsfile.length <= 0){
console.log("XX");
return;
}
jsfile.forEach((f, i) =>{
let props = require(`./commands/${f}`);
client.commands.set(props.help.name, props);
});
});
client.on('message', async message => {
if(message.content === "buttonstest"){
const button = new MessageButton()
.setLabel("test")
.setStyle("green")
.setID("btn1")
var embed = new Discord.RichEmbed()
.setColor("#FFFFFF")
.setTitle("test")
message.channel.send(embed, button);
}
})
client.on("message", async message => {
if(message.author.bot) return;
if(message.channel.type === "dm") return;
let prefix = config.prefix;
let messageArray = message.content.split(" ");
let cmd = messageArray[0];
let args = messageArray.slice(1);
let commandfile = client.commands.get(cmd.slice(prefix.length));
if(commandfile) commandfile.run(client,message,args);
});
client.login(config.token)
This is the error message:
I have no name!#f7808405-1373-45ee-bac7-0059f94bd574:~$ /home/container/node_modules/discord.js-buttons/src/Classes/APIMessage.js:5
class sendAPICallback extends APIMessage {
^
TypeError: Class extends value undefined is not a constructor or null
at Object.<anonymous> (/home/container/node_modules/discord.js-buttons/src/Classes/APIMessage.js:5:31)
at Module._compile (internal/modules/cjs/loader.js:1068:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
at Module.load (internal/modules/cjs/loader.js:933:32)
at Function.Module._load (internal/modules/cjs/loader.js:774:14)
at Module.require (internal/modules/cjs/loader.js:957:19)
at require (internal/modules/cjs/helpers.js:88:18)
at Object.<anonymous> (/home/container/node_modules/discord.js-buttons/src/Classes/Message.js:3:20)
at Module._compile (internal/modules/cjs/loader.js:1068:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
In Discord.js v13, the API message class has been renamed to MessagePayload. APIMessage would therefore be undefined.
This error is occurring in the discord-buttons module. Discord.js v13 supports buttons so you do not need this module. See the Discord.js guide on buttons for more details.
To send a button, you could use this code:
client.on('message', async message => {
if(message.content === "buttonstest"){
const button = new Discord.MessageButton()
.setLabel("test")
.setStyle("SUCCESS")
.setCustomId("btn1");
// Note that RichEmbed was renamed to MessageEmbed in v12
const embed = new Discord.MessageEmbed()
.setColor("#FFFFFF")
.setTitle("test");
message.channel.send({
embeds: [embed],
components: [{components: [button]}]
// alternatively
// components: [new Discord.MessageActionRow([button])]
});
}
});
You should also take a look at the Discord.js v13 upgrade guide.

I am having an error "Error: Cannot find module 'random'" while making a Discord.js bot

Please help with the following issue.
I am making a Discord.js bot, but, when I start the bot using "node ." it gives the following error:
internal/modules/cjs/loader.js:1068
throw err;
^
Error: Cannot find module 'random'
Require stack:
- D:\quote\index.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1065:15)
at Function.Module._load (internal/modules/cjs/loader.js:911:27)
at Module.require (internal/modules/cjs/loader.js:1125:19)
at require (internal/modules/cjs/helpers.js:75:18)
at Object.<anonymous> (D:\quote\index.js:2:16)
at Module._compile (internal/modules/cjs/loader.js:1236:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1257:10)
at Module.load (internal/modules/cjs/loader.js:1085:32)
at Function.Module._load (internal/modules/cjs/loader.js:950:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [ 'D:\\quote\\index.js' ]
}
My code:
const Discord = require('discord.js');
const random = require('random');
const bot = new Discord.Client();
var stats = {};
bot.on('message' , (message) => {
if (message.guild.id in stats === false) {
stats[message.guild.id] = {};
}
const guildStats = stats[message.guild.id];
if (message.author.id in guildStats === false) {
guildStats[message.author.id] = {
xp: 0,
level: 0,
last_message: 0
};
}
const userStats = guildStats[message.author.id];
userStats.xp == random.int(15, 25);
const xpToNextLevel = 5 * Math.pow(userStats.level, 2) - 50 * userStats.level + 100;
console.log(message.author.username + 'now has' + userStats.xp);
console.log(xpToNextLevel = ' XP needed for next level.');
const parts = message.content.split(' ');
if(message.content === '!hello') {
message.reply('hi');
}
});
bot.login('REMOVED');
You're trying to load a module that you haven't installed. Try running npm i random in the console in the same directory.

Error: Cannot find module './commands/${f}1'

I've been trying to get my bot to come online for hours but I keep getting the same error.
Here's the error:
Error: Cannot find module './commands/${f}1'
Require stack:
- C:\Users\Apskaita\Desktop\Viper bot\main.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:965:15)
at Function.Module._load (internal/modules/cjs/loader.js:841:27)
at Module.require (internal/modules/cjs/loader.js:1025:19)
at require (internal/modules/cjs/helpers.js:72:18)
at C:\Users\Apskaita\Desktop\Viper bot\main.js:20:22
at Array.forEach (<anonymous>)
at C:\Users\Apskaita\Desktop\Viper bot\main.js:19:12
at FSReqCallback.oncomplete (fs.js:156:23) {
code: 'MODULE_NOT_FOUND',
requireStack: [ 'C:\\Users\\Apskaita\\Desktop\\Viper bot\\main.js' ]
}
Here's my code for my main.js:
const Discord = require('discord.js');
const client = new Discord.Client();
const botconfig = require('./botconfig.json');
const fs = require("fs");
client.commands = new Discord.Collection();
client.alieses = new Discord.Collection();
// READ COMMANDS FOLDER
fs.readdir("./commands/", (err, files) => {
if(err) console.log(err);
let jsfile = files.filter(f => f.split(".").pop() === "js")
if(jsfile.length <= 0) {
console.log("couldin't file any commands!");
return;
}
jsfile.forEach((f) => {
let preops = require("./commands/${f}1")
console.log('${f} loaded!');
bot.commands.set(props.help.name, props);
props.help.aliases.forEach(alias => {
bot.aliases.set(alias, props.help.name);
})
})
})
// BOT ONLINE MESSAGE AND ACTIVITY MESSAGE
client.on('ready', async () => {
console.log('${bot.user.username} is online on ${bot.guilds.size} servers!')
bot.user.setActivity('with ${bot.guilds.size} servers!');
})
client.on('message', async message => {
// CHECK CHANNEL TYPE
if(message.channel.type === "dm") return;
if(message.author.bot) return;
// SET PREFIX
let prefix = botconfig.prefix;
// CHECK PREFIX, DEFINE ARGS & COMMAND
if(message.content.startsWith(prefix)) return;
let args = message.content.slice(prefix.length).trim().split(/ +/g);
let cmd;
cmd = args.shift().toLowerCase();
let command;
let commandfile = bot.commands.get(cmd.slice(prefix.length));
if(commandfile) commandfile.run(bot, message, args);
//RUN COMMANDS
if(bot.commands.has(cmd)) {
command = bot.commands.get(cmd);
} else if (bot.aliases.has(cmd)) {
command = bot.commands.get(bot.aliases.get(cmd));
}
try {
command.run(bot, message, args);
} catch (e) {
return;
}
client.login(botconfig.token)})
My ping.js:
module.exports.run = async (bot, message, args) => {
const m = await message.channel.send("ping!");
m.edit("Pong! ${m.createTimestamp - message.createdTimestamp}ms");
}
module.exports.help = {
name: "",
aliases: ["p"]
}
These errors are very confusing and I don't really know how to fix them so please can someone fix them?
I am very new to JavaScript so I don't have a clue what I'm typing... I copied the code from a tutorial so I don't what's going on.
You're not using the correct quotes, you're using " instead of `
Replace
jsfile.forEach((f) => {
let preops = require("./commands/${f}1")
console.log('${f} loaded!');
bot.commands.set(props.help.name, props);
props.help.aliases.forEach(alias => {
bot.aliases.set(alias, props.help.name);
})
})
By
jsfile.forEach((f) => {
let preops = require(`./commands/${f}1`)
console.log(`${f} loaded!`);
bot.commands.set(props.help.name, props);
props.help.aliases.forEach(alias => {
bot.aliases.set(alias, props.help.name);
})
})
It means that the path is incorrect. First of all, be sure to use good quotes as someone said before. Then, are you sure that there is a 1 at the end of your files' names ? It is what you ask ${f}1.

Categories