music.
high-fidelity audio playback.
starting playback
join a voice channel before asking havoc to play. a search starts with SoundCloud and falls back to YouTube; a playable link can be supplied instead of a song name. when the link resolves to a playlist, havoc queues its tracks rather than treating it as one search result.
,music play midnight city
,play https://soundcloud.com/artist/track
/music play song name or link: midnight city| command | what it does | needs |
|---|---|---|
| /music play <song name or link> | search SoundCloud, fall back to YouTube, and play or queue the result | in voice |
play is the prefix alias. havoc joins the member’s current channel, starts immediately when idle, or appends to the server queue when something is already playing. music state belongs to the server, so members share one current track and one queue.
playback controls
transport commands affect the shared player rather than one member’s personal session. pause keeps the current position, resume continues it, and skip advances to the next queued track. volume is a whole-number percentage from 0 through 150.
| command | what it does |
|---|---|
| /music pause | pause the current track |
| /music resume | continue a paused track |
| /music skip | stop the current track and advance |
| /music volume <percent> | set playback volume from 0 to 150 percent |
| /music stop | stop, clear the queue, and leave voice |
,music pause
,music volume 80
,music resume
,music skip,music stop is not a pause. it disconnects havoc and discards the current server queue. save the current and queued tracks as a playlist first if they need to be restored later.
audio filters
a filter changes how every track is opened, so switching one re-opens whatever is playing at the position it had reached rather than starting the song over. the choice is saved per server and stays on across restarts until it is turned off.
| command | what it does |
|---|---|
| /music filter | show the current filter and the available ones |
| /music filter bassboost | heavier low end, limited so it does not clip |
| /music filter nightcore | faster and higher pitched |
| /music filter 8d | audio that rotates between the channels |
| /music filter off | back to unprocessed audio |
,music filter nightcore
,filter bassboost
,music filter offfilter is the prefix alias, and bass, nc and 8-d are accepted spellings. one filter is active at a time; setting a new one replaces the previous one rather than stacking with it.
lyrics
with no song named, havoc looks up whatever is currently playing, cleaning “(official video)” style noise out of the title first. naming a song looks that up instead, so lyrics can be pulled without playing anything.
| command | what it does |
|---|---|
| /music lyrics | lyrics for the current track |
| /music lyrics <song> | lyrics for a song you name |
,music lyrics
,lyrics m83 - midnight citylyrics come from a public community database, so instrumentals, remixes and very new releases often have none. a “couldn’t find lyrics” reply means no match; a “service isn’t answering” reply means the lookup itself failed and is worth retrying. long lyrics are shown from the start and page through the card’s buttons.
restricting playback to a dj role
by default anyone can run the transport commands. setting a dj role limits skip, previous, pause, resume, stop, volume changes, autoplay changes, filter changes and queue edits — including the buttons on the now-playing card — to members holding that role.
| command | what it does | needs |
|---|---|---|
| /music dj | show the current dj role | manage server |
| /music dj <role> | restrict playback control to that role | manage server |
| /music dj off | let anyone control playback again | manage server |
still open to everyone
playing and queuing tracks, reading the queue, saved playlists, lyrics, and checking a setting without changing it.
moving between channels
queueing from a different voice channel would move havoc out of the one people are listening in, so that counts as a playback control and needs the role.
never locked out
members with manage server, and anyone who is the only listener left in the voice channel.
a deleted role
counts as no dj role rather than locking everyone out, so removing the role restores open control.
staying in voice (24/7)
with 24/7 on, an empty queue and an empty voice channel stop being reasons to leave: havoc holds the connection until someone queues something again. the setting is saved per server, so it survives the bot restarting.
| command | what it does | needs |
|---|---|---|
| /music 247 | show whether 24/7 is on | — |
| /music 247 on | stay connected when the queue runs out | manage server |
| /music 247 off | go back to leaving when idle | manage server |
,music stop disconnects even with 24/7 on — it is the explicit way to end a session. the setting stays on for the next one. turning 24/7 off re-checks both ordinary leave conditions right away, so an empty queue or an already-empty channel starts its countdown from that moment. a paused track counts as an active session and is not treated as idle.
reading and changing the queue
queue positions begin at 1 for the first waiting track; the currently playing track is shown separately and is not position 1. inspect the queue immediately before removing or moving, because a track ending or another member adding music can change the positions.
| command | what it does |
|---|---|
| /music queue | show the current track and every waiting track |
| /music remove <position> | remove one waiting track by its current position |
| /music move <position> <new position> | move a waiting track to another position |
- 01
read the positions
run
,music queueor its,queuealias. - 02
make one change
use
,music remove 2or,music move 3 1. - 03
check again
run the queue command again before making another position-based change.
q, remove, and move are also prefix aliases. there is no separate clear command in the live registry; music stop is the only command that clears the whole queue, and it also leaves voice.
saved playlists
a saved playlist captures the current track followed by the waiting queue. give it a stable name so it can be found later. saved playlists are private to the member who created them, even though playback and the live queue are shared by the server.
,music playlist save road trip
,music playlist list
,music playlist play road trip
,music playlist delete road trip| command | what it does |
|---|---|
| /music playlist save <name> | save what is playing and queued under a name |
| /music playlist list | list your saved playlists |
| /music playlist play <name> | queue your saved playlist |
| /music playlist delete <name> | delete one of your saved playlists |
a member can save up to 25 playlists, each containing at most 500 tracks, and names may be up to 100 characters. saving requires at least one current or queued track. deleting removes only the saved copy; it does not remove tracks already placed in the live queue.
voice permissions and automatic leaving
havoc needs access to the chosen voice channel and permission to connect and speak there. the requesting member must already be connected. if havoc is playing in another channel in the same server, a new play request can move the existing connection to the requester’s channel.
connect
allows havoc to join the channel. category and channel overwrites can deny it even when the server role allows it.
speak
allows encoded audio to reach members after the connection succeeds.
member presence
the play and saved-playlist commands require the requester to be in voice first.
automatic disconnect
havoc leaves after five idle minutes, or after the channel has no non-bot members for three minutes — unless 24/7 is on.
auto-leaving clears the in-memory player, including its queue. saved playlists remain available because they are stored separately. rejoining before the empty-channel grace period ends cancels that departure timer.
common voice failures
| command | what it does |
|---|---|
| /join a voice channel first | connect yourself before play or playlist play |
| /check connect permission | inspect the exact voice channel and its category overwrites |
| /check speak permission | a connection without speak permission produces no useful audio |
| /try the search again | a source track or stream link may be unavailable |
“couldn’t join” points to voice access, a timed-out connection, or Discord refusing the connection. “couldn’t find anything playable” means neither SoundCloud nor the YouTube fallback returned a playable result. when a linked playlist is found but cannot start, retry later or queue an individual track to narrow down the failure.
first try ,music play with a plain song name while already in a simple voice channel. if havoc cannot join, fix channel permissions. if it joins but one link fails, the source or that particular media is the likely problem.
