📻 ProximityRadio Free
📻 Place a radio → 🎵 choose a track → 🚶 walk away and hear it fade
Every placed radio is its own audio source with a separate track, queue, volume, range, owner and trusted-player list. Put two radios next to each other and they can play independently without one stopping the other
📻 What actually happens in game
🧱 One placed head becomes one independent radio
- The sound originates at the radio's exact block
- Walking away makes the music quieter; leaving its configured range removes it completely
- Directional audio lets players hear whether the radio is to their left or right
- Every placed radio remembers its selected track, playback state, queue, range and shared volume
🎼 The music library is made from your own files
Drop OGG, MP3, WAV, FLAC, M4A, AAC, OPUS, WMA or AIFF files into the tracks folder and run /radio zip. The plugin scans their metadata, converts non-OGG audio and builds the Minecraft resource pack together with the required sound definitions.
- OGG Vorbis files are used directly — FFmpeg is not needed for an OGG-only library.
- Other formats are converted automatically; the correct FFmpeg build is downloaded only when required.
- Rebuilding the pack reuses cached conversions when the source files have not changed.
- The finished ZIP can be served by the plugin's built-in HTTP server or from your own direct URL.
🖥️ Vanilla and modded players together
The enhanced playback path uses Proximity Radio Client — a separate, optional Fabric mod installed by the player in their own Minecraft client. It is not bundled with the server plugin and is not required to join the server.
📥 Download Proximity Radio Client on Modrinth
The server detects the client mod automatically. Modded and vanilla players can stand around the same radio and listen at the same time; only the method used to deliver the audio is different.
| Vanilla players | Players with the optional client mod |
|---|---|
| Accept the server resource pack; no mod is required | Install the external Proximity Radio Client from Modrinth |
| Minecraft plays generated positional sound events | The client plays the extracted OGG track directly |
Joining an active song follows WAIT_FOR_SYNC, PLAY_FROM_START or RESTART_TRACK |
Join the song at the server's exact current timestamp |
| Uses Minecraft's native sound attenuation | Supports LINEAR, SMOOTH and NONE falloff curves |
| Seeking may require the next synchronization point | Seeking, pause and resume are synchronized immediately |
If the mod is missing or its protocol does not match the plugin, that player simply stays on the vanilla resource-pack path.
🎛️ Inside the radio menu
- Start, stop, pause, resume, skip or return to the previous track.
- Browse the allowed tracks, select one directly or build a queue.
- Toggle loop and shuffle separately for each radio.
- Change the radio's shared volume and hearing radius.
- Change only your own listener volume without affecting anyone else.
- See the owner, radio ID, active listeners and current playback position.
✨ Around the radio
- A configurable player-head texture makes the radio a physical part of the build.
- The hologram can show the track, time remaining, next track and listener count.
- Note particles can appear directly above the radio or across a larger ambient area.
- The action bar can display the currently playing track only to listeners in range.
- Crafting recipes may use vanilla materials or exact items from supported item plugins.
- Optional protection covers the radio and its supporting block against pistons, explosions and entity changes.
🆚 Free vs Pro
Free and Pro use the same playback engine, menus, client integration, protection and hooks. The difference is the size of the library and the number of radio configurations you can create.
| Actual difference | 🆓 Free | 💎 Pro |
|---|---|---|
| Radio tier files | 2 bundled, editable tiers | Unlimited custom tiers |
| Track files in the library | Up to 12 | No edition limit* |
| Length of one track | Up to 6 minutes | No edition limit* |
💎 Get the PRO here
*Practical limits still depend on your server resources and resource-pack size.
📡 Two Ready-to-Use Radio Tiers
ProximityRadio Free includes:
- Default Radio — 32-block maximum range, linear falloff and owner/trusted-player control.
- Admin Radio — 48-block maximum range, smooth falloff and administrator-only control.
Both tier files can be customized. The Free edition always loads these two bundled tiers; additional tier files require Pro.
🔌 Integrations
🛡️ WorldGuard
Control placement, usage and breaking independently in every region:
proximity-radio-place: allow|deny
proximity-radio-use: allow|deny
proximity-radio-break: allow|deny
🧩 PlaceholderAPI
Display the current track, artist, playback state, listener count, volume, remaining time and more in scoreboards, tab lists or other plugins.
🧱 Custom item plugins
Crafting recipes can use items from ItemsAdder as well as normal Minecraft materials.
All integrations are optional. ProximityRadio works without them.
🚀 Quick Start
- Install
ProximityRadioFree-1.0.0.jarin your server'splugins/folder. - Start the server once, then add music to
plugins/ProximityRadioFree/tracks/. - Run
/radio zipto validate the tracks and generate the resource pack. - Configure the built-in or external resource-pack URL, then run
/radio reload. - Give a radio with
/radio give <player> <tier> [amount]and place it in the world.
⚠️ Install either Free or Pro, never both editions on the same server.
🎮 Useful Commands
| Command | Description |
|---|---|
/radio help |
Display the command help. |
/radio volume <0-100> |
Set personal radio volume. |
/radio mute [on|off] |
Mute or unmute all radios for yourself. |
/radio streamermode [on|off] |
Quickly toggle global personal mute. |
/radio info |
Show information about the nearest radio. |
/radio status |
Check client, mute and nearby playback status. |
/radio track list [page] |
Browse tracks available to the nearby radio. |
/radio track play <id> |
Select a track when you can control the radio. |
/radio queue <list|add|clear> |
Manage the nearby radio's queue. |
/radio trust <radio-id> <list|add|remove> |
Manage trusted players for an owned radio. |
/radio zip |
Build or rebuild the music resource pack. |
/radio reload |
Reload configuration, tiers and integrations. |
/radio give <player> <tier> [amount] |
Give radio items to a player. |
/radio diagnose |
Display environment and configuration diagnostics. |
Command access can be managed with granular permission nodes. The /pradio alias is also available.
✅ Requirements
| Component | Requirement |
|---|---|
| Server software | Paper 1.21.7+ |
| Java | Java 21 |
| Player client | Vanilla Minecraft or the optional Proximity Radio Client |
| Optional plugins | WorldGuard, PlaceholderAPI |
Purpur builds based on a compatible Paper version are expected to work, but Paper is the tested target. Spigot is not supported.
📁 Add a track. 📦 Build the pack. 📻 Place the radio.
The server keeps the timeline. Each radio keeps its own state. Every listener hears the version their client supports.

