Low-latency music for gaming squads and voice lobbies.
A fast, clean Discord music player built for gaming communities: vote-skip, DJ role, one-tap controls, high-energy radio and a live web dashboard.
- Vote-skip so one player can’t hijack the lobby
- DJ role and button controls for clutch moments
- Gaming radio: DEF CON, Beat Blender, Dubstep Beyond
- SoundCloud search — type a song name and it just plays
- One-tap controls — pause, skip, loop, shuffle and stop buttons on every now-playing card
- Web dashboard — change settings, see what's playing and redeem Premium from the Prism Bots Panel
- Free forever — the core player never goes behind a paywall
🎵 Music
| Command | What it does |
|---|---|
/clear |
Clear upcoming tracks (keeps the current one) |
/leave |
Disconnect from the voice channel |
/loop |
Loop the track, the whole queue, or turn looping off |
/move |
Move a track to another queue position |
/nowplaying |
Show the current track with controls |
/pause |
Pause the current track |
/play |
Play a song: name (SoundCloud search), SoundCloud link, audio link or station |
/queue |
Show the queue |
/radio |
Tune in to a CosmicMix 24/7 radio station |
/remove |
Remove a track from the queue |
/resume |
Resume playback |
/seek |
Jump to a time in the current track |
/shuffle |
Shuffle the queue |
/skip |
Skip the current track (or jump to a position) |
/stop |
Stop playback and clear the queue |
/volume |
Set the volume (Free: up to 100, Premium: up to 200) |
💎 Premium
| Command | What it does |
|---|---|
/247 |
Keep the bot in voice 24/7, even when the queue ends 💎 |
/autoplay |
When the queue ends, keep playing your favourite station 💎 |
/filter |
Apply an audio effect: bass boost, nightcore, 8D, lo-fi and more 💎 |
/playlist |
Save and load server playlists 💎 |
/premium |
See this server’s plan and what Premium unlocks |
/redeem |
Redeem a Premium key for this server |
/genkey |
Owner only: create Premium keys to sell or gift |
🛠️ Utility
| Command | What it does |
|---|---|
/help |
Everything CosmicMix can do |
/invite |
Add CosmicMix to another server |
/ping |
Check latency |
/settings |
Configure the bot for this server (or use the web panel) |
/stats |
Bot statistics |
💎 = needs Premium on the server.
| Station | Vibe | Command |
|---|---|---|
| DEF CON Radio | Hacker / gaming electronic | /radio station:defcon |
| Beat Blender | Deep house & downtempo | /radio station:beatblender |
| Dubstep Beyond | Dubstep | /radio station:dubstep |
| cliqhop idm | Intelligent dance music | /radio station:cliqhop |
| PopTron | Electropop & indie dance | /radio station:poptron |
Radio streams come from SomaFM, listener-supported and commercial-free. Please consider supporting them.
EchoArena is free. Premium is per server and unlocks the extras that cost more to run.
| Free | Premium | Premium+ | |
|---|---|---|---|
| Price | ₹0 | ₹99/month · ₹999/year | ₹249/month · ₹2,499/year |
| Queue size | 100 | 500 | 2,000 |
| Max volume | 100% | 150% | 200% |
| Audio filters | — | ✅ | ✅ |
| 24/7 mode | — | ✅ | ✅ |
| Autoplay radio | — | ✅ | ✅ |
| Saved playlists | — | 10 × 200 tracks | 50 × 1,000 tracks |
Prism Pass — ₹399/month · ₹3,999/year: Premium+ on all five Prism music bots (CosmicMix, EchoArena, Midnight Vibes, NeonPulse, RoyalWave) for one server.
Filters: 🔊 Bass Boost · 🌙 Nightcore · 🌴 Vaporwave · 🎧 8D Audio · 📼 Lo-Fi · 🎤 Karaoke · ✨ Treble · 🏟️ Concert Hall · 🌫️ Slowed + Reverb
- Pick a plan on the Premium page.
- Pay through the link there, or open a Premium ticket in the Prism Protocol Discord (UPI and cards accepted).
- You get a key like
ECA-XXXX-XXXX-XXXX. Run/redeem key:<your key>in your server, or paste it in the dashboard's 💎 Premium tab.
Time stacks: redeeming another key on the same plan extends it.
You need Node.js 18.17+ and a bot application from the Discord Developer Portal. FFmpeg is bundled through ffmpeg-static, nothing else to install.
git clone https://github.com/krishyaa06/echoarena-player.git
cd echoarena-player
npm install
cp .env.example .env # add DISCORD_TOKEN and CLIENT_ID
npm run deploy # registers slash commands
npm start| Variable | Required | Notes |
|---|---|---|
DISCORD_TOKEN |
✅ | Bot token |
CLIENT_ID |
✅ | Application ID |
OWNER_IDS |
Your Discord user ID(s), comma separated. Owners can run /genkey |
|
GUILD_ID |
Register commands instantly in one test server | |
PANEL_API_PORT |
Port for the web dashboard API, 0 = off |
|
PANEL_ORIGIN |
Allowed dashboard origin (default https://krishyaa06.github.io) |
|
PREMIUM_BUY_URL |
Where the "Buy Premium" buttons point | |
SOUNDCLOUD_CLIENT_ID |
Fixed SoundCloud client id (otherwise fetched automatically) | |
BOT_DATA_DIR |
Where settings, keys and playlists are stored (default ./data) |
In the Developer Portal, the bot needs no privileged intents. Invite it with the bot and applications.commands scopes.
/genkey tier:Premium days:30 count:5
The keys are shown only to you (ephemeral reply). Only a SHA-256 hash is stored, so a leaked data file can't be turned back into working keys.
The Prism Bots Panel is a static site that talks to a small API built into the bot.
- Set
PANEL_API_PORT=8080(any free port) and start the bot. - Put it behind HTTPS, e.g. Caddy:
echoarena.example.com { reverse_proxy localhost:8080 }, or a Cloudflare Tunnel. - In the panel repo, edit
js/config.js: setbots.echoarena.apiUrlto that HTTPS URL andbots.echoarena.clientIdto your application ID. Add the panel URL as an OAuth2 redirect in the Developer Portal.
Users log in with Discord (identify guilds scope). The API checks Manage Server on every request, so people can only change servers they manage.
- Plays SoundCloud, SomaFM radio and direct audio links.
- YouTube and Spotify are blocked on purpose: streaming them breaks their terms and gets public bots taken down.
- Direct links are checked against private and internal IP ranges before anything is fetched.
echoarena-player/
├── bot.config.js # name, colours, emoji, statuses, radio stations
├── src/
│ ├── index.js # client, events, panel API
│ ├── deploy-commands.js
│ ├── commands/ # music · premium · utility
│ ├── events/ # ready · interactionCreate · voiceStateUpdate
│ └── lib/ # player, premium keys, settings, filters, sources, panel API
├── assets/ # logo, banner, Discord avatar + profile banner
├── scripts/check.js # loads every command and validates it
└── test/ # node --test
npm test # unit tests
npm run check # command sanity checkLogo, banner, Discord avatar and the "About me" text are in assets/ and BRANDING.md.
More Prism bots: CosmicMix · Midnight · NeonPulse · RoyalWave
Built by Soumya Bhandare · Prism Protocol · MIT License