-
Notifications
You must be signed in to change notification settings - Fork 0
Radios & Transmitters
Samuel De Oliveira edited this page Sep 30, 2026
·
3 revisions
The Radios & Transmitters module provides multi-channel frequency communication (walkie-talkies) with analog audio DSP filtering, push-to-talk mic clicks, and point-to-point directional transmitters across both Paper / Purpur and Fabric.
- Infinite range communication on specified frequency names (e.g.,
145.5,police,ops). - Any player tuned into the channel hears transmissions regardless of world coordinates.
- Transmissions over radio automatically pass through an analog band-pass filter (300 Hz - 3400 Hz), delivering authentic communication audio.
- Push-to-talk (PTT) start and end mic-click sound effects play when speaking and releasing.
- Transmitters broadcast speech to specific receiver lists with optional range restrictions.
- Useful for intercoms, megaphones, or team squad radios.
| Command | Permission | Description |
|---|---|---|
/radio join <channel> |
dreamvoice.radio.use |
Tunes into a frequency channel. |
/radio leave |
dreamvoice.radio.use |
Disconnects from active frequency channel. |
/radio list |
dreamvoice.radio.list |
Lists all active radio frequency channels. |
/radio remove <channel> |
dreamvoice.radio.admin |
Deletes a radio frequency channel. |
/transmitter toggle |
dreamvoice.transmitter.use |
Toggles transmitter mode on or off. |
/transmitter add <player> [dist] |
dreamvoice.transmitter.edit |
Adds a player to direct transmission list. |
/transmitter remove <player> |
dreamvoice.transmitter.edit |
Removes a player from transmission list. |
import fr.dreamin.dreamvoice.api.DreamVoiceAPI;
import fr.dreamin.dreamvoice.api.radio.service.VoiceRadioService;
import fr.dreamin.dreamvoice.api.radio.model.RadioChannel;
import fr.dreamin.dreamvoice.api.transmitter.service.VoiceTransmitterService;
import java.util.UUID;
VoiceRadioService radioService = DreamVoiceAPI.get().radioService();
VoiceTransmitterService transmitterService = DreamVoiceAPI.get().transmitterService();// Ensure channel exists and tune player in:
RadioChannel channel = radioService.getOrCreateChannel("145.5");
radioService.joinChannel(playerUuid, "145.5");
// Disconnect player:
radioService.leaveChannel(playerUuid);// Enable transmitter mode on a player:
transmitterService.createTransmitter(officerUuid);
// Add receiver with 32-block radius:
transmitterService.addReceiver(officerUuid, targetUuid, 32.0f);Companion walkie-talkie items and radio station blocks on Fabric can interface seamlessly using packets:
ServerBoundRadioCreatePacketServerBoundRadioJoinPacketServerBoundRadioLeavePacketServerBoundTransmitterCreatePacketServerBoundTransmitterTogglePacket
For full packet documentation, see Network Packets & Protocols.