🎵 FreeMium JayRain

The complete node setup guide. About 10 minutes, one time — then your server has music, free, forever.

💡 Why this works — the group-effort model

FreeMium JayRain runs on nodes shared by its community — the more members who link a node, the more reliable music is for everyone, especially newcomers.

Illustration: several members' laptops contribute music; when one is off, the others keep playing
🌱 New here with no node yet? No problem — as long as someone in the server has linked a node, you can use /play right away. This guide is for when you want to add your own PC to the pool.
On this page:
  1. What "host your own node" actually means
  2. What you need to collect
  3. Downloading each piece
  4. The config file (copy-paste)
  5. Where everything goes
  6. Starting your node
  7. Keeping your PC awake
  8. Linking your node — two ways
  9. The share toggle
  10. The one policy to know

1 What "host your own node" actually means

When you type /play, the FreeMium JayRain bot only handles the command — figuring out which song you asked for, managing the queue, and joining the voice channel. The actual work of finding, downloading, and streaming the music is done by an audio server (we call it a node) running on your computer.

Diagram: your /play command goes to the bot, the bot asks your PC's audio server, and music streams into the voice channel

That means: when your computer is off or asleep, your node is unavailable and can't stream. Close the laptop, music stops. That's not a bug — it's the whole design. And it's exactly why it matters that other server members link their nodes too: the more nodes a server has, the more likely someone's PC is online to power the music at any given moment.

2 What you need to collect

Five things. None of them cost money:

Illustration of the five things you need: Java 17+, the Lavalink jar, two plugin jars, a password, and port 2333

3 Downloading each piece

☕ Java 17+

Go to adoptium.net (the free, official source for Java) → Temurin releases → pick the installer for your system (Windows .msi, Mac .pkg, Linux). Run it and accept the defaults.

Illustration: a Java installer file with a coffee-cup icon highlighted in your downloads folder

When it's done, it'll look like an ordinary installer file with a little coffee-cup icon sitting in your Downloads. To check it worked, open a terminal and run java -version — you should see version 17 or higher.

📦 Lavalink.jar

Go to github.com/lavalink-devs/Lavalink → Releases → open the newest v4.x release → under Assets, download the file named exactly Lavalink.jar.

Illustration: the Lavalink.jar file highlighted in your downloads folder

What to look for: a single .jar file, roughly 100 MB, named Lavalink.jar — nothing else from that page. If the name has extra words or a different extension, it's the wrong file.

🔌 The two plugin jars

YouTube plugin: go to github.com/lavalink-devs/youtube-source → Releases → download the newest youtube-plugin-….jar (the version number in the name will match the release — e.g. youtube-plugin-1.18.2.jar).

LavaSrc plugin: go to github.com/topi314/LavaSrc → Releases → download the newest lavasrc-plugin-….jar.

Illustration: the two plugin jar files, youtube-plugin and lavasrc-plugin, ready to go into the plugins folder
🎯 What you're looking for on each releases page: a file ending in .jar whose name starts with youtube-plugin or lavasrc-plugin. Grab the latest release on each page — newer versions fix bugs and keep up with YouTube/Spotify changes.

4 The config file (copy-paste)

In the folder where you put Lavalink.jar, create a plain text file named exactly application.yml and paste everything below into it. It's the settings file for your audio server.

Illustration: the application.yml file with the port and password lines highlighted in yellow

You only need to change TWO lines — they're highlighted below:

server:
  port: 2333              # ← LINE 1: the door number. Leave it unless you know you need another.
  address: 0.0.0.0

lavalink:
  server:
    password: "REPLACE-THIS-WITH-YOUR-OWN-PASSWORD"   # ← LINE 2: YOUR secret. Keep the quotes!
    sources:
      soundcloud: true
      http: true
      bandcamp: true
      twitch: true
      vimeo: true
    filters:
      volume: true
    bufferDurationMs: 400
    playerUpdateInterval: 5

plugins:
  youtube:                # turns YouTube back on (Lavalink v4 needs this add-on)
    enabled: true
    allowSearch: true
    allowDirectVideoIds: true
    allowDirectPlaylistIds: true
  lavasrc:                # Spotify / Apple Music / Deezer support
    providers:
      - "ytsearch:\"%ISRC%\""
      - "ytsearch:%QUERY%"
      - "scsearch:%QUERY%"
    sources:
      spotify: true
      applemusic: true
      deezer: true
🔒 Write your password down somewhere safe. You'll paste it into Discord (or the dashboard) in step 8. And never post it publicly — anyone with your password and your address can use your node.

5 Where everything goes

Make one folder for all of it — for example C:\Lavalink on Windows or ~/lavalink on Mac/Linux. Inside it:

Diagram: the Lavalink folder contains Lavalink.jar, application.yml, and a plugins subfolder holding the two plugin jars
✨ Lavalink automatically loads every .jar it finds in the plugins folder when it starts — no extra setup needed. If YouTube or Spotify ever stops working, the first thing to check is that both jars are still in that folder.

6 Starting your node

Open a terminal in your Lavalink folder and run:

🪟 Windows

Open PowerShell (search it in the Start menu), then:

cd C:\Lavalink
java -jar Lavalink.jar

(Use your folder path if you picked a different one.)

🍎🐧 Mac / Linux

Open Terminal, then:

cd ~/lavalink
java -jar Lavalink.jar

(Use your folder path if you picked a different one.)

What success looks like: a bunch of log lines scroll by (the first run takes a little longer — it's setting things up), and near the end you'll see a line saying Lavalink is ready to accept connections. That's it — your node is live. 🎉

Illustration: a terminal window showing the log line 'Ready to accept connections' in green
⚠️ Keep that terminal window open. Closing it stops your node — and with it, any music streaming from your PC. Minimize it, don't close it.

7 Keeping your PC awake

Here's the catch from step 1: if your computer falls asleep or hibernates, your node goes offline and music powered by it stops. Your PC doesn't need to be used — it just needs to stay awake.

Illustration: an awake laptop plays music, a sleeping laptop stops it

In plain words, here's the setting to change (do it while plugged into power — you don't need to drain your battery for this):

💻 Laptop users: closing the lid usually puts the PC to sleep — keep the lid open while your node runs, or change what closing the lid does in your power settings.

8 Linking your node — two ways

Your node is running — now tell the bot how to reach it. Pick whichever way you like; both ask for the same three things: Host, Port, Password.

Way A — in Discord with /mynode 📱

Illustration: typing /mynode in Discord and the bot asking for your node's Host, Port, and Password
  1. Make sure your node is running (step 6) and your PC is awake (step 7).
  2. In any server that has FreeMium JayRain, type /mynode and hit enter.
  3. Fill in the popup:
    • Host — how the bot reaches your PC over the internet (see below — it's not "localhost").
    • Port — 2333 (unless you changed it in application.yml).
    • Password — the one from your application.yml.
  4. The bot tests the connection on the spot. Green checkmark = you're live. Your personal node now works in every server you're in that has the bot — no need to repeat this per server.
👑 Server admin? /setup does the same thing but links a node for the whole server instead of just you. Same three fields.

Way B — on the dashboard 🌐

Illustration: the My Node dashboard page with Host, Port, and Password fields and a Test and Save button
  1. Go to freemiumjayrain.rivaleclipse.dev/my-node and sign in with Discord.
  2. Open the My Node page.
  3. Fill in Host, Port (2333), and Password — the same three values as Way A.
  4. Hit Test & Save. It tests the connection live, just like /mynode does.
  5. Done — same result: your node is linked to your Discord account and works in every server you share with the bot.

🌍 "Wait — what do I put for Host?"

The bot lives on the internet, so localhost won't work — it needs your PC's public address. Two options:

9 The share toggle

Illustration: the share toggle ON means your node is shared with your servers; OFF means only you can use it

On your My Node page (or via /mynode settings) there's a share toggle. In plain language:

🤝 Why sharing helps everyone: every shared node is one more PC that can power music for the whole server. The more members share, the less often anyone hits silence because "nobody's node is online right now."

10 The one policy to know

Illustration: with no node linked the bot plays nothing; with a node linked, music flows

No music plays until someone in the server has a working node linked. That's the whole policy. The bot app never hosts audio itself — it only runs commands — so if nobody in the server has linked a node (or every linked PC is currently off), /play will tell you there's no audio available instead of playing silence.

This is also why FreeMium JayRain is free forever: nobody is paying for audio servers, so there's nothing to charge for. Link your node, share it, and the music takes care of itself. 🎶

🎧 Try it: join a voice channel and run /play with a song name or link. If it plays, your node is doing its job.

🛠 Troubleshooting

"Couldn't reach it" / connection test failed — your node isn't running, the Host is wrong, or the port isn't reachable. If you're on home internet without port forwarding, use the tunnel option (step 8). Remember: localhost never works as the Host.

"Password was rejected" — the password you pasted doesn't match application.yml. Copy-paste it carefully, and make sure you kept the quotes around it in the file.

Music stops when I close my laptop — your PC fell asleep. See step 7: set sleep to Never while plugged in, and keep the lid open.

YouTube links won't play — the YouTube plugin jar is probably missing from the plugins folder. Check step 5's layout, then restart your node.

Spotify links won't play — same check for the LavaSrc jar. Also note Spotify tracks are matched to YouTube for actual playback, so you need both plugins.

Node shows offline on the dashboard — your PC is off/asleep, the terminal window got closed, or (tunnel users) your tunnel address changed after a restart. Start it up and re-link with the new address.

Change details later — just run /mynode again (or revisit the My Node page) and save the new values.