DynamicChatLite |1.6-1.16+| Custom ChatFormats and Join/Quit! icon

DynamicChatLite |1.6-1.16+| Custom ChatFormats and Join/Quit! -----

Simple Lightweight Chatmanager with JSON Formats!



This is a simple light ChatManager plugin
(There will be a premium version of this plugin when it's ready!)


I do not plan on releasing updates for this plugin.
(Except for Minecraft Updates)
But it doesn't mean it won't happen!


(If there are ANY BUGS please report them on my discord)
[​IMG]


[​IMG]


/dynamicchat help : Lists the subcommands available for
this command
/clearchat : Clears chat for all players
/globalmute : Globally mutes chat for all players
/broadcast : Broadcasts a message across the server
/message : Message a player! (Does Override Essentials Messaging or any
other /message command, toggle-able in config)
/reply : Reply to a player that messaged you! (Same thing as Message command)
[​IMG]
[​IMG]
[​IMG]
All commands have tab completion
Some commands have TextBased interfaces as shown
in the
"Commands Preview" Spoiler


[​IMG]
Code (Text):

#[p] = Colors/Prefix
#[e] = Colors/Error-Prefix
#[c] = Colors/Default
#[i] = Colors/Important
Chat:
  enabled: true
  announceGlobalMute: true
  unknownCommand: '[c]Unknown command try /help for a list of commands'
  #Default Mute reason
  defaultMute: '[c]Bad'
  Override:
    message: true
    reply: true
  logging:
    antiswear: true
    links: true
  Slow:
    enabled: true
    time: 2.5
Colors:
  #To use Prefix elsewhere, do: [p]
  #To use ErrorPrefix elsewhere, do: [e]
  #To use Default elsewhere, do: [c]
  #To use Important elsewhere, do: [i] (or [pc])
  Prefix: '[i]ChatManager[c]: '
  Error-Prefix: '[i]Error[c]: '
  Broadcast-Prefix: '[c][[i]Broadcast[c]]&7:'
  Default: '&7'
  Important: '&9'
  Argument:
    #In the command required is <<argument>>
    Required: '&b&l'
    #In the command default is <argument>
    Default: '&7'
    #In the command optional is [<argument>]
    Optional: '&6'


AutoBroadcast:
  enabled: false
  #Does this broadcast to console
  informConsole: false
  #Interval in seconds (how long in between messages)
  interval: 10
  messages:
    - '[i]Broadcast[c]: this is the first broadcast that was sent automatically'
    - '[i]And this is the second one'






MessageFormat:
  sender:
    #{receiver}/{0} = The Target, {message}/{1} = The message
    part1:
      text: '[c][[i]You [c]->[i] {receiver}[c]]'
      hover: '[c]Click to suggest: ''/[i]reply [c]'''
      suggest: '/reply '
    part2:
      text: ' {message}'
  receiver:
    #{sender}/{0} = The Message initiator, {message}/{1} = The message
    part1:
      text: '[c][[i]{sender} [c]->[i] You[c]]'
      hover: '[c]Click to suggest: ''/[i]reply [c]'''
      suggest: '/reply '
    part2:
      text: ' {message}'


Messages:
  onSocialSpy:
    #{sender}/{0} = The Sender's name, {receiver}/{1} = The Receiver's name, {message}/{2} = The message they sent
    message: '[c][[i]{sender}[c] -> [i]{receiver}[c]] {message}'
    click: '/tp {sender}'
    hover: '[c]Click to run: [i]/tp {sender}'
  slow-Message: '[c]You must wait [i]{time}[c] seconds before chatting again'
  Error:
    invalid-Item: '[c]Invalid item.'
    globallyMuted: '[c]Chat is currently muted.'
    #{time}/{0} = Time until unmuted
    muted: '[c]You are muted for [i]{0}'
 
Code (Text):

#-------------------------
#
#      DefaultFormat
#
#-------------------------
#default:
#  Permission to use is  chatformats.<groupname>
#  #The lower it is, the higher priority
#  rank: 0
#  part1:
#    #Uses MVdWPlaceholders as well as PlaceHolderAPI
#    #If you don't have either, You can use {player} or {displayname}
#    #Just vault placeholders: {vault_group}, {vault_groups}, {vault_rank}, {vault_ranks}, {vault_prefix}, {vault_suffix}
#    #PermissionsEx: {vault_group}, {vault_groups}, {vault_rank}, {vault_ranks},
#                    {vault_prefix}, {vault_prefixes}, {vault_suffix}, {vault_suffixes}
#    text: '&e{player}'
#    #command: '/info {player}'
#    #insert: ' Hello' #Current chatbar message + this
#    suggest: '/msg {player} ' #Sets the message in chatbar
#    hover: '[c]Click to insert: /msg {player}'
#  part2:
#    #You can use {message} or %message%
#    text: '&8&7 %message%'
#  You can have up to 3 parts
#  but it must start with 'part' and it must have the 'text' key
#  Example:
#    part1: #Works
#      text: 'ha'
#    part2: #Works
#      text: 'ha'
#    partMessage: #Works
#      text: 'ha'
#    tim: #Doesn't work
#      text: 'ha'
#    tom: #Doesn't work


#NOTICE: MAX AMOUNT OF MESSAGE PARTS IS 3
#NOTICE: MAX AMOUNT OF MESSAGE PARTS IS 3
#NOTICE: MAX AMOUNT OF MESSAGE PARTS IS 3
#NOTICE: MAX AMOUNT OF MESSAGE PARTS IS 3
#NOTICE: MAX AMOUNT OF MESSAGE PARTS IS 3
#NOTICE: MAX AMOUNT OF MESSAGE PARTS IS 3
#NOTICE: MAX AMOUNT OF MESSAGE PARTS IS 3
#NOTICE: MAX AMOUNT OF MESSAGE PARTS IS 3
#NOTICE: MAX AMOUNT OF MESSAGE PARTS IS 3


JSONItem:
  #{name}/{0} = The item display name, {amount}/{1} = The item amount
  format: '[i]{0}[c] x[i]{1}'
  tooltip: true
  #Toggles [item/i]
  enabled: true

Chat:
  #If false, it will convert the group into plain text.
  useJSON: true
  Formats:
    owner:
      rank: 0
      part0:
        text: '&4OWNER'
        hover: 'I AM OWNER'
      part1:
        text: '&e{displayname}'
        suggest: '/msg {player} '
      part2:
        text: '&8:&7 %message%'
    default:
      rank: 1
      part1:
        text: '&e{displayname}'
        suggest: '/msg {player} '
      part2:
        text: '&8:&7 %message%'
Join:
  useJSON: true
  enabled: true
  allowDefault: false
  Formats:
    default:
      rank: 0
      part1:
        text: '&e{displayname}'
        suggest: '/msg {player} '
      part2:
        text: ' &7has joined!'

Quit:
  useJSON: true
  enabled: true
  allowDefault: false
  Formats:
    default:
      rank: 0
      part1:
        text: '&e{displayname}'
        suggest: '/msg {player} '
      part2:
        text: ' &7has left!'
 
Code (Text):

Error:
  player-Command: '[c]This command is for players only.'
  more-Arguments: '[c]Please provide more arguments.'
  #{number}/{0} = Attempted Number
  invalid-Number: '[c]That is an invalid number.'
  #{player}/{0} = The PlayerName
  invalid-Player: '[c]That player is invalid.'
  #{permission}/{0} = The required permission
  invalid-Permission: '[c]You do not have permission to execute this command. &7&o({0})'
  no-Replier: '[c]You don''t have anyone to reply to ;-;'
  toomany-Arguments: '[c]Too many arguments.'
  unknownCommand: '[c]Unknown subcommand!'


#C
Chat:
  #{sender}/{0} = The Senders Name, {toggled}/{1} = Enabled/Disabled
  GlobalMute: '[p]Chat has been [i]{toggled}[c] by [i]{sender}[c].'
  Permissions:
    header: '[c]&l&m----------------------'
    footer: '[c]&l&m----------------------'
    next: '[i]>>'
    text: '[c]([i]{page}[c]/[i]{total}[c])'
    previous: '[i]<<'
    disabledNext: '&7>>'
    disabledPrevious: '&7<<'
  Reload: '[p]DynamicChat: reloaded'
  Slow:
    #{number}/{0} = The new Delay
    setDelay: '[p]ChatSlow delay is now [i]{number}[c]'
    #{toggled}/{0} = Enabled/Disabled
    toggle: '[p]ChatSlow has been [i]{toggled}[c].'

#{sender}/{0} = The Senders Name
ClearChat: '[p]Chat has been cleared by [i]{sender}[c].'

#S
SocialSpy:
  Self:
    noChange: '[p]SocialSpy is already [i]{toggled}[c]'
    toggle: '[p]SocialSpy has been [i]{toggled}[c].'
  other:
    multiple:
      #{players}/{0} = The Players for the corresponding message
      unknown: '[p]Unknown players: [i]{players}[c].'
      nothing: '[p]Nothing has changed for: [i]{players}[c].'
      #{players}/{0} = The Players for the corresponding message, {toggled}/{1} = Enabled/Disabled
      updated: '[p]SocialSpy has been [i]{toggled}[c]: [i]{players}[c].'
 



[​IMG]

This is a lite version of
(has yet to release < this text will be gone when it releases)
DynamicChat.

This plugin allows you to use JSON or normal chat for the formats.
It's super easy to create/edit a format.
[​IMG]

(Other chat plugins can override the join/quit messages)
[​IMG]
No extra plugins required!

You can do things such as or [item]
which will display the current item in the players hand.
(Other chat plugins can override the chat)
[​IMG]


Any player can type a link and have it go through.
(Links also become hoverable)
[​IMG]



To view permissions do /dynamicchat permissions





[​IMG]


Supports

[​IMG]
[​IMG]
[​IMG]


Defaults:
{vault_group} • Player Primary group via Vault/PermissionsEX
{vault_groups} • All Player groups via Vault/PermissionsEX
{vault_rank} • Player Primary group via Vault/PermissionsEX
{vault_ranks} • All Player groups via Vault/PermissionsEX
{vault_prefix} • Player Primary Prefix via Vault/PermissionsEX
{vault_prefixes}Player Primary Prefixes via PermissionsEX
{vault_suffix}Player Primary Suffix via Vault/PermissionsEX
{vault_suffixes}Player Primary Suffix via PermissionsEX

{player} • Player Name via Minecraft
{displayname} • Players DisplayName via Minecraft
{message} • Player Message via Minecraft





[​IMG]


ChatFormats (JSON & Normal)


GlobalMute

Chat Slow

SocialSpy

Message Command

LogIn/Out Messages

JSON Broadcast








[​IMG]



Feel free to leave a review!
Resource Information
Author:
----------
Total Downloads: 257
First Release: Jan 15, 2021
Last Update: Apr 22, 2021
Category: ---------------
All-Time Rating:
1 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings