SimplyRadio 📻
Walkie-talkies powered by Simple Voice Chat
Minecraft 1.21.2-1.21.11. Paper and Folia. One jar.
Right-click a radio to switch it on. Anyone else holding an active radio on the same frequency hears you, run through a narrow-band "radio" effect. Everyone needs the Simple Voice Chat client to talk and listen, the same as normal proximity chat.
Getting started
- Install Simple Voice Chat, then drop
SimplyRadio-*.jarinplugins/and restart. /radioto get one (default: op, configurable).- Right-click to toggle on/off. Shift + right-click to open the settings menu.
- Pick a frequency. Talk. Anyone else on that frequency hears you.
Features
- Works on Paper and Folia. One jar, no reload hacks.
- Configurable frequency range (1-50 by default) with a paginated tuning menu.
- Lock a channel with a password. "Hear-only protected" mutes everything on the frequency except password-matched transmissions.
- Real radio DSP on the voice: band-pass EQ, automatic gain control, soft-clip distortion, and static. Every parameter is in the config.
- A frequency-change click, played back through Simple Voice Chat as a real voice packet (not a client sound). Toggle it per-event.
- Global by default, or set
voice.max-range/voice.same-world-onlyfor local radios. - Crafting: as many recipes as you want, shaped or shapeless, each with its own ingredients and output count. Ships with an iron+redstone+name-tag recipe, two more disabled examples.
- All player-facing text takes legacy
&codes or MiniMessage (<gradient>,<#ffaa00>, ...), auto-detected per line. - Custom item: material, name, legacy custom-model-data and modern
item_modeloverride. /radio reloadapplies text, recipe and voice-effect changes without a restart.
Using it
| Action | What it does |
|---|---|
| Right-click | Toggle the radio on / off |
| Shift + right-click | Open the settings menu |
| Menu: frequency button | Tune to that frequency |
| Menu: password button | Type the next chat message as the channel password (off to clear) |
| Menu: hear-only button | Only hear password-protected transmissions on this frequency |
Commands
| Command | Permission | Description |
|---|---|---|
/radio |
simplyradio.give |
Get a radio (drops at your feet if your inventory is full) |
/radio reload |
simplyradio.reload |
Reload config.yml |
Permissions
Each gameplay node is only checked when its permissions.require-* switch in config.yml
is true - by default only /radio is gated, and everything else is open.
| Node | Default | Gated by | Controls |
|---|---|---|---|
simplyradio.give |
op | permissions.require-give (true) |
/radio |
simplyradio.use |
everyone | permissions.require-use (false) |
toggle on/off + open the menu |
simplyradio.frequency |
everyone | permissions.require-frequency (false) |
change frequency |
simplyradio.password |
everyone | permissions.require-password (false) |
set / clear a channel password |
simplyradio.reload |
op | always | /radio reload |
simplyradio.* |
op | - | all of the above |
To restrict retuning, for example: set permissions.require-frequency: true and remove
simplyradio.frequency from the groups that shouldn't have it.
Examples
Give yourself a radio and talk on channel 7:
/radio
Then shift + right-click, click Frequency 7, right-click to switch on.
Lock the channel:
Shift + right-click -> Set channel password -> type "1234" in chat
Local-only radios (config):
voice:
same-world-only: true
max-range: 500
Privacy
A transmission carries live proximity voice from the speaker to everyone on the frequency,
across worlds by default. Channel passwords are a code, not a secret - they are stored in
the radio's item data in clear text. Lock down plugins/SimplyRadio/ and tell people the
server has radios.
SimplyRadio is not affiliated with Simple Voice Chat. It uses the public Simple Voice Chat API to route and filter voice packets.
No gallery available for this project.