It's because of people like you that coding has become so accessible and exciting for new programmers! The work you do is extremely valuable and is appreciated. You have such a contagious passion for programming and teaching. Your attitude and methodology are super beginner-friendly. Because of you, my 9 yr old cousin decided to begin learning programming. I, and the programming community as a whole, cannot thank you enough for all the hard work you do.
I don't know what I'd like to see in the bot, but hopefully it gets turned into an actual usable something, rather than a bunch of examples tied together. I started my nodejs journey with your old discordjs tutorial. I can now use express, mongodb, and make backends. Couldn't have done it without you telling me what nodejs is! I learned all of programming by watching your coding challenges. Right now I think weird that you don't use anonymous functions, but it was so worth it when I was just getting started.
I love you man, you are a code genius, you are super motivational, I wanna be so good as you 🥹 I love how you think, your style, keep up the amazing work
@@Snail641 yeah but I am never the type who is not interested in knowing the behing and the how :D if I wanna work fast yeah sure I can use chatGPT but for me this is not the point. Its like something else live your life... or something else playing instead of you, something eating instead of you :D
jeeze, you made 5 videos in a row??? OO My bot is made from a arm load of your old videos and the new js instructions before this video LOL it's such an over complicated looking mess compared to this one LOL i have the sub folders from the instructions and everything, and it does read ever message, i still only registered the ping/pong for slash builder, the rest i put into "event" -messageCreate, then 26 arrays to sort thru players and battlefield server stats , and tell me thing i'd find odd as an admin, such as over %100 accuracy on any weapon, ignore shotguns, grenade,snipers rifles, and gadgets . these are incredibly fun bots
Not that it matters now, but I figured out why cowsay wouldn't work for me. Apparently the examples show a bunch of options to control it, but the real interface is just using the command line switches, even as a function call. One of these days I may finally join Discord, but for now I'm content with IRC.
Please can you make a tutorial on using path finding a* pathfinding on maze generation script , I saw both the videos but I don't know how to join both these concepts
Thankyou once again for great content. one thing am confused on is in your code wy do we need to wait for the promise to be fulfiiled in, await interaction.reply, if the code is not doing anything after it then cant we just call the reply method and forget about it instead of waiting for it to be finished ?
First of all, I love your book. Second of all, there's a small mistake in the book. Small typo at figure 3.2, you accidentally wrote 3.3 instead of 3.2 :)
wow man! you are the most energetic guy i love that! man! i hope you read this and if you are i just want to say, that you made me cry from how nice you are man i really hope you get the best life man, love your vids and love youre energy omg im actually so happy for you!
my bot is so overfly filled, i wanted to pull the stats part out for my webpage server you showed how to make. i can't even get it back out yet lol I've tried, i can't hardly figure my own bot back out lol
This has been very good so far but I have a question about the order of execution. How does the client.once still execute after the client.login()? Shouldn’t the client.login() method be called first then the client.once() method?
client.once actually attaches a function that gets run when a certain event is fired. In this case it's the clientReady event that we're listening for. The login method however starts the login process of the bot. Once it's done, discord will fire the clientReady event and then discord.js forwards that event to all the listeners that are listening to that event. In this case our readyDiscord function!
the client.once doesn't run in the order it is written in the code! It is more like "hey discord.js, run this readyDiscord function once the bot logs in", and you need to tell it that, before actually logging in!
@@DipamSen This exactly :) it sorta makes sense in the name too, we're saying 'once EVENT, do this', and while it might not make sense for logging in, it is the general pattern for things like this, so we can tell the bot the reaction it should have upon a certain event, even if we don't have a line of code that explicitly causes that event (like with logging in)
Hey Dan, when node gives me a "MODULE_NOT_FOUND" error, what should I do? should I re-install node or npm? It's been like this for a while now and whenever I use a npm package or dotenv it gives me the error.
Dan's work will leave the same legacy as the great thinkers and doers from centuries past. The only difference is, Dan is 100x more funny than those dudes.
I'm not really sure why you'd do this? Frameworks are there to provide abstractions around the api. The Discord api is a pretty complicated thing and you'll probably end up writing your own abstractions around it anyways. While discord.js is a pretty beefy framework, there are more lightweight alternatives out there!
Hi, I followed the steps in the video. But I couldn't get my server, the one I newly created switched on. I followed all the steps. 1. Set up a new application using Discord Developer Portal. Used the client ID and auth token. 2. Created the new server using 'Add server' from my account. Enabled Developer mode. 3. Created Server from generator URL. Yet the server is not switched on. Can anyone help with this?
one should be so inclined as to visit the "Working with Data and APIs in JavaScript" playlist tag on the end. he covers a lot of remote hosting playlists, but this playlist mentions my favorite local recommendation which after enough of his videos, it' a light bulb over the head coming on when he says it. and i will be using it for many many projects later. and he put it on the end on this video. more like the 1 candle to light a million. Buddhism "Thousands of candles can be lighted from a single candle, and the life of the candle will not be shortened. Happiness never decreases by being shared." it was like a million light bulbs and just me tho.
oh no, i'm no spoiler this playlist will blow your mind. he has a free option lol i used up my credit during corona for the folding@home. he has the most amazing free option ever. i had a 3 day thing with xfinity to get a new router over it lol it's such a case, most everything he does also fits this convenient solution. i was upset i used every free credit i had on every platform, until you realize what Shiffman has already been having you do this entire time. it's like million light bulbs. the credits go much further, those are mainframe cpu's which means you can have42-125 cores and tb of ram if you want. the have the big ones. i was cpu mining for curecoin lol @@mthia
I love the vids, but this approach doesn't seem proper to me. If the actual logic of what happens upon a command is handled in bot.js upon receiving the interaction, and it only checks the name, then why are we putting the commands in separate files? Won't all of these files have (almost) identical contents, with the actual differing logic being contained in bot.js with a big if-else block? Just seems like unnecessary boilerplate and an antipattern to me.
What's the deal with this "Discord"-Thing? Is there anything substancial I can learn from it? A random bot for a random service which is probably bought by a billionaire, renamed to "Y" and from then on dying within the next 2 years? Where is the entertaining, inspiring Shiffman, teaching creative and substantial things I can use for the rest of my programmer-life?
It's because of people like you that coding has become so accessible and exciting for new programmers! The work you do is extremely valuable and is appreciated. You have such a contagious passion for programming and teaching. Your attitude and methodology are super beginner-friendly. Because of you, my 9 yr old cousin decided to begin learning programming. I, and the programming community as a whole, cannot thank you enough for all the hard work you do.
Schiffman and Angela Yu gave me what i needed to actually program, which seemed impossible to me before.
Who needs (or wants) a written guide when there is Dan Shiffman to bring that guide to life?!?!?!
that being said, I love that there is a written guide and thank you for doing that Dan and Coding Train Crew.
When you say "this bot" I hear the *this. song* 😂
Seeing this at the start of the video. Thank you for this I love that song! Lol 😂
i made a wordle discord bot a year ago. your video motivated me to update the dependencies.
i grew up on this guy its almost a decade of engineering thanks man I appreciate you
Just found your channel! How have I not known of you before! Amazing and thanks for all your work and energy! Diving in to all your tutorials.
Awesome demo! Thank you, this will spice up my Star Wars TTRPG Discord Server nicely. Anxiously awaiting the hosting video
It's the stuttering and tripping over things we love and that makes you human, alive and loveable! Keep on being you!
Awesome tutorial! Would love to see a Slack tutorial in the future! Keep up the amazing work :)
Your teaching capabilities are extensively great!
I don't know what I'd like to see in the bot, but hopefully it gets turned into an actual usable something, rather than a bunch of examples tied together.
I started my nodejs journey with your old discordjs tutorial. I can now use express, mongodb, and make backends. Couldn't have done it without you telling me what nodejs is! I learned all of programming by watching your coding challenges. Right now I think weird that you don't use anonymous functions, but it was so worth it when I was just getting started.
applications.commands isn't needed anymore, if you selected bot also. They included commands into bot a long time ago.
I love you man, you are a code genius, you are super motivational, I wanna be so good as you 🥹 I love how you think, your style, keep up the amazing work
Chatgpt can write this in 5 seconds
@@Snail641 Thanks to all the efforts people like him have done until now
@@Snail641 yeah but I am never the type who is not interested in knowing the behing and the how :D if I wanna work fast yeah sure I can use chatGPT but for me this is not the point. Its like something else live your life... or something else playing instead of you, something eating instead of you :D
jeeze, you made 5 videos in a row??? OO My bot is made from a arm load of your old videos and the new js instructions before this video LOL it's such an over complicated looking mess compared to this one LOL i have the sub folders from the instructions and everything, and it does read ever message, i still only registered the ping/pong for slash builder, the rest i put into "event" -messageCreate, then 26 arrays to sort thru players and battlefield server stats , and tell me thing i'd find odd as an admin, such as over %100 accuracy on any weapon, ignore shotguns, grenade,snipers rifles, and gadgets . these are incredibly fun bots
Not that it matters now, but I figured out why cowsay wouldn't work for me. Apparently the examples show a bunch of options to control it, but the real interface is just using the command line switches, even as a function call. One of these days I may finally join Discord, but for now I'm content with IRC.
Please can you make a tutorial on using path finding a* pathfinding on maze generation script , I saw both the videos but I don't know how to join both these concepts
I'm not even interested in writing a discord bot, I'm just here for Dan :D
Thankyou once again for great content. one thing am confused on is in your code wy do we need to wait for the promise to be fulfiiled in, await interaction.reply, if the code is not doing anything after it then cant we just call the reply method and forget about it instead of waiting for it to be finished ?
Thank you Sir !! God bless You !! i like the way how you teach !!
I made a discord bot that prints a shirt with an image you upload, let you buy it and then it get delivered to your house :)
That's really cool!
Cool!
im going to commit copyright infringement on Disney with your bot
Hello, Would be great a video tutorial on Quaternion, Rotation stuff is really confusing to get.
For some reason, I have to hit enter twice for the /choochoo command to work. Love your videos Dr. Shiffman!
Probably the first time to select the command, and then again to run it! Discord is a tad bit weird sometimes
can you make one with options that sends a text reply with the answers of the options?
an actual saint of a man
Truly one of the best educators of our time.
when will we see your next video?
instead of slash commands how do you get a user message and make the bot reply to it (like the client.on message )
Super ultra helpful😮
First of all, I love your book. Second of all, there's a small mistake in the book. Small typo at figure 3.2, you accidentally wrote 3.3 instead of 3.2 :)
wow man! you are the most energetic guy i love that! man! i hope you read this and if you are i just want to say, that you made me cry from how nice you are man i really hope you get the best life man, love your vids and love youre energy omg im actually so happy for you!
charlie the choo choo by beryl evans
2:00
Yes
i really like your videos
my bot is so overfly filled, i wanted to pull the stats part out for my webpage server you showed how to make. i can't even get it back out yet lol I've tried, i can't hardly figure my own bot back out lol
Help me there is no error but the command doesn't appear
This has been very good so far but I have a question about the order of execution. How does the client.once still execute after the client.login()? Shouldn’t the client.login() method be called first then the client.once() method?
client.once actually attaches a function that gets run when a certain event is fired. In this case it's the clientReady event that we're listening for. The login method however starts the login process of the bot. Once it's done, discord will fire the clientReady event and then discord.js forwards that event to all the listeners that are listening to that event. In this case our readyDiscord function!
the client.once doesn't run in the order it is written in the code! It is more like "hey discord.js, run this readyDiscord function once the bot logs in", and you need to tell it that, before actually logging in!
@@DipamSen This exactly :) it sorta makes sense in the name too, we're saying 'once EVENT, do this', and while it might not make sense for logging in, it is the general pattern for things like this, so we can tell the bot the reaction it should have upon a certain event, even if we don't have a line of code that explicitly causes that event (like with logging in)
Hey Dan, when node gives me a "MODULE_NOT_FOUND" error, what should I do? should I re-install node or npm? It's been like this for a while now and whenever I use a npm package or dotenv it gives me the error.
You had me until you pronounced gif with a hard G 😂
Wow it's so cool to be so early to a video
Dan's work will leave the same legacy as the great thinkers and doers from centuries past. The only difference is, Dan is 100x more funny than those dudes.
can u do some language c later on
I can't get past the redirects for Oauth2. I can't even see what you have for that on your screen you go right past it.
Check the description for a link to the discord where you can get help with this!!
@@TheCodingTrain it was my fault. I figured it out. Thx!
Could you try making a bot without a framework?
I'm not really sure why you'd do this? Frameworks are there to provide abstractions around the api. The Discord api is a pretty complicated thing and you'll probably end up writing your own abstractions around it anyways. While discord.js is a pretty beefy framework, there are more lightweight alternatives out there!
@@supercrafter100what alternatives?
@@supercrafter100to learn, to have fun
You’re just great
Hi, I followed the steps in the video. But I couldn't get my server, the one I newly created switched on. I followed all the steps.
1. Set up a new application using Discord Developer Portal. Used the client ID and auth token.
2. Created the new server using 'Add server' from my account. Enabled Developer mode.
3. Created Server from generator URL.
Yet the server is not switched on. Can anyone help with this?
Guru ji ❤
I would like to see how can I keep my bot running without my pc turned on
you're probably gonna need some cheap virtual machine hosting
Use a cloud provider like GCP. Won't be free but neither is electricity
one should be so inclined as to visit the "Working with Data and APIs in JavaScript" playlist tag on the end. he covers a lot of remote hosting playlists, but this playlist mentions my favorite local recommendation which after enough of his videos, it' a light bulb over the head coming on when he says it. and i will be using it for many many projects later. and he put it on the end on this video. more like the 1 candle to light a million. Buddhism "Thousands of candles can be lighted from a single candle, and the life of the candle will not be shortened. Happiness never decreases by being shared." it was like a million light bulbs and just me tho.
if you want a free server, there is cloud oracle with free tier 4ocpu and 24gb ram
oh no, i'm no spoiler this playlist will blow your mind. he has a free option lol i used up my credit during corona for the folding@home. he has the most amazing free option ever. i had a 3 day thing with xfinity to get a new router over it lol it's such a case, most everything he does also fits this convenient solution. i was upset i used every free credit i had on every platform, until you realize what Shiffman has already been having you do this entire time. it's like million light bulbs. the credits go much further, those are mainframe cpu's which means you can have42-125 cores and tb of ram if you want. the have the big ones. i was cpu mining for curecoin lol @@mthia
I love the vids, but this approach doesn't seem proper to me. If the actual logic of what happens upon a command is handled in bot.js upon receiving the interaction, and it only checks the name, then why are we putting the commands in separate files? Won't all of these files have (almost) identical contents, with the actual differing logic being contained in bot.js with a big if-else block? Just seems like unnecessary boilerplate and an antipattern to me.
Just finished the vid and it looks like you covered this, nevermind! :)
That's what trains say!
Finally!!!
Thankssssssssssss
Pist song français
What's the deal with this "Discord"-Thing? Is there anything substancial I can learn from it? A random bot for a random service which is probably bought by a billionaire, renamed to "Y" and from then on dying within the next 2 years? Where is the entertaining, inspiring Shiffman, teaching creative and substantial things I can use for the rest of my programmer-life?
Bruh, discord bots were interesting in 2018. Ever heard of gpts?