Getting Started with VoiceEngine
This guide provides step-by-step instructions for deploying VoiceEngine on your Minecraft server infrastructure.
Prerequisites
- Java Runtime: Java 17 or Java 21 (recommended).
- Minecraft Server: Paper or Purpur 1.20.4 or higher (tested on 1.20.6 and 1.21.x).
- Proxy Network (Optional): Velocity 3.4.0 or higher.
- Voice Server (SFU): Linux/Docker server running Node.js 20+ LTS with open UDP ports for WebRTC traffic.
- SSL/TLS Certificates: A valid public domain with HTTPS and WSS configured to permit browser microphone access.
Scenario A: Standalone Server (Paper)
If you are running a single Paper server without a proxy:
1. Plugin Installation
Download VoiceEngine-paper.jar and place it in your Paper server’s plugins/ directory.
2. Generate Configuration
Start the server once to generate the default configuration in plugins/VoiceEngine/config.yml:
voice-server-url: "wss://voice.yourdomain.com/ws/plugin"web-client-url: "https://voice.yourdomain.com"secret-key: "generate-a-secure-random-secret"tick-rate-hz: 10proxy-mode: "false"3. Apply Configuration
Reload or restart the server. You can also run /voice reload to reload configuration on the fly.
Scenario B: Proxy Network (Velocity)
For networks utilizing a Velocity proxy gateway:
1. Velocity Proxy Setup
Place VoiceEngine-velocity.jar into your Velocity proxy’s plugins/ directory. Start Velocity to generate plugins/voiceengine-velocity/velocity-config.yml:
voice-server-url: "wss://voice.yourdomain.com/ws/plugin"web-client-url: "https://voice.yourdomain.com"secret-key: "generate-a-secure-random-secret"token-ttl-minutes: 5notify-on-join: true2. Backend Paper Nodes Setup
Place VoiceEngine-paper.jar into each backend Paper server’s plugins/ directory (Lobby, Survival, Minigames, etc.). Configure plugins/VoiceEngine/config.yml on each server with matching credentials:
voice-server-url: "wss://voice.yourdomain.com/ws/plugin"secret-key: "generate-a-secure-random-secret"proxy-mode: "true"server-id: "survival-1"Verifying Connection
- Join your Minecraft server using a vanilla Java Edition client.
- Type
/voicein chat (or/voice-velocityon proxy console). - Click the generated link in chat:
https://voice.yourdomain.com/?token=A3B9X1
- Allow microphone access when prompted by the browser. You will see the live radar HUD and your active voice status.
- In the server console, run
/voice statusto confirm active WebSocket communication with the backend voice server.