A Final Summary - So Long Discord!



The End

Writing these discord bots has been an interesting learning experience for a number of reasons. I thought I would take the time to reflect on the different libraries we explored and some of the things we learned.  Within the first few posts, I explored how to use the discord developer portal to create new applications. While there is much to learn regarding security and bot connectivity, we managed to have a bot log into my Discord Bot Army discord server. This was a first huge step to creating our bots, as it gave us a platform to see our bots be tested. I owe a special thanks to everyone who joined the server and tested them out. I began diving quickly into the application setup process for the various program languages. Once the projects were all setup, I spent more time discussing individual aspects of writing the discord bots, where each bot used a unique feature from the discord API. In the case of Dovahzul, we learned how to listen to events and create a request. In Pokémon TRPS, we got our hand dirty with reactions, data storage, and message searching. The goal was for each new bot incorporate a discord API feature for something lacking in the previous.

I thought it was crucial to discuss how each programming language differed in project structure. One of the major ambitions of this project, besides learning how to write discord bots, was to learn which programming language would be the best to really use. Since there are so many libraries and languages, I decided to pick three popular languages that I was comfortable with. Given more time I would have liked to included C#, however I think JavaScript / TypeScript, Java, and Python were all solid choices. 

In conclusion I found the python to be best suited for the majority of situations. Python has a ton of support and can create a wide variety of bots. In only specific circumstances, could I see the potential of other programming languages like TypeScript and Java. That being said, language preference mostly comes down to what you as a programmer are more comfortable with. I think writing discord bots in a new language would be a massive challenge since there are many API features. Therefore, I ultimately recommend you prioritize your language choice more so on your current knowledge level. Every language proved to be able to create a bot that functioned the same, although some had to be developed in completely different ways to reach that goal. For example in Pokémon TRPS, the reaction collector in TypeScript verses reaction add event listers in Java were extremely different.  

What's Next?

I figured I should provide some recommendations for what do next if you want to continue learning. As mentioned in a prior post, I wanted to cover hosting and bot presences. I think both are great options since with hosting, you can learn how other serves can actually use your bot. With presences, you can greatly expand your discord bot-making abilities by storing user activity information and online status. The posture-checking bot would be a great idea for a bot that uses presences

I highly recommend checking out other bots created on GitHub as well by others. This is a great way to help you understand or think about your code in a different way. Being able to understand how other people write discord bots will greatly help you out. Here is an example of a discord bot that orders pizza to your doorstep: https://github.com/Isaacr100/Discord-Pizza-Ordering-Bot. I thought about creating a similar bot to this pizza ordering bot since I thought it was a fun idea.


The bots we created on the current discord server will be removed shortly due to google cloud hosting costs. I bid farewell to the human readers of this blog and to the bots the had joined us on this journey. 

Comments