Back to Products
nMusic
Discord Bots

nMusic

$30.00

In Stock
Free Shipping

Description

NextSetup Music Bot V1

NextSetup Music Bot V1 is a modern, high-quality Discord music bot built for smooth playback, clean controls, and a polished server experience. It includes slash commands, a rich now-playing panel, queue management, lyrics preview, autoplay, local API controls, multi-language support, and NextSetup license protection.

The bot is designed to feel professional from the first run: easy to configure, simple to operate, and powerful enough for active Discord communities.

Highlights

  • High-quality audio-focused playback system.
  • Stable Discord voice playback powered by discord-player, @discordjs/voice, and ffmpeg-static.
  • YouTube video, playlist, Shorts, live URL, and search support.
  • Spotify URL handling by converting tracks into playable search queries.
  • Modern Discord slash commands.
  • Components V2 now-playing panel with interactive controls.
  • Button controls for previous, pause/resume, stop, skip, shuffle, queue, volume, autoplay, and lyrics.
  • Lyrics preview support.
  • Autoplay and loop modes.
  • Queue, history, shuffle, remove, and clear management.
  • Volume control from 10 to 150.
  • Queue support for up to 500 tracks.
  • Playback history support for up to 50 tracks.
  • Multi-language system: English, Turkish, French, German, Italian, Russian, and Chinese.
  • Local HTTP API for health checks, queue inspection, and remote playback control.
  • NextSetup license verification before the bot starts.

Audio Quality

NextSetup Music Bot V1 is built with audio quality in mind. Its playback stack uses ffmpeg-static, @discordjs/voice, discord-player, and tuned YouTube stream settings to provide clean, powerful, and stable audio in Discord voice channels.

The default configuration uses a strong playback volume and a high stream buffer setting, helping tracks sound fuller, clearer, and smoother during active use. For communities that care about music quality, this is one of the bot's strongest advantages.

Commands

CommandDescription
/play query:<song or link>Plays a song, playlist, or supported URL.
/queueShows the current music queue.
/nowplayingOpens the current playback panel.
/pausePauses playback.
/resumeResumes playback.
/skipSkips the current track.
/previousPlays the previous track from history.
/stopStops playback and clears the queue.
/shuffleToggles shuffle mode.
/loop mode:<off/track/queue/autoplay>Sets the loop or autoplay mode.
/volume amount:<10-150>Changes playback volume.
/remove position:<number>Removes a track from the queue.
/clearClears all upcoming tracks.

Now Playing Panel

The /nowplaying command opens an interactive music control panel. Users can manage playback without typing extra commands.

Panel controls:

  • Previous track
  • Pause and resume
  • Stop playback
  • Skip track
  • Shuffle queue
  • View queue
  • Change volume with a modal
  • Toggle autoplay
  • View lyrics

The panel displays the track title, artist, requester, playback time, volume, loop mode, shuffle state, and upcoming tracks in one clean interface.

License Protection

The bot verifies the LICENSE_KEY value from the .env file before it starts. If the license is missing, invalid, or cannot be verified, the bot exits and does not continue.

License verification happens before:

  • Discord bot login
  • Local API startup
  • Player initialization flow completion

This keeps the product protected and prevents unauthorized deployments from running successfully.

Installation

1. Requirements

Before installing the bot, make sure you have:

  • Node.js 20 or newer
  • npm
  • A Discord application and bot created in the Discord Developer Portal
  • A Discord bot token
  • Your Discord application client ID
  • A valid NextSetup license key

2. Open the Project Folder

Open a terminal inside the project directory.

cd path/to/nextsetup-music-bot

3. Install Dependencies

npm install

During installation, youtube-dl-exec may download an extra binary. If you hit a GitHub rate limit while installing dependencies, you can install packages for development and build tasks with:

npm install --ignore-scripts

Note: If your playback path requires the yt-dlp binary, the youtube-dl-exec postinstall step must complete successfully.

4. Edit the .env File

Open the included .env file in the project root and fill in your own values. At minimum, you must set:

  • BOT_TOKEN
  • CLIENT_ID
  • LICENSE_KEY

Optional values such as Spotify credentials, API protection, and YouTube cookies can be configured later if needed.

Environment variables:

VariableDescription
BOT_TOKENYour Discord bot token. This project uses this exact token variable name.
CLIENT_IDYour Discord application/client ID.
GUILD_IDOptional test guild ID. If set, slash commands deploy to that guild only.
LICENSE_KEYYour NextSetup license key. Required.
SPOTIFY_CLIENT_IDOptional Spotify client ID.
SPOTIFY_CLIENT_SECRETOptional Spotify client secret.
API_HOSTLocal API host. Default: 127.0.0.1.
API_PORTLocal API port. Default: 3000.
API_TOKENOptional token for protecting /api/* routes.
YOUTUBE_COOKIEOptional single-line YouTube cookie value. Usually left empty.
YOUTUBE_COOKIE_FILENetscape-format cookie file path. Default: cookies.txt.
YOUTUBE_USE_YTDLPOptional YT-DLP usage flag. Default: false.

5. Deploy Slash Commands

npm run deploy

If GUILD_ID is set, commands are deployed quickly to that guild. If GUILD_ID is empty, commands are deployed globally and may take longer to appear in Discord.

6. Run in Development Mode

npm run dev

This runs the TypeScript source directly with tsx.

7. Build for Production

npm run build

This compiles the src folder into the dist folder.

8. Start the Bot

npm start

On successful startup, the console will show license verification, local API startup, and Discord login messages.

Local API

The local API runs on:

http://127.0.0.1:3000

You can change the host and port with API_HOST and API_PORT.

EndpointDescription
GET /healthReturns bot status, guild count, and active queue count.
GET /api/queuesLists active music queues.
GET /api/guilds/:guildId/queueReturns the queue for a specific guild.
POST /api/guilds/:guildId/controlRuns a playback control action.

Control request example:

{
  "action": "pause"
}

Supported actions:

pause, resume, pause_resume, skip, stop, shuffle, autoplay, volume

If API_TOKEN is set, include one of these headers:

Authorization: Bearer your_api_token

or:

x-api-token: your_api_token

YouTube Cookies

For more stable YouTube access, you can use a cookie file. Do not paste multi-line cookie exports directly into .env. Save a Netscape-format cookie export as cookies.txt and keep:

YOUTUBE_COOKIE_FILE=cookies.txt

Scripts

ScriptDescription
npm run devRuns the bot in TypeScript development mode.
npm run deployDeploys slash commands to Discord.
npm run typecheckRuns TypeScript type checking.
npm run buildBuilds the production dist folder.
npm startStarts the compiled bot from dist/index.js.

Configuration

Main settings live in config.js.

You can customize:

  • Bot presence text
  • API host and port
  • Default language
  • Available languages
  • Default, minimum, and maximum volume
  • Queue and history limits
  • Autoplay behavior
  • YouTube stream settings
  • Panel colors and buttons
  • Lyrics preview settings

Summary

NextSetup Music Bot V1 is a polished Discord music bot focused on high audio quality, clean controls, reliable playback, strong queue management, license protection, and an easy installation flow.

Install it, add your license key, deploy the commands, and bring a premium music experience to your Discord server.