You are browsing as a guest. Sign up (or log in) to start making projects!

MarinosBot

  • 3 Devlogs
  • 6 Total hours

A discord music bot that has many features, from simple music playback to advanced stuff like auto-complete on search and lyrics and a watchdog. Built with discord.js and DisTube.

Open comments for this post

1h 30m 42s logged

Hello all!

MarinosBot now has a player embed built with discord.js’ new V2 components! It allows you to quickly play, pause, stop, change volume (or mute) and shuffle modes directly, easily.

It also updates the progress each time you click one of the buttons.

Personally I really like how this looks. Theres more to come!

0
0
73
Open comments for this post

3h 6m 33s logged

MarinosBot

Finished with basic music commands

Hello all! MarinosBot is finally mostly functional, and is able to play, stop, pause, change volume and also queue multiple songs and play them!

I greatly expanded the /play command, adding autocomplete support. You can search for a song directly, and the bot will attempt to pull the best match on YouTube using youtube-sr.

The queue command displays up to 8 songs per page, and it has built-in pagination so you can add as many songs to the queue as you want.

Next on my To-Do list is to add a command that shows the currently-playing song with info, and also a player embed that allows you to quickly pause, play, change volume and skip a song.

Thank you all!

0
0
64
Open comments for this post

1h 6m 58s logged

MarinosBot

Originally, MarinosBot was created so my friends and I could easily play music on our Discord server as background noise while we were talking, as we didn’t want to rely on 3rd-party solutions, or have to deal with daily limits. The first prototype was rushed and written entirely in JavaScript, which led to frequent crashes due to poor error handling.

These issues were mainly caused by the DisTube library itself, as yt-dlp exposed warnings on stdout that weren’t handled correctly. To work around this, I initially used patch-package and patched it, and then submitted an issue on GitHub, to help resolve it upstream.

Yesterday, I decided it was finally time to re-write the project completely. This time, I’m writing it using TypeScript, and I’m trying to make it feel more like an actual, proper bot than something random.

Today, I finished the barebones of the new project. So far, I’ve added the initial typings, event handling system and the first of many-commands-to-come, the /play command.

To keep the codebase organised, I also created a custom AudioManager that interfaces DisTube. It currently has few methods and no accessors, but it will gradually evolve as more functionality is needed.

My long-term goal is to make MarinosBot an all-in-one Discord bot. Instead of relying on multiple bots that each handle a small subset of features, I want a single bot that can provide music playback, moderation tools, utility, fun commands…. and whatever else in one place. I currently host it locally on my Raspberry Pi.

I’m attaching the current tree of the project, the start of it anyway.

0
0
6

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…