#development

1 messages · Page 1002 of 1

solemn latch
#

of the channel you want to spawn pokemon in

long yew
#

but

#

can't

quartz kindle
#

do you know what an id is?

long yew
#

i

#

make it so

#

?

quartz kindle
#

that would be the id of the channel where the message came from

solemn latch
#

also, then you dont need to get the channel

#

since you already have it

long yew
#

hmmmmmmmmmmm

solemn latch
#

message.channel.send at that point

long yew
#

yeah

long yew
quartz kindle
#

depends what you want to do

solemn latch
#

if you want it spawn in that channel

final gate
#

No problem, I have no interest if the number of servers appears or not @quartz kindle 👆

long yew
#

yeah

#

i do

solemn latch
#

then yes?

quartz kindle
#

@final gate ok

silent berry
#

how do i disable the ability to ping @everyoneand @here with my bot for say cmd

discord.js v12

quartz kindle
#

use disableMentions

#

there is a client option and a message option for it

long yew
#

this correct then?

solemn latch
#

no

#

your sending it a string now

quartz kindle
#

you need to explain what you want to accomplish

long yew
#

idk how to do it in a json file

final gate
#

speak with respect @quartz kindle

quartz kindle
#

what should spawn channel be? which channel?

solemn latch
#

you dont need a json file to send a message to message.channel

long yew
#

the channel the person writes .spawn in

quartz kindle
#

@final gate no, you speak with respect. if you want help, i will help, but i will not do it for you

long yew
#

you dont need a json file to send a message to message.channel
oh lol

solemn latch
#

you need a database

#

oh nvm

#

you dont want a spawn room

#

you want .spawn

#

message.channel.send("the content you want to send")

quartz kindle
#

so you want to type .spawn and then save this channel's id so it starts spawning in that channel?

obtuse jolt
#

i hate bots that say "a mystery character has spawned"

long yew
#

so will that work?

quartz kindle
#

and you want it to be limited to one channel per guild?

#

or multiple channels per guild?

long yew
#

no

#

well

quartz kindle
#

or no limit at all?

long yew
#

when they write .spawn a pokemon spawns

quartz kindle
#

you want .spawn to be toggle on / toggle off command?

#

you want pokemons to spawn randomly accross all servers? or randomly inside each server?

long yew
#

idk how to do that, i am not that good at coding

quartz kindle
#

there are many decisions you need to make before coding

final gate
#

If you have it, I don't want it from you talking about respect and nothing that it knows @quartz kindle 👆

obtuse jolt
#

i have what you are trying to do on my bot but i dont think it would show you much if I just gave you it reallyyy

solemn latch
#

your the one talking about respect @final gate

quartz kindle
#

@final gate code is not something you copy and paste. i showed you the link that explains how to do it. even if i send you my code, it will not work for you, because i coded it specifically for my scenario

solemn latch
#

now one owes you anything here anyway

obtuse jolt
#

@long yew is your json file configured to have guild by guild configs?

solemn latch
#

i think he just wants it to spawn wherever they did the command

#

so the json has zero point here

final gate
#

Shut up @solemn latch 🖕

obtuse jolt
#

i think he wants it so when you do .spawn it saves the channels ID and then randomly spawns it

#

like pokemon bot

solemn latch
#

@ember atlas can you tell this guy to not be a meanie 😦

slender thistle
#

alright this shit stops here

#

Can we not have stupid arguments in this channel, thank you

long yew
#

ok i'm back

solemn latch
#

wb

obtuse jolt
#

bruh

solemn latch
#

i dont think you need the json at all sam

final gate
#

Thanks, why didn't you say it that way? @quartz kindle

solemn latch
#

since your just responding to the message

obtuse jolt
#

wait now we need to know what he wants

#

like

long yew
#

@quartz kindle i wanted it so when someone writes .spawn, 1 pokemon spawns

final gate
#

@slender thistle Don't see a chat

slender thistle
#

what chat

quartz kindle
#

@final gate because when i showed you the link, you only said "i dont want explanation, i want code", and that was very rude

obtuse jolt
#

if you want it to just spawn one when you type a command isnt that like defeating the purpose of them appearing

final gate
#

I apologize for you hahaha@quartz kindle heart

long yew
#
client.channels.cache.get(message.channel.id).send({ embed });``` so i will try this
quartz kindle
#

thank you

obtuse jolt
solemn latch
#

@long yew theres no reason to do that, your getting a channel you already have

quartz kindle
#

@long yew so you want .spawn to be like a normal command, not a command that saves an option somewhere? then just use message.channel.send()

solemn latch
#

your using message.channel, to get the message channel again

obtuse jolt
#

what you are doing it super over complicating it

solemn latch
#

its like you have some icecream, but your trading the icecream you have, to get the exact same tub of icecream

long yew
#

@long yew so you want .spawn to be like a normal command, not a command that saves an option somewhere? then just use message.channel.send()
@quartz kindle ok

halcyon ember
#

What’s the best way to make an item system that’s tracked by numerical IDs

solemn latch
#

javascript?

halcyon ember
#

Ya

solemn latch
#

this includes everything about a currency system

long yew
#

anyone know the problem?

solemn latch
#

yes

#

your getting a channel

#

you dont need to do that

#

message.channel.send

#

client.channels.cache.get. is unnecessary

#

you dont need to get what you already have

long yew
#

so

#

client.message.channel.send({ embed });

solemn latch
#

no

#

message.channel.send

#

you already have message

#

and message already has channel

pale vessel
#

please learn javascript and read docs

honest perch
#

message.channel.send(embed)

long yew
#

sorry it is nearly midnight

#

i'm half asleep

#

ima go define it

#

brb

pale vessel
#

to be continued...

long yew
#

lol

#

help lol

#

i forgot

#

what to define message to

#

xD

solemn latch
#

The message you recived

#

The one that contains .spawn

long yew
#

probably

solemn latch
#

No exactly that

long yew
#

yeah

#

so

#

what do i do?

#

let message = ...

#

like that?

quartz kindle
#

...

#

where are you putting this code in the first place?

honest perch
#

In the file, duhhhh

#

Anyways have fun with helping the pokemon bot guy.

wooden ember
#

Im assuming you mean something like client.on('message', async message => {

#

cuz that is what defines message

crimson vapor
#

I do not think so, from what I can tell, he created a separate function for spawns, and forgot to define message in the function

wooden ember
#

ah well idk

#

im just assuming he is doing something along the lines of```

bot.on('message', async message => {

if (message.content === 'damnit') {
message.channel.send('not again');
}

});

#

where it says "not again" being the embed

halcyon ember
#

@solemn latch not currency, I’m making a game and there’s different items each with different specs

#

I want like a simple system to manage it

solemn latch
#

It covers items

thin bolt
#

Any idea for make discord music dispatcher clear and quiet?

quartz kindle
#

clear and quiet?

#

play silence

#

lmao

halcyon ember
#

I mean like without mysql using a json or SQLite

wooden ember
#

I mean you can set each item to have a value in a parameters file

quartz kindle
#

sqlite and mysql are 99% the same, the difference is that mysql is a program in itself and runs as a server to which your bot connects to, where sqlite is embedded and runs inside your bot

wooden ember
#

yeah like if you want to have people trading you're gonna have to have some sort of database

midnight blaze
#

is there a good method to use regex to get a good filter out of it? for example to block nsfw material? I tried to work it out, but it didnt work so well.

amber fractal
#

It's very complicated to make a good filter

hardy vector
#
const mongoose = require('mongoose')
let Schema = new mongoose.Schema({
    Warns: Array,
    User: String,
    Guild: String
})
module.exports=mongoose.model("warns", Schema)```
(node:1336) UnhandledPromiseRejectionWarning: OverwriteModelError: Cannot overwrite warns model once compiled.
    at Mongoose.model (C:\Users\kenra\Desktop\Frosty Rewrite\node_modules\mongoose\lib\index.js:524:13)
    at Object.<anonymous> (C:\Users\kenra\Desktop\Frosty Rewrite\src\models\warns.js:7:25)
    at Module._compile (internal/modules/cjs/loader.js:1138:30)
#

i never defined the schema anywhere else tho

#

so

#

idk why

restive willow
#

aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host discordapp.com:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1108)')]

finite bough
#

@hardy vector check if the model exists

restive willow
#

just upgraded to py 3.8.3 and now certificate error

#

still wroks on 3.6

earnest phoenix
#
const client = new Discord.Client();

client.once('ready', () => {
    console.log('Ready!');
});

client.login('your-token-goes-here');```
#

This wont work for some reason

#

ill screenshot

#

if anyone can help

hardy vector
#

@hardy vector check if the model exists
@finite bough how

finite bough
#

a..

nimble ore
#

@earnest phoenix you spelt "on" wrong

finite bough
#

see if there is an error by adding a catch

solemn latch
#

save your index file

finite bough
#

if there is an error

#

search the model

solemn latch
#

once works, it just runs one time

earnest phoenix
#

sorry

#

yeah i spelt it wrong that time

#

but it still doesnt work

nimble ore
#

dw

#

anyways

earnest phoenix
#

i feel so stupid lmao

nimble ore
#

does anyone know how to collect a guild name?

finite bough
nimble ore
#

tried

#

says name is undefined

solemn latch
#

name is undefined, or getting name from undefined?

finite bough
#

in what event is it in

#

message?

nimble ore
#

guildMemberAdd

earnest phoenix
#

Welp

finite bough
#

what object have u assigned to the member

#

member?

#

like

nimble ore
#

member goes to user

finite bough
#

client.on(...., member => {

#

liek that?

nimble ore
#

its in my events folder

finite bough
#

yes

#

then

nimble ore
#

ok

#

alright that worked

#

thanks mate

finite bough
#

np

wooden ember
#

I know this is gonna be a noob question but what is a guild

sudden geyser
#

It's a server (like Discord Bot List)

winter basalt
#

servers

wooden ember
#

?

sudden geyser
wooden ember
#

ah ok

solemn latch
#

discord decided for developers, servers are called guilds

wooden ember
#

makes sense cuz I expect the devs say server meaning the discord mainframe

solemn latch
#

yeah

quartz kindle
#

also because discord was made for the gaming community

#

and guilds are a common gamer term

wooden ember
#

mm

#

never heard the word in that context before so idk

quartz kindle
#

nearly all mmorpg's have a guilds system for example

#

some are even in the game's name, such as guild wars

wooden ember
#

fair enough

sinful prairie
#

are people here interested in contributing to bot projects or is it just people who have bots and are already volunteering labor to maintain them

solemn latch
#

this is, if you are stuck on something, and have properly tried to look for an answer, ask for help to get that answer.

however, 99% of the time its just people too lazy to look at docs asking for you to look at the docs for them

sinful prairie
#

ouch

hardy vector
#

https://stackoverflow.com/questions/19051041/cannot-overwrite-model-once-compiled-mongoose this thing lied to me
it told me instantiate the schema once, and then have a global object call it when it needs it.

const mongoose = require('mongoose')
var Schema = mongoose.Schema;
let warnsSchema = new Schema({
    Warns: Array,
    User: String,
    Guild: String
})
module.exports=mongoose.model("warns", warnsSchema)```
which is what i did
but that still gives me the error its supposed to fix
wild mist
#

How do i got id from username?
discord.js

warm marsh
#

You can't get an ID from a username.

#

You can get it from a user.

#

<User>.id

stark abyss
#

am I allowed to ask for help

wild mist
stark abyss
#

@wild mist how are u getting username?

#

How do i got id from username?
discord.js

wild mist
#

Maybe this?
client.users.cache.get("name", "USERNAMEHERE").id;

stark abyss
#

@wild mist where is the username coming from?

#

or the id

summer torrent
#

@wild mist find(x => x.username === "")

wild mist
#

Ill try it

stark abyss
#

how do i get somethign from that

#

data.title?

#

data.title[0]?

wild mist
#

.then(x => x.) maybe?

coral trellis
#

data[0].title

#

@stark abyss

stark abyss
#

ok

#

ty

#

@coral trellis var response = await fetch(http://api.giphy.com/v1/gifs/search?api_key=[my key here]&limit=1&q=anime_cry)
.then(res => res.json())
.then(res => console.log(res))
.then(data => console.log(data[0].title))
that's what i am doing rn but it's giving me Cannot read property '0' of undefined

#

perhaps fetching is quite different then what i have in mind

coral trellis
#
  var response = await fetch(http://api.giphy.com/v1/gifs/search?api_key=[my key here]&limit=1&q=anime_cry)
    .then(res => res.json())
    .then(res => console.log(res[0].title)) ```
stark abyss
#

oh

#

ok

#

i got an error

lyric mountain
#

If you copy-pasted that just add " around the url

stark abyss
#

yes ofc

#

Cannot read property 'title' of undefined it says

#

i tried everything

#

there are things i don't know about fetch maybe that's my issue

lyric mountain
#

Is it the same as in xig's example?

stark abyss
#

yes

lyric mountain
#

If you do console.log(res) what do you get?

stark abyss
lyric mountain
#

Ah, that's because it ain't res[0].title but res.data[0].title

#

Data is a property of res

stark abyss
#

i have a feeling i tried that aswell but let me try it again

earnest phoenix
#

hey a giveaway bot what tag would it be?

solemn latch
#

giveaways

lyric mountain
#

No you didn't, what you did was .then(data => data[0].title)

#

That ain't the same

stark abyss
#

okay it worked! ty so much

lyric mountain
#

A good way of figuring out how to worj with jsons in imagining a folder system

earnest phoenix
#

@solemn latch in top.gg no found tag giveaway

lyric mountain
#

Data is a folder of res

#

And title is a file inside an unnamed folder inside data

stark abyss
#

i see

earnest phoenix
#

Oi

stable nimbus
#

I'm trying to make my reload command administrative only, meaning select few can use the command, if someone who isn't administrative it errors out and sends an embed, yet I am having difficulties with this, can someone help?

lyric mountain
#

Put allowed ids in an array

#

Then check if the author's id is in the array

#

If not = return

stable nimbus
#

Why didn't I think of that. How would I start it?

const allowedids = [
  "id1",
  "id2",
  "id3"
]```
#

Like this?

lyric mountain
#

Yep

stable nimbus
#

Ayyy!

lyric mountain
#

That or using a db

stable nimbus
#

I don't wanna have to use my database yet, so I'll do this first and see what I can do. Can I put it in a json format any?

lyric mountain
#

Dbs allow u to change the whitelist without shutting down the bot

#

You can

stable nimbus
#

Yeah thats true, I'd need help setting that up because I use MySQL for my database.

lyric mountain
#

It'd be better to use a json array tho

mighty sinew
#

J df jfjd

lyric mountain
#

Instead of a normal json

mighty sinew
#

Sbbsbdheh

#

Gzhshhs

lyric mountain
#

No spam plz

mighty sinew
#

Okie

stable nimbus
#

Plz

earnest phoenix
#

or just

#

use mongo

#

I recommend monk

stable nimbus
#

My hosting provider gives me MySQL, I understand its interface so I can use it.

lyric mountain
#

He said he doesn't want to use a db

earnest phoenix
#

ah

#

but why?

#

JSON has tiny limits

stable nimbus
#

I will if I have to if it makes my life easier.

earnest phoenix
#

4MB

lyric mountain
#

For a simple ID list it'd be fine

earnest phoenix
#

true ig

stable nimbus
#

I'm only using 3 user ID's

earnest phoenix
#

you will have more data down the road

#

though

stable nimbus
#

Thats like what, .25 kb?

#

I know.

#

Eventually I will but for now I am happy with what I have.

earnest phoenix
#
client = commands.Bot(command_prefix = 'b' or 'B')
``` is there a way i can do something similar to this?
#

My bot already used 10KB of JSON at 25 guilds

solemn latch
#

Its a reload command is just bot admins typically tho

stable nimbus
#

100+ here.

lyric mountain
#

That's very little actually

earnest phoenix
#

nice

#

ik thats the point Kuu

stable nimbus
#

I'm at 160 almost.

earnest phoenix
#

if I had 10000 guilds it would he well over 4MB

#

how do you promote your bot?

lyric mountain
#

The real issue about json is the fragility of data and IO speed

earnest phoenix
#

just time?

#

or daily bumps or something else

stable nimbus
#

Yeah,

lyric mountain
#

For me it was time

stable nimbus
#

How would I array this in json?

earnest phoenix
#

okay

lyric mountain
#

And lot of mouth advertising

earnest phoenix
#

oof

stable nimbus
#

Mine is because I made something useful.

lyric mountain
#

How would I array this in json?
@stable nimbus just like a common array

#

[id1, id2, id3]

earnest phoenix
#

client = commands.Bot(command_prefix = 'b' or 'B')
is there a way i can do something similar to this?

stable nimbus
#
{
[id1, id2, id3]
}```
#

Like that?

lyric mountain
#

No

#

You don't need brackets

stable nimbus
#

Oh.

delicate shore
#
    const pat = new Discord.MessageEmbed()
    .setColor("#7289DA")
     .setAuthor(bot.user.tag, bot.user.displayAvatarURL())
      .setDescription("Become a Patreon To Unlock Exclusie perks")
    .addFied("Before Becoming Patreon Join Here" , "Link")
    .addField("Become A Patreon" , "Link")
    .setFooter("Pls Support lol")
    msg.channel.send(pat);
  };```
lyric mountain
#

client = commands.Bot(command_prefix = 'b' or 'B')
is there a way i can do something similar to this?
@earnest phoenix prefix.toLowerCase()

delicate shore
#

Is it correct ?

#

Becuase it's not working

earnest phoenix
#

could you explain a bit more?

delicate shore
#

It says nothing when someone does s!patreon

earnest phoenix
#

if it isnt working then it isn't correct

#

lol

delicate shore
#

Lmao

#

Then what do I have to change ?

lyric mountain
#

If you want to make the prefix case-insensitive then all you need to do is make it lowercase or uppercase

earnest phoenix
#

debug your code

#

we can't do it for you

delicate shore
#

:(

stable nimbus
#

Are you using v11 or v12?

delicate shore
#

V12

stable nimbus
#

Thats my question

#

Yeah its not MessageEmbed anymore.

delicate shore
#

what

#

I have other embed

#

Working with sane code

#

Same£

stable nimbus
#

RichEmbed i mean.

delicate shore
#

RichEmbed

#

Lol

stable nimbus
#

I read something wrong I be BLIIIIND

earnest phoenix
#

just use an object smh

delicate shore
#

He be reach tho

earnest phoenix
#

{embed:{...}}

delicate shore
#

Rich

earnest phoenix
#

debug 👏 your 👏 code 👏

#

you could've already finished

delicate shore
#

So will it be
if(command === "patreon"){
const pat = new Discord.MessageEmbed()
.setColor("#7289DA")
.setAuthor(bot.user.tag, bot.user.displayAvatarURL())
.setDescription("Become a Patreon To Unlock Exclusie perks")
.addFied("Before Becoming Patreon Join Here" , "Link")
.addField("Become A Patreon" , "Link")
.setFooter("Pls Support lol")
msg.channel.send(pat);
};

earnest phoenix
#

try it and see

grizzled raven
#

read the error

stable nimbus
#
execute(message, args) {
        if(message.author.id = ownerid){
            if (!args.length) return message.channel.send(`You didn't pass any command to reload, ${message.author}!`);
        const commandName = args[0].toLowerCase();
        const command = message.client.commands.get(commandName)
            || message.client.commands.find(cmd => cmd.aliases && cmd.aliases.includes(commandName));```
When seeing if the user ID is useable, is this the correct way to do it or do I need to do something else?
grizzled raven
#

man this is like "spot the difference" but the "difference" is the mistake

#

anyway, its always cool to double check your code and what you've actually written

#

= is for assigning, == and === is for checking

stable nimbus
#

Thanks.

#

Finally it works, thank you @grizzled raven, I don't know why on earth I forgot how many = it was for assigning and checking.

earnest phoenix
#

So, we are facing some problems in Shard 1, commands are not working, how to fix that, lib: discord.py

dusk sphinx
#

How to make the bot online in 24/7

marble geode
#

@dusk sphinx if you hosting in glitch use google script

dusk sphinx
#

If i want to add more command what symbol do i have to use

summer torrent
#

what

spare mirage
#

uhh is this a bug or is it cursed because im running the bot on this pc?

crimson vapor
#

no, your ping command is not written correctly

spare mirage
#

is has to be

crimson vapor
#

what do you mean?

spare mirage
#

yesterday it worked perfect

#
    .setColor('#d29e04')
    .setTitle('Ping :banana:')
    .setAuthor('Banana')
    .setDescription(':ping_pong: Pong!')
    .addField("Your ping is `" + `${Date.now() - message.createdTimestamp}` + " ms`", 'bananas')
    .addField('ur dinner today', 'bananas', true)
    .setTimestamp()
    .setFooter('Justii :3')```
crimson vapor
#

im not sure

delicate shore
#

Guys can you give me suggestions?

#

Should I shift to python?

crimson vapor
#

I send a message then edit it and time how long it takes

spare mirage
#

no @delicate shore

lusty quest
#

the negative ping is a bug. Happens usually if you have the Discord Client and the Bot on the same machine

spare mirage
#

ill try my chromebook

crimson vapor
#

oh, I did not know that

delicate shore
#

@lusty quest what you. Use

#

Python or js

lusty quest
#

D.js

delicate shore
#

it's easier right ?

#

@crimson vapor you?

lusty quest
#

compared to?

spare mirage
#

py

delicate shore
#

Python

lusty quest
#

more or less equal

spare mirage
#

ill try my chromebook
still negative

delicate shore
#

Ok

crimson vapor
#

I do not know python and have not tried it

lusty quest
#

i started some python bcs i want to get into ML with it

delicate shore
#

ML?

lusty quest
#

@spare mirage i never tested it but could also be possible that it affects the same network. did you got a Friend on the discord to run the command?

#

Machine learning

delicate shore
#

Ok

spare mirage
#

can u test?

lusty quest
#

sure

spare mirage
#

dms

spare mirage
#

quick question is using nodemon a good idea?

solemn latch
#

Nodemon is used by a lot of people

#

It has over 2 million downloads a week

spare mirage
#

but do I use it xD

#

it restarts ur bot automaticcally after u make changes

topaz fjord
#

try pm2

spare mirage
#

Ill pass.
restarting the bot manually isnt a big deal if u just use it on 1 server

strong tundra
#

i'd use pm2

surreal field
#

nvm found a SO question for it

spare mirage
#

this is a better image ^

solemn latch
#

Put the image in an embed

spare mirage
#

good idea!

#

shoulve known after I used dank memer

earnest phoenix
#

s

regal raven
#

Python or js
@delicate shore I use python cuz It's easier 🙂

blazing ravine
#

using invite tracker but showing missiong permission error ?
i give all permissions

lusty quest
#

did the role the bot has got the permission manage Guild?

blazing ravine
#

bot is in 32 guilds

lusty quest
#

its possible that the bot doesnt got the Permission in certain guilds

#

make a check that skip those guilds

blazing ravine
#

how do u can help me pls

lusty quest
#

you know what permission you need for this?

blazing ravine
#

nop

lusty quest
#

would guess manage guild

blazing ravine
#

for skip guild no

lusty quest
#

then just check if your bot has the permission in the guild. if no return

blazing ravine
#

oh okay

lusty quest
#

since you run a Loop it will skip the guilds that dont give the permissions

blazing ravine
#

i understand my english is bad sorry ❤️

delicate shore
#
if(command === "purge") {

    const deleteCount = parseInt(args[0], 10);
   
    if(!deleteCount || deleteCount < 2 || deleteCount > 100)
      return msg.reply("Please provide a number between 2 and 100 for the number of messages to delete");
    
  

    const fetched = await msg.channel.fetchMessages({limit: deleteCount});
    msg.channel.bulkDelete(fetched)
      .catch(error => msg.reply(`Couldn't delete messages because of: ${error}`));
  };```
#

See code is correct but this happens

lusty quest
#

im not sure if you need to convert it to a Number.

delicate shore
#

Wot?

lusty quest
#

im not sure if you need to convert it to a number

delicate shore
#

so i dont want fetched?

blazing ravine
#

if u want i can give u mine

lusty quest
#

?

blazing ravine
#

im using with args xd

delicate shore
blazing ravine
#
if (!args[1])
          return msg.channel.send(
            "❌"
          );
        msg.channel.bulkDelete(args[1]).then(() => {
          msg.channel.send(`**__Cleared ${args[1]} messages.__**`);
        });```
delicate shore
#
if(command === "purge") {

    const deleteCount = parseInt(args[0], 10);
   
    if(!deleteCount || deleteCount < 2 || deleteCount > 100)
      return msg.reply("Please provide a number between 2 and 100 for the number of messages to delete");
    

    msg.channel.bulkDelete(deletecount)
      .catch(error => msg.reply(`Couldn't delete messages because of: ${error}`));
  };```
spare mirage
#

@regal raven Python is not "easier" its what u started with

delicate shore
#

Is this correct

spare mirage
#

is that a purge command?

delicate shore
#

yes

blazing ravine
#

@lusty quest

regal raven
#

@spare mirage I started with javascript 😐

spare mirage
#

:/

lusty quest
#

?

blazing ravine
#

how i give perms in bot.on ready

delicate shore
#
if(command === "purge") {

    const deleteCount = parseInt(args[0], 10);
   
    if(!deleteCount || deleteCount < 2 || deleteCount > 100)
      return msg.reply("Please provide a number between 2 and 100 for the number of messages to delete");
    

    msg.channel.bulkDelete(deletecount)
      .catch(error => msg.reply(`Couldn't delete messages because of: ${error}`));
  };```
#

it this correct

lusty quest
#

test it

blazing ravine
lusty quest
#

you need to check the guild member not client member

#

guild.me should return the member object of the bot

#
 if (!guild.me.hasPermission(['MANAGE_CHANNELS'])) return
#

as example

spare mirage
#

how does an command holder work?

feral aspen
#

Greetings Coders.

#

On the edit page in your bot's page.

#

I decided to add a picture.. so question! Should I add the picture from my computer or from online?

spare mirage
#

computer

#

wouldnt really matter

#

tbh

#

and u need to add the picture at the "bot

feral aspen
#

for example..

spare mirage
#

?

feral aspen
#

it doesnt show a picture, it shows the alt only.

#

how can I fix this problem?

#

so?

blazing ravine
#

;/

spare mirage
#

@feral aspen u can just let the bot send the image link

feral aspen
#

No.. I dont want to add the picture in the bot.. I want to add it on my bot's top.gg webpage.

spare mirage
#

add it from youre computer

lusty quest
#

Sry cant help you rn that much my internet died

spare mirage
#

image(message);

    .setColor('#0099ff')
    .setTitle('Image')
    .setDescription('Some description here')
    .addField(image(message))', 'Banana', true)```
#

will the .addField(image(message) work?

#

my command is image(message)

#

lol lets just try it

#

this is spamming images :/

blazing ravine
#

i need code

#

for skip

#

but i dont know

earnest phoenix
#

which code

blazing ravine
#

in bot.on ready async

#

when bot start everytime fetchign invites fro mguild

earnest phoenix
#

yup

blazing ravine
#

but if in one guild

#

bot dotn have permission

#

givign error

#

my bot is in 32 guild

#

i need skip the guild wh odont have permission

earnest phoenix
#

umm

#

that doent matter

blazing ravine
#

but idk how to make it in client.on("ready")

earnest phoenix
#

its is easy thou

blazing ravine
#

can u help me pls im tryign 2,3 hours and xd didnt make

earnest phoenix
#

if client dont have perms manage server then return

#

else

#

fetch invites

#

simmple

blazing ravine
#

bot.ready not work message / msg

spare mirage
#
    const embedimage = new Discord.MessageEmbed()
    .setColor('#0099ff')
    .setThumbnail(image(message))
    .setTimestamp()

    if (message.content.startsWith("@silk moat")) message.channel.send(`Hi! My  prefix here is **${PREFIX}**`); 
    else if (message.content.startsWith(PREFIX + "image")) channel.send(embedimage)
}); // commands```
why does this just send the image link?
blazing ravine
#

for make if msg.member.haspermission

earnest phoenix
#

you have to do

#

wait

#

i give code

finite bough
#

the bot doesnt have the permission

blazing ravine
#

thank u very much

finite bough
#

and

#

how are u getting "msg"

spare mirage
#

?

blazing ravine
#

idk

#

im waiting for the code

finite bough
#

@spare mirage show me where u defied image

blazing ravine
#

// A pretty useful method to create a delay without blocking the whole script.
const wait = require('util').promisify(setTimeout);


  bot.on("ready", async () => {
    
      wait(1000);

  // Load all invites for all guilds and save them to the cache.
  bot.guilds.cache.forEach(g => {
    g.fetchInvites().then(guildInvites => {
      invites[g.id] = guildInvites;
    });
      });``` @earnest phoenix  if u want the code
finite bough
#

yes now check if the bot had permission to do so

spare mirage
#
    var options = {
        url: "http://results.dogpile.com/serp?qc=images&q=" + "bananas",
        method: "GET",
        headers: {
            "Accept": "text/html",
            "User-Agent": "Chrome"
        }
    };

    request(options, function(error, response, responseBody) {
        if (error) {
            return;    
    } 
    
    
    $ = cheerio.load(responseBody);
 
 
    var links = $(".image a.link");

    var urls = new Array(links.length).fill(0).map((v, i) => links.eq(i).attr("href"));
   
    console.log(urls);

    if (!urls.length) {
       
        return;
    }

    // Send result
    message.channel.send( urls[Math.floor(Math.random() * urls.length)]);
});
``` its an api sooo
#

ill use hastebin next time lmao

earnest phoenix
#

@blazing ravine
do

if (!client.guild.me.hasPermission("MANAGE_SERVER"))
{
  console.log(`dont have perms`);
  return
}
else {
  // Load all invites for all guilds and save them to the cache.
  bot.guilds.cache.forEach(g => {
    g.fetchInvites().then(guildInvites => {
      invites[g.id] = guildInvites;
    });
finite bough
#

I have never seen a beginner use an api ngl

earnest phoenix
#

@earnest phoenix use bot or client

spare mirage
#

:P

earnest phoenix
#

your wish

blazing ravine
#

ok let me try

finite bough
#

@earnest phoenix spoon feeding is not allowed :/

earnest phoenix
#

@finite bough bruh

#

i like to help

finite bough
#

u are not helping

spare mirage
#

Help him by making hints

#

thats how people help me

finite bough
#

^

earnest phoenix
#

i help in my own way

#

any prob?

spare mirage
#

that doesnt help

#

it helps the bot

#

not ur brain

finite bough
#

we are not complaining

#

it's a server rule

spare mirage
earnest phoenix
#

next time i give hint ok?

spare mirage
#

ok 👍

#

@finite bough do u know why my embed isnt working?

finite bough
#

is it spamming

#

?

earnest phoenix
#

any error?

blazing ravine
#

not work xd

spare mirage
#

if I make the embed use
.setField it will spam

blazing ravine
#

not starting bot.js

earnest phoenix
#

@blazing ravine any error?

blazing ravine
#

nop

earnest phoenix
#

bruh

#

that impossible

#

not give error

#

see in terminal

blazing ravine
#

not givign error

spare mirage
#

and if I use .setThumbnail it will just send a link without an embed

#

@finite bough

blazing ravine
#

lets try with other way wait

#

i give u other code

earnest phoenix
#

@blazing ravine give ss for terminal

finite bough
#

wut

#

wait

earnest phoenix
#

@earnest phoenix

#
  • <--- this common prefix
blazing ravine
earnest phoenix
#

um

#

its ready?

blazing ravine
#

@earnest phoenix lets make like this get the guild in from wchan data base and foreach get invites idk u understand

#

no*

#

take the code

finite bough
#

@spare mirage when it spams does it have the image?

earnest phoenix
#

first of all i dont about heroku

#

it dont give errors

#

idk

spare mirage
#

yes

#

but not an embed

#

:/

finite bough
#

a

spare mirage
#

just the link

earnest phoenix
#

@spare mirage can you give spamming img

#

ss

blazing ravine
#

@earnest phoenix lets make to fetch the invites from database wchan guild id

#

its possible ?

earnest phoenix
#

you cant use database on heroku

spare mirage
blazing ravine
#

im using

#

all work

#

xd

spare mirage
blazing ravine
#

but missing permisison

#

in fetch invites

#

;d

finite bough
#

well the only reason i can think of is the image is bigger than an embed's parameters

#

wait

#

@spare mirage ur 1st code only sends the link

#

coz it has no embed

spare mirage
#

ok

#
    .setColor('#0099ff')
    .addField(image.message)```
#

do u mean this code?

finite bough
#

nono

#

the image fetching code

spare mirage
#

yes it does

finite bough
#

it has message.channel.send(url...)

spare mirage
#

uhh

#

    var urls = new Array(links.length).fill(0).map((v, i) => links.eq(i).attr("href"));
   
    console.log(urls);

    if (!urls.length) {
       
        return;
    }

    // Send result
    message.channel.send( urls[Math.floor(Math.random() * urls.length)]);```
finite bough
#

yea

#

last line

#

^

#

it is sending a random image as a link not an embed

spare mirage
#

but you can do the image(message)
in an setThumbnail() right?

lost herald
#

do bots have slowmode bypass by default or do they need perms?

spare mirage
#

they need admin

#

(I think)

earnest phoenix
#

@spare mirage do you want to set banana img in embed

lost herald
#

scam lol

spare mirage
#

? wdym legend

earnest phoenix
#

@lost herald maybe depend on perms

finite bough
#

@lost herald perms

lost herald
#

ok

earnest phoenix
#

@spare mirage what you want to do with banana img

spare mirage
#

just give them a role that bypasses that

finite bough
#

the thumbnail has to be a url

spare mirage
#

in an embed do I only see the image

#

and not the url

finite bough
#

yes

spare mirage
#

like dank memer has with pls otter

#

but banans

finite bough
#

it doesnt show the link

#

the link is in a different field

spare mirage
#

hmm

earnest phoenix
#

Do . setimage (''imgurl")

left delta
#

Non-verified bots cannot use Js
but can we use an Iframe
to display the java script in the website

spare mirage
#

So... .setimage(image(message)) will work?

left delta
finite bough
#

@left delta is there a problem with it?

earnest phoenix
#

What image(messgae) means

finite bough
#

json format get pull ig

earnest phoenix
spare mirage
#

@earnest phoenix its a fuction

earnest phoenix
#

Ok

golden condor
spare mirage
#

this is code for cheerio api if u want to search images on google

    var options = {
        url: "http://results.dogpile.com/serp?qc=images&q=" + "bananas",
        method: "GET",
        headers: {
            "Accept": "text/html",
            "User-Agent": "Chrome"
        }
    };

    request(options, function(error, response, responseBody) {
        if (error) {
            return;    
    } 
    
    
    $ = cheerio.load(responseBody);
 
 
    var links = $(".image a.link");

    var urls = new Array(links.length).fill(0).map((v, i) => links.eq(i).attr("href"));
   
    console.log(urls);

    if (!urls.length) {
       
        return;
    }

    // Send result
    message.channel.send( urls[Math.floor(Math.random() * urls.length)]);
});```
finite bough
#

yes

#

so

#

the code is sending a random url each time

golden condor
#

Scraping is against tos

#

Of Google

spare mirage
#

shh

#

just dont tell the google police

golden condor
#

Not my problem when you get IP banned from Google when they detect suspicious activity from your computer

earnest phoenix
#

Lmao

spare mirage
#

I'lll use bing lmao
the new microsoft edge is kinda good

#

@finite bough how do I fix this

the code is sending a random url each time

finite bough
#

when u are setting the image using a function

#

it runs the function

#

so

#

instead of getting an url

#

u are getting messages

spare mirage
#

I understand

finite bough
#

so remove message channel send bla bla and return only the link in the function

spare mirage
#

uhhh

#

do I delete this // Send result message.channel.send( urls[Math.floor(Math.random() * urls.length)]);

lost herald
#

is it a good idea to send a message on server join with some commands? if so how would i know which channel to send it in (python)

earnest phoenix
#

Eval cmd @_@

lost herald
#

Eval cmd @_@
me?

earnest phoenix
#

Yup

finite bough
#

@spare mirage if u delete it, it will not do anything

lost herald
#

so like eval(guild) lmao

earnest phoenix
#

Umm no

finite bough
#

@lost herald no it's not

#

many people find it annoying

earnest phoenix
#

Client.channels.chache.get(channelid).send(msg)

spare mirage
#

what my brain is dying

lost herald
#

but like what code do i use to get the best channel id or object

#

i go through from top to bottom til i find one that works?

earnest phoenix
#

Why you want to do this?

finite bough
#

bots have admin

#

so every channel works

earnest phoenix
#

Yup

lost herald
#

a lot of people kick the bot within minutes cuz no idea how it works

earnest phoenix
#

Even if it is hidden from normal users

lost herald
#

my bot is only meant to have send messages perm

finite bough
#

then make a ping help

#

like

#

@finite bough

lost herald
#

i guess

finite bough
#

hello there my prefix is %

earnest phoenix
#

@lost herald what your bot do

lost herald
#

covid stats

#

lol

finite bough
#

BRAH

earnest phoenix
#

Rip

lost herald
#

so i only ask for send message and embed link perms

#

so it tends to not work on new servers cuz people have no idea how to use it

spare mirage
#

@finite bough do I make the embed there? blablbabla.send EMBEDSTUFF

earnest phoenix
#

I have made ping help like
If(msg.content === "<@!botid>")
Msg.channelsend(help)

finite bough
#

u can do

spare mirage
#

but will it work

earnest phoenix
#

@finite bough how you made ping help

finite bough
#

u dont have to make it a separate function and put it inside the message event

#

@spare mirage

earnest phoenix
#

@finite bough like?

finite bough
#

@earnest phoenix if message has <@!bot.id> || <@botid>

earnest phoenix
finite bough
#

or another stupid way is

earnest phoenix
#

🤔

finite bough
#

getting mentions

earnest phoenix
#

Lol

finite bough
#

in a message

earnest phoenix
#

If mention = botmention

#

Lol

spare mirage
#

  
    const embedimage = new Discord.MessageEmbed()
    .setColor('#0099ff')
    .setTitle("Look at that banana boi")
    .setimage((urls[Math.floor(Math.random() * urls.length)]);)

    

    // Send result
    message.channel.send(embedimage);
});
earnest phoenix
#

Rip

finite bough
#

and then checking if the user I'd === bot id

#

ye

spare mirage
#

how bout this?

finite bough
#

@spare mirage try

earnest phoenix
#

@spare mirage try

#

Lol

spare mirage
#

pingspa

#

M

finite bough
#

?

earnest phoenix
#

Always try first dude

#

If you get error

#

Then tell

spare mirage
earnest phoenix
finite bough
#

did u save?

earnest phoenix
#

Why this not sending emebed

spare mirage
#

yes i did

finite bough
#

send code

spare mirage
#

I know why its wronng

#

.setimage((urls[Math.floor(Math.random() * urls.length)]))

#

i

#

image

#

:/

earnest phoenix
#

Is you getting problem that it is not sending embed

spare mirage
#
 console.log(urls);

    if (!urls.length) {
       
        return;
    }

    
    const embedimage = new Discord.MessageEmbed()
    .setColor('#0099ff')
    .setTitle("Look at that banana boi")
    .setImage((urls[Math.floor(Math.random() * urls.length)]))

    

    // Send results
    message.channel.send(embedimage);
});

@finite bough heres the code

finite bough
#

u have a code where its sending the link somewhere

spare mirage
#

??

lost herald
#

i chopped off a bit at the end oop

finite bough
#

where is it sending that

lost herald
#

dms if it can otherwise in the channel

#

i can inverse it tho

finite bough
#

I dont recommend it but ok looks good

spare mirage
#

WHy am I even wasting my time on this

#

its just an link

finite bough
#

xd

spare mirage
#
function image(message){
    var options = {
        url: "http://results.dogpile.com/serp?qc=images&q=" + "bananas",
        method: "GET",
        headers: {
            "Accept": "text/html",
            "User-Agent": "Chrome"
        }
    };``` 
@finite bough do u have an idea on how I can make a command: !image [WHAT IMAGE U WANT TO SEARCH]
#

that will be more usefull lmao

#

U have to change "bananas"

finite bough
#

let args = message.content.join(" ")

#

then

#

if args[1] == banana

#

send banana

spare mirage
#

what if I want to be able to search everything

#

like !image cookies

#

!image patatoes

finite bough
#

use some kind of api ig

spare mirage
#

etc

finite bough
#

should be easier that way

earnest phoenix
#

who can help me please

spare mirage
#

ok ill try for another api

finite bough
#

@earnest phoenix with?

earnest phoenix
#

i will when i say " @knotty oracle " he send to me help message

pure saddle
#

de-profile

finite bough
#

@knotty oracle

#

not for me

earnest phoenix
#

yes i dont know what is the error

#

i want he do that

#

@knotty oracle

hushed zodiac
#

Hey guys.
I have a question. I am currently working on an oauth2 for the webinterface (https://pwi.progen-bot.de) my bot Progen written in JDA. Which I don't quite understand. What exactly is the "code" that needs to be authorised? Can anyone help me?

#

yes i habe read the docs xD no idea it I have overlooked anything

spare mirage
#

@finite bough will something like this work?

function image(message, parts) {
 
    
 
    var search = parts.slice(1).join(" "); 
 
    var options = {
        url: "http://results.dogpile.com/serp?qc=images&q=" + search,
        method: "GET",
        headers: {
            "Accept": "text/html",
            "User-Agent": "Chrome"
        }
    };
    request(options, function(error, response, responseBody) {
        if (error) {
            // handle error
            return;
        }
 
        
 
#

lemmy just try

#

lmao

finite bough
#

xD

spare mirage
#

its not random though

#

random was this right?
// Send result
message.channel.send( urls[Math.random(Math.floor() * urls.length)]);

finite bough
#

depends

pure lion
spare mirage
#

oof

granite trout
#

fs.readfile - how to make it read the last 10 characters of a file?

spare mirage
#

let it read the whole file

#

it will read the last 10 characters

#

too

granite trout
#

I only want the last 10

spare mirage
#

uhh then idk

granite trout
#

so when i do this.client.channels.cache.get('xxx').send(readfile); it only sends the last 10 characters of the fs.readfile

slender thistle
#

Do strings support indexing

granite trout
#

nah its txt

pale vessel
#

string.slice(-10)

slender thistle
#

What does txt have to do with what is returned

pale vessel
#
"shivaco x epic 12345".slice(-10); // epic 12345```
spare mirage
#

can someone explain why the bot i am running on my pc is 400ping?

#

or do I connect to discord and back to my pc?

pure lion
earnest phoenix
#

yes

#

here

restive pebble
#

ah

#

it is not an array

pure lion
#

what do

restive pebble
#

how u defined that song

#

songs

pure lion
#

yah?

restive pebble
#

how u defined

#

songs

#

let songs = []?

pure lion
#

ye

restive pebble
#

oh

pure lion
#

and in the queue construct

restive pebble
#

contruct

pure lion
#

songs: []

restive pebble
#

oh ok

pure lion
#

any ideas or am i ffucked

restive pebble
#

wait

pure lion
#

oki

restive pebble
#

it seems correct

#

can i take a look at ur code

earnest phoenix
#
@SirPandaTV, An error occurred while running the command: TypeError: fields.flat is not a function
You shouldn't ever receive an error like this.
Please contact SirPandaTV#3873.```
#

I get this error

restive pebble
#

uh

earnest phoenix
#

When running my play command.

restive pebble
#

uptade ur nodejs version

earnest phoenix
#

Huuh?

#

I made it on glitch

restive pebble
#

u are probably on glitch

#

ik

#

go to package.json

earnest phoenix
#

What / How do I do that?

pure lion
#

can i take a look at ur code
@restive pebble play, stop and skip?

restive pebble
#

under the dependencies object

earnest phoenix
#

O_o?

#

|| I am kinda new ||

restive pebble
#
"node":"12.x"
}```
#

fo it

#

do

#

and it will reinstall all modules

#

and work

#

@restive pebble play, stop and skip?
@pure lion only play ol

#

ok

earnest phoenix
#

In package.json?

restive pebble
#

hyes

pure lion
#

ok ill send the function

restive pebble
#

yes

#

under the dependencies

pure lion
#
function play(guild, song) {

  const serverQueue = queue.get(guild.id)

  if (!song) {
    serverQueue.voiceChannel.leave()
    queue.delete(guild.id)
    return
  }

  const dispatcher = serverQueue.connection.play(ytdl(song.url))
  .on('finish', () => {
    serverQueue.songs.shift()
    play(guild, serverQueue.songs[0])
  })
  .on('error', () => {
    console.log(error)
  })
  dispatcher.setVolumeLogarithmic(serverQueue.volume / 5)
}
earnest phoenix
#
{
  "name": "Beat-Box",
  "version": "1.0.0",
  "description": "a discord music bot with guild , gifs and misc commands",
  "main": "index.js",
  "scripts": {
    "start": "node .",
    "pretest": "eslint --ignore-path .gitignore .",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "SirPandaTV",
  "license": "ISC",
  "dependencies": {
    "@discordjs/opus": "^0.3.2",
    "cheerio": "^1.0.0-rc.3",
    "discord.js": "github:discordjs/discord.js",
    "discord.js-commando": "github:discordjs/Commando",
    "ffmpeg-static": "^2.7.0",
    "iso-639-1": "^2.1.3",
    "simple-youtube-api": "^5.2.1",
    "ytdl-core": "^2.1.5"
  },
  "devDependencies": {
    "@getify/eslint-plugin-proper-arrows": "^8.0.1",
    "@getify/eslint-plugin-proper-ternary": "^3.0.1",
    "babel-eslint": "^10.1.0",
    "eslint": "^5.16.0",
    "nodemon": "^1.19.4",
    "prettier": "^1.19.1"
  }
}
restive pebble
#

oh ok

earnest phoenix
#

@restive pebble

restive pebble
#

i got it

pure lion
#

ooo?

earnest phoenix
#

That is my package.json^

restive pebble
#

ur queuecontruct is empty

earnest phoenix
#

As in what?

pure lion
#

how to put juicy song?

#

idk why i said that

restive pebble
#
  "name": "Beat-Box",
  "version": "1.0.0",
  "description": "a discord music bot with guild , gifs and misc commands",
  "main": "index.js",
  "scripts": {
    "start": "node .",
    "pretest": "eslint --ignore-path .gitignore .",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "SirPandaTV",
  "license": "ISC",
  "dependencies": {
    "@discordjs/opus": "^0.3.2",
    "cheerio": "^1.0.0-rc.3",
    "discord.js": "github:discordjs/discord.js",
    "discord.js-commando": "github:discordjs/Commando",
    "ffmpeg-static": "^2.7.0",
    "iso-639-1": "^2.1.3",
    "simple-youtube-api": "^5.2.1",
    "ytdl-core": "^2.1.5"
  },
  "devDependencies": {
    "@getify/eslint-plugin-proper-arrows": "^8.0.1",
    "@getify/eslint-plugin-proper-ternary": "^3.0.1",
    "babel-eslint": "^10.1.0",
    "eslint": "^5.16.0",
    "nodemon": "^1.19.4",
    "prettier": "^1.19.1"
  }
},
"engines":{
"node":"12.x"
}```
#

paste it

earnest phoenix
#

Done.

#

Now what?

#

"test": "echo "Error: no test specified" && exit 1"

#

Error right there^

#

"engines":{

#

error

restive pebble
#

oh sorry

#

i missed a bracket

#

add a bracket at last

#

pls

earnest phoenix
#

Wot?

pure lion
#

}

#

take

earnest phoenix
#

Confusion...

restive pebble
#
  "name": "Beat-Box",
  "version": "1.0.0",
  "description": "a discord music bot with guild , gifs and misc commands",
  "main": "index.js",
  "scripts": {
    "start": "node .",
    "pretest": "eslint --ignore-path .gitignore .",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "SirPandaTV",
  "license": "ISC",
  "dependencies": {
    "@discordjs/opus": "^0.3.2",
    "cheerio": "^1.0.0-rc.3",
    "discord.js": "github:discordjs/discord.js",
    "discord.js-commando": "github:discordjs/Commando",
    "ffmpeg-static": "^2.7.0",
    "iso-639-1": "^2.1.3",
    "simple-youtube-api": "^5.2.1",
    "ytdl-core": "^2.1.5"
  },
  "devDependencies": {
    "@getify/eslint-plugin-proper-arrows": "^8.0.1",
    "@getify/eslint-plugin-proper-ternary": "^3.0.1",
    "babel-eslint": "^10.1.0",
    "eslint": "^5.16.0",
    "nodemon": "^1.19.4",
    "prettier": "^1.19.1"
  }
},
"engines":{
"node":"12.x"
}}```
#

do this

pure lion
#

:h:

restive pebble
#

yes

earnest phoenix
#

Still an error

restive pebble
#

what

pure lion
#

omg

earnest phoenix
#

Pase error

spare mirage
#

how do I make a custom status like
"currently serving in x servers for x people"

earnest phoenix
#

Nvm

pure lion
#
string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string string 

ted talk^

restive pebble
#

client.user.setStatus(bot.guilds.cache.size)

#

yes dice

earnest phoenix
#

@restive pebble

parse error: Expected value before ',' at line 31, column 2
pure lion
#

how do i put a song into the serverqueue

restive pebble
#

hmm

#

wait

spare mirage
#

@pure lion dms

pure lion
#

aaa

#

uhmmm

#

about that

restive pebble
#

{
"name": "Beat-Box",
"version": "1.0.0",
"description": "a discord music bot with guild , gifs and misc commands",
"main": "index.js",
"scripts": {
"start": "node .",
"pretest": "eslint --ignore-path .gitignore .",
"test": "echo "Error: no test specified" && exit 1"
},
"author": "SirPandaTV",
"license": "ISC",
"dependencies": {
"@discordjs/opus": "^0.3.2",
"cheerio": "^1.0.0-rc.3",
"discord.js": "github:discordjs/discord.js",
"discord.js-commando": "github:discordjs/Commando",
"ffmpeg-static": "^2.7.0",
"iso-639-1": "^2.1.3",
"simple-youtube-api": "^5.2.1",
"ytdl-core": "^2.1.5"
},
"devDependencies": {
"@getify/eslint-plugin-proper-arrows": "^8.0.1",
"@getify/eslint-plugin-proper-ternary": "^3.0.1",
"babel-eslint": "^10.1.0",
"eslint": "^5.16.0",
"nodemon": "^1.19.4",
"prettier": "^1.19.1"
},

"engines":{
"node":"12.x"
}}

#

try this

spare mirage
#

yes

#

about that

pure lion
#

:uh:

#

\😅

earnest phoenix
#
Check /app/package.json: it has syntax errors, install won't proceed.
parse error: Invalid numeric literal at line 9, column 25
parse error: Invalid numeric literal at line 9, column 25```
spare mirage
#

oh no

pure lion
#

```prolog```

#

tf

earnest phoenix
#
Prolog```
restive pebble
#

could u remove the test and pretest

earnest phoenix
#

Remove the what?

pure lion
#
a: aaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaa
restive pebble
#

test object

#

and pretest

#

under start

spare mirage
#

@pure lion are u broke or did u forget

earnest phoenix
#

Online.

spare mirage
#

lmao

earnest phoenix
#

Let me test the play command.

#

brb

restive pebble
#

@pure lion do this

pure lion
#

are u broke or did u forget
@spare mirage 3

#

do this
ctrl a + backspace

spare mirage
#

lmaooo

pure lion
#

!aaaa

#

?role

slender thistle
#

What are you doing

pure lion
#

idk

#

last time i did !role i was dmed

slender thistle
#

-botcommands

gilded plankBOT
#

Hey! Bots aren't given permissions to send responses in this channel. Please use #commands or #265156322012561408 to run commands. In addition, bots with commonly used prefixes cannot read or send messages in any channel. This is done to prevent spam and bot abuse.

restive pebble
#

if(!serverQueue){
const queueConstruct={
songs:[]
}
serverqueue.set(queueConstruct)
}

#

try thus

pure lion
#

but its fine i sorted it

restive pebble
#

try that

pure lion
#

if(!serverQueue){
const queueConstruct={
songs:[]
}
serverqueue.set(queueConstruct)
}
mkay

restive pebble
#

i may have typos

slender thistle
#

spoonfeed time

restive pebble
#

repair it

pure lion
#

:D

restive pebble
#

my spelling bad

#

this support is fun

pure lion
#
      if (!serverQueue) {
        const queueContruct = {
          textChannel: msg.channel,
          voiceChannel: voiceChannel,
          connection: null,
          songs: [],
          volume: 5,
          playing: true
        }
        queue.set(msg.guild.id, queueContruct)

this was already in-