Tags
Creators
Details
Licensed GPL-3.0-only
Published 6 days ago
Updated 2 days ago
All versions
1.0.7
Release
DreamVoice 1.0.7last month 2
Uploaded by
Compatibility
Minecraft: Java Edition
26.1.2
Platforms
Paper
Purpur
Spigot
Required content
Changes
Changelog 1.0.7
💾 System Persistence & Storage
- Automatic Lifecycle Persistence: Automatic loading on server startup (
onServerStartedonce Simple Voice Chat API is ready) and automatic saving on server shutdown/plugin disable (onDreamDisable). - Independent JSON Storage: Each voice module persists independently in
plugins/DreamVoice/data/:speakers.json: 3D fixed/mobile speakers, locations, ranges, modes (GLOBAL/RESTRICTED), linked players, and attached entities.wiretaps.json: Spatial wiretaps, positions, listening ranges, attached entities, audio filters, and active listeners.projections.json: Body anchors and vocal projections, audio emission/listening toggles, ranges, and filters.radios.json: Radio frequency channels, Roger Beep settings, audio filters, and connected members.transmitters.json: Transmitter modes and configured receivers with optional max distance ranges.
- Java API Integration:
- New service
VoicePersistenceService(saveAll(),loadAll(),saveSpeakers(),loadSpeakers(),saveWiretaps(), etc.). - Added direct
save()andload()methods on all sub-services (VoiceSpeakerService,VoiceWiretapService,VoiceProjectionService,VoiceRadioService,VoiceTransmitterService).
- New service
🎮 Unified & Harmonized Commands
- New Central Administration Command
/dreamvoice(or/dv):/dv status: Overview of active speakers, wiretaps, radio channels, projections, and VoiceWall mode./dv save [all|speakers|wiretaps|projections|radios|transmitters]: Save specific or all data modules to disk./dv load [all|speakers|wiretaps|projections|radios|transmitters]: Reload data modules from disk./dv reload [all|config|data|<module>]: Reload configuration (config.json), saved data (data/*.json), or everything.
- Consistent Action Verbs Across All Modules:
- Support for both
add/createandremove/deleteacross/speaker,/wiretap,/radio, and/transmitter.
- Support for both
- New Detailed Inspection Commands:
/speaker info <name>: Displays location, attached entity, range, mode, allowed speakers, and playback state./radio info <channel>: Displays channel audio filter, Roger Beep status, and active member list./wiretap info <name>: Displays location, attached entity, range, filter, recording status, and listener count./projection info [player]: Displays full anchor configuration, audio routing, and entity links.
- Enhanced Utility Subcommands:
/radio kick <channel> <player>: Expel a player from a radio frequency channel./transmitter clear: Clear all configured receivers from a transmitter.
- Standardized Cassette Commands:
- Unified parameter ordering: ID/Name first, target player optional (e.g.,
/record cassette <id> [player],/wiretap cassette <name> [player]).
- Unified parameter ordering: ID/Name first, target player optional (e.g.,
🌐 Full English Localization
- Command Feedback & Error Messages: All command output, errors, permission messages, and debug notifications translated to English.
- In-Game Items: Voice Cassette display name (
Voice Cassette), item lore (Author,Duration,ID,▶ Right-Click to play), and interaction feedback translated to English.
⚙️ Code Quality & Performance
- Standardized codebase on modern Java standards (
final varusage, simplified conditionals). - Removed duplicate command logic between
voice airdamping,voicewall airdamping, and config reloaders.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:WRYhkDTs:zUBaYIFd"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:WRYhkDTs:zUBaYIFd"
}

