Sueta

Voice

1.0.1

Local chat made simple

·Plugin

Welcome to Voice, a simple yet customisable local chat / range chat plugin.

Many users I have spoken to have requested local (ranged) chat for my other popular plugin MultiChat . It is possible to use the local chat featured in other plugins such as EssentialsX Chat, but this has been deemed not fit for purpose by many.

As such, I have written this very lightweight plugin to provide servers with customisable local chat.

I do not plan to spend any great amount of time on this plugin at all, but I will try to maintain its functionality across versions, and potentially add enhanements here or there. It is largely provided "as-is".

Here is the rundown:

  • Using the /voice command players can switch between "voice" mode (local ranged chat), and "regular" mode (server-wide chat). They would need the voice.use permission to do this.
  • You can configure the formats for the local voice chat, and also for the regular chat in the config file. You can use the %DISPLAYNAME% and %NAME% placeholders, alongside other placeholders from other plugins like {jobs}, {multichat_nickname} etc. (Voice does not yet have direct support for Vault, but you should be able to use Vault placeholders such as prefixes via another plugin such as MultiChat. You can use MultiChat to create a custom placeholder like {multichat_prefix})
  • Voice features the ability for some players to increase the range of chat they can see using /voice <radius>. They would need the permission voice.setradius. You can set a maximum radius in the config file.
  • Voice also allows your staff members to spy on all local chat with the /voice spy command (they need the voice.spy permission).
  • You can reload the plugin config with /voice reload (voice.reload permission)
config.yml
############################################################  
 # +------------------------------------------------------+ #  
 # |                        Voice                         | #  
 # +------------------------------------------------------+ #  
 ############################################################  

 # By Revilo410  

 ##################  
 #   DON'T EDIT   #   
version   :   "1.0"     #  
 ##################  

 # 1. General  
 # 2. Messages  

 ############################################################  
 # +------------------------------------------------------+ #  
 # |                       General                        | #  
 # +------------------------------------------------------+ #  
 ############################################################  

 # Should voice set the chat format for voice messages?   
set_voice_chat_format   :  true 

 # Chat format for voice messages  
 # You can use: %NAME%, %DISPLAYNAME%  
 # This will also support other placeholders like {multichat_nickname}   
voice_chat_format   :   "&3[&bL&3] &f%DISPLAYNAME%&f: "  

 # Format for spied on messages  
 # You can use: %NAME%, %DISPLAYNAME%  
 # You can also use %FORMAT% to mimic the original message format!  
 # NOTE: You cannot use custom placeholders here as spied on messages are handled separately   
voice_spy_format   :   "&b[&3SPY&b] &f%DISPLAYNAME%&f: "  

 # Should voice set the chat format for regular messages?   
set_regular_chat_format   :  true 

 # Chat format for voice messages  
 # You can use: %NAME%, %DISPLAYNAME%  
 # This will also support other placeholders like {multichat_nickname}   
regular_chat_format   :   "&5[&dG&5] &f%DISPLAYNAME%&f: "  

 # This is the default chat radius assigned to players   
default_radius   :  10 

 # This is the max radius for players with the voice.setradius permission   
max_radius   :  50 

 # Should players start off in voice mode by default?   
default_to_voice_mode   :  true 

 # Should players be forced into the default mode every time they join?   
force_default_mode_on_join   :  false 

 ############################################################  
 # +------------------------------------------------------+ #  
 # |                       Messages                       | #  
 # +------------------------------------------------------+ #  
 ############################################################  
 
prefix   :   "&8(&7Voice&8)&f "  
 
messages  :  
  config  :  
    reload   :   "&aConfig Reloaded!"   
    permission   :   "&cYou do not have permission to do this!"   
  voice  :  
    only_players   :   "&cOnly players can use this command!"   
    voice_mode   :   "&aNow in voice mode... [Radius = %SPECIAL%]"   
    regular_mode   :   "&bNow in regular mode..."   
    custom_radius_permission   :   "&cYou do not have permissin to set the radius!"   
    radius_not_allowed   :   "&cSorry, this radius is not allowed! [Max = %SPECIAL%]"   
  spy  :  
    enabled   :   "&aSpy mode enabled, you will see all voice messages"   
    disabled   :   "&bSpy mode disabled"   
    permission   :   "&cYou do not have permission to do this!"
Permissions
voice.use - Use the /voice command to switch modes 
voice.setradius - Set the radius within which you will see messages with /voice <radius> 
voice.spy - Use the /voice spy command to see all chat server-wide even if not in the radius 
voice.reload - Reload the voice config file

I think that is essentially everything about how it works! If you have any issues please feel free to hop over to the MultiChat Discord to seek support from me: https://discord.gg/PVreERC

You can also use the discussion pages here on Spigot, BUT PLEASE DO NOT USE REVIEWS TO SEEK SUPPORT! This is not their purpose. If you speak to me then I will be more than happy to help you :)

I hope that this plugin will be useful to many of you! Thanks as always for your support.

~ Revilo

Similar projects

Plugin →