New features:
• Added /perfvoicemute globaltoggle for admins to turn server-wide voice chat on or off
• When disabled, players cannot speak or hear voice chat unless they have the admin bypass permission
• Toggle sends a chat broadcast and action bar message to everyone online
• Players who try to speak while voice chat is off see an action bar reminder
• Global voice state is saved in config and persists across restarts and reloads
• The plugin now starts on servers without Simple Voice Chat installed
• Voice mute commands and logs still work when LuckPerms is present
• Simple Voice Chat features activate automatically once the voice chat plugin is installed
Bug fixes:
• Accept/decline in the rules GUI now records consent in the shared database even when LuckPerms cannot be updated on that backend, so the GUI is not shown again on other servers after a one-time choice
•/voicerules revokenow clears the stored consent flag so players can be prompted again (previously it incorrectly marked consent as resolved)
Improvements:
• New message when the network stored your choice but this server could not apply voice permissions
Improvements:
• Mute duration text (units, “0 seconds”, remaining line, expired) is read from messages.yml so servers can translate it instead of fixed English in notifications, /voicecheck, /voicelog, and voice automod messages
New features:
• Join-time voice chat consent flow using a configurable inventory GUI with Accept, Decline, and a Rules item explaining recording, conduct, age requirement, and how to revoke consent
•/voicerules(aliassvcrules) opens the rules GUI so players can review terms and accept again after declining or revoking
•/voicerules revokewithdraws consent and removes voice transmit permission until the player accepts again through the GUI
Technical:
• New permissionperfvoicemute.voicechat.gui(default true) for opening the consent/rules GUI; consent feature can be toggled undervoice-consent-guiinconfig.yml
New features:
• Added a built-in update checker to all Perf plugins
Improvements:
• New config option:update-checker.enabled: true(enabled by default)
