Skip to content

Placeholder {shoutchat} not working #10392

Description

@moda84

Description of Issue

Placeholder {shoutchat} not working

Image Image

Version Information

cmi version
[14:45:10 INFO]: --------------------------------------------------
[14:45:10 INFO]: Версия плагина CMI: 9.8.9.6 SqLite
[14:45:10 INFO]: CMILib: 1.5.9.9
[14:45:10 INFO]: Версия сервера: Folia(1) 26.2.build.1-beta-
[14:45:10 INFO]: CMI Экономика: Disabled Версия Vault: 2.19.1CMI Чат: Enabled
[14:45:10 INFO]: Модули -> 68 включено 3 отключено: tablist, votifier, skin
[14:45:10 INFO]: --------------------------------------------------

Errors

Relevant Config Sections

Chat:
  # When enabled newer system for chat handling will be utilized
  # Recommended to keep this enabed if you have compatible server 
  # This only applies to Paper 1.17+ servers
  # Full server restart is needed while switching between different use types
  UsePaperType: true
  ModifyChatFormat:
    # Will try to modify chat to display it in defined format
    # If this is disabled and you have 3rd party plugin handling chat messages, consider disabling ClickHoverMessages section too if you notice any problems with chat formatting
    Enabled: true
    # When set to true, regular and private messages (excludes clean messages) will have additional information when hovering over it (PlaceHolderAPI supported) and can be clicked for quick reply option
    # To change default hover over messages seen on sent message, go to your locale file to Chat section
    # Has no effect if UsePaperType is enabled
    ClickHoverMessages: true
  DiscordSRV:
    # Enables support for DiscordSRV plugin
    Enabled: true
    # Defines name of global chat channel in discordsrv
    GlobalChannel: global
    # Indicator which can be used as {discord} in chat format to indicate that message came from discord and not ingame
    Label: '&2[&7D&2]'
    UnlinkedLabel: '&4[&cD&4]'
    # When enabled and you have ranged messages enabled, we will send all of them to DiscordSRV
    # When disabled, only shouts and messages sent by players with cmi.chat.rangebypass permission node will be visible in discord
    RangedMessages: false
  # Enables support for DynMap web chat
  DynMapChat: true
  # When set to false, each time you will use /r you will reply to person you previously sent message directly or to person who sent you message if there is none you have conversion before
  # When this set to true, players with /r will reply to person who last sent private message. This can result in confusion when using /r while getting private messages from multiple players
  ReplyToLastMessenger: false
  # If ReplyToLastMessenger is set to false, then timeOut will be taken into consideration to who you should reply
  # If you had conversation in last 120 seconds (default) then even receiving message from 3rd person, you will still reply to original player
  # If you had conversation in longer then 120 seconds period, then you will reply to latest person who send you a message
  LastMessengerTimeOut: 120
  # When set to true players will need to have cmi.command.msg.[groupname].send where [groupName] is receivers main permission group
  PrivateMessagesGroups: false
  # When set to false, web pge links in a chat will not get shortened to default [LINK] format
  TranslateLink: true
  # Defines regex when replacing url in chat with short word
  # Examples:
  # (https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9]\.[^\s]{2,})
  # ((http|https|ftp|ftps)\:\/\/)?[a-zA-Z0-9\-]+\.[a-zA-Z]{2,3}(\/\S*)?
  # ((http|https|ftp|ftps)\:\/\/)?[a-zA-Z0-9\-]+\.[a-zA-Z]{2,3}(\/\S*)?([^\s]+)
  LinkRegex: (^| )((http|https|ftp|ftps)\:\/\/)?[a-zA-Z0-9\-]+\.[a-zA-Z]{2,3}(\/\S*)?([^\s|^\)]+)
  HoverItems:
    # When set to true, particular variables in chat will be translated into items player are holding. List of variables belove
    Enabled: true
    # When enabled item into chat will be replaced with an icon of that item, this only applies to items and not blocks, as not all blocks have associates sprites we could reliably utilize
    ReplaceWithIcon: true
    # Defines regex when replacing item line in chat with players item in hand information. Only works when CMI hover over chat format is enabled
    # Use (\[item(?::(\w+))?\]) if you want to allow [item:helmet] or [item:5], when defining this type of regex, second group needs to contain custom value
    # Potential custom values are [item:mainhand] [item:offhand] [item:helmet] [item:chestplate] [item:pants] [item:boots] and [item:0-40] where number value is between 0 and 40 indicating inventory slot
    # Use (\[item\]) for simple [item] detection
    ItemRegex:
    - (\[item\])
    - (([&§]\S)+)?\[(([&§]\S)+)?i(([&§]\S)+)?t(([&§]\S)+)?e(([&§]\S)+)?m(([&§]\S)+)?\]
  Bungee:
    # Attention! This will require you to have CMI Bungee plugin which can be found at zrips.net
    # Or direct download https://www.zrips.net/cmi/
    # Do you want to enable private messaging over bungeecord
    # Bungee cord support needs to be enabled for this to have any effect
    Messages: false
    # Do you want to enable public messaging over bungeecord
    # Player needs to have cmi.bungee.publicmessages.[servername] permission node to be able to send messages to target server
    PublicMessages: false
    # When enabled public messages addressed to single player will be ignored and not sent across networkd
    # This only applies when we have more than one player online and chat range is set to be global
    PublicMessagesSingleIgnore: false
    # Do you want to enable staff messaging over bungeecord
    StaffMessages: false
  # Used for simple chat messages. Optional variables: {displayName} {world} {prefix} {suffix} {group} {shout} {shoutcolor} {message} {nicknameprefix}. Supporting PlaceHolderAPI variables like %player_server% %cmi_user_chatcolor%
  # As of 1.21.9 Paper servers you can include {head} to add players head icon
  # ATTENTION! Don't use gradient colors for {message} variable, if you want to apply gradient for it, utilize GeneralMessageFormat section
  GeneralFormat: '{prefix}&f{displayName}&7: &r{message}'
  # Will define message format itself, this allows to have gradients in messages
  # It NEEDS to contain {message} otherwise we will ignore this setup
  # For 1.16+ servers you can use color gradients like '{#b3a28f>}{message}{#d7b8e6<}'
  # You can have more than 2 colors in gradient. To define it repeat {message} variable. For example '{#b3a28f>}{message}{#5c6999<>}{message}{#d7b8e6<}'
  # Use %cmi_user_chatcolor% to add players choosen chat color
  GeneralMessageFormat: '{message}'
  Ranged:
    # Defines range of regular messages to travel
    # Set to -1 to disable range restriction
    General: 200
    # Defines range of shout messages to travel
    # Shout messages should start with ! and player should have cmi.chat.shout permission
    # GeneralRange should be enabled
    # set to 0 to shout across all worlds, -1 to disable
    Shout: 0
    # Color code to be used as base for the shout chat message
    ShoutColor: '&7'
    # Defines cost for each shout message
    ShoutCost: 0
    # List of message range limits
    # Player count fallowed by range
    # Player amount defines from how many we should use this range
    Dynamic:
      Use: false
      Limits:
      - 1-0
      - 10-1000
      - 20-500
      - 30-400
      - 40-300
      - 50-200
  # Prefix used to indicate that message should be sent to public chat instead of current players chat room
  # Set it to empty field if you want this feature to be disabled
  ChatRoomShout: '!'
  # Time in seconds you want to keep chat rooms alive before removing them
  # This only applies to empty rooms after last user leaves it
  ChatRoomLife: 3600
  # Defines suggested commands when you click on public, private and similar messages. [playerName], [playerDisplayName] and [playerNickName]  can be used to include players name
  ClickSuggestions:
    pubmsg: '/msg [playerNickName] '
    privmsg: '/msg [playerNickName] '
    staffmsg: '/msg [playerNickName] '
    helpop: '/msg [playerNickName] '
    chatroom: '/msg [playerNickName] '
    discord: '/msg [playerNickName] '
  # Defines command (one command per type) to be performed by player when clicked on players name
  # When this is defined then ClickSuggestions will be changed to shift+left click action for suggested command
  # Command is performed as player, if you want to perform it from console then add asConsole! variable at the start of it
  ClickCommands:
    pubmsg: ''
    privmsg: ''
    staffmsg: ''
    helpop: ''
    chatroom: ''
    discord: ''
  # Use numeric increments to separate groups from each other. If player has more than one, then line with higher number will be used
  # Add as many lines as you need too
  # cmi.chatgroup.[id] permnission node to use
  # Permission example: cmi.chatgroup.2

  # ATTENTION! Don't use gradient colors for {message} variable, if you want to apply gradient for it, utilize GroupMessageFormat section
  GroupFormat:
    '1': '{prefix} &7{displayName}&8 > &7{message}'
    '2': '{prefix} &7{displayName}&8 > &7{message}'
    '3': '&7{displayName}&8 > &7{message}'
  # Use numeric increments to separate groups from each other. If player has more than one, then line with higher number will be used
  # Add as many lines as you need too
  # cmi.chatmessagegroup.[id] permnission node to use
  # Permission example: cmi.chatmessagegroup.2
  GroupMessageFormat:
    '1': '{message}'
    '2': '{message}'
    '3': '{message}'
  Colors:
    PublicMessage:
      # If set to true then all public messages will be filtered from color codes and will allow to colorize them with appropriate permission node
      # cmi.colors.publicmessage.[colorName]
      # Colors: black(&0), darkblue(&1), darkgreen(&2), darkaqua(&3), darkred(&4), darkpurple(&5), gold(&6), gray(&7), darkgray(&8), blue(&9), green(&a), aqua(&b), red(&c), lightpurple(&d), yellow(&e), white(&f), magic(&k), bold(&l), strikethrough(&m), underline(&n), italic(&o), reset(&r)
      Enabled: true
    PrivateMessage: true
    # If set to true then /me messages will be filtered from color codes and will allow to colorize them with appropriate permission node
    # cmi.colors.me.[colorName]
    me: true
    # If set to true, then color codes will get removed from text instead of leaving them if player don't have appropriate permission node for that color
    CleanUp:
      publicmessage: true
      privatemessage: true
      me: true
      signs: false
      books: true
      itemname: true
      itemlore: true
      # List of strings to ignore when checking chat for color codes player cant use.
      # This will bypass players colorcode restrictions and will allow usage of particular chat formats
      # Applies only for public and private messages
      WhiteList:
      - '&c❤&7'
    # If set to true then nickName will be filtered from color codes when player changes it
    # cmi.colors.nickname.[colorName]
    NickName: true
    # Determines /cmi chatcolor command contents. What player can pick will be determined by cmi.colors.publicmessage.[colorCode] and will be used in %cmi_user_chatcolor% placeholder
    Picker:
    - '&f'
    - '&2'
    - '&3'
    - '&7'
    - '&8'
    - '&a'
    - '&b'
    - '&c'
    - '&e'
    - '&6'
    - '{#00e625}'
    - '{#brown}'
  # If set to true, players public message who is in your ignore list will not be shown
  IgnorePublicMessage: true
  Tag:
    # Enable or not tag system. This will inform player with his name mentioning in public chat if name have @ in front of it
    Enabled: true
    # When this is set to true, any player mentionings in public messages will be colorized and player will get informed as usual
    # This is allot more heavier on server than usual tagging with @, so enable if you know what you are doing
    HardCoreMode: false
    # Determines color of taged user name in chat with @ in front of name/nickname. Sender should have cmi.tag.color
    Color: '&c'
    # Commands to be performed when player is tagged
    # Variables like [playerName] will be replaced with tagged player name
    # You can use [senderName] to include player name who tagged
    CommandsOnTag:
    - asConsole! cmi sound BLOCK_NOTE_BLOCK_HARP:3:1 [playerName] -s
    # Will performd tag commands only when player is afk
    OnlyWhenAfk: false
    # When set to true, @ simbol will be removed
    RemoveEta: false
ChatBubble:
  # Do you want to enable chat bubbles for public messages
  # Each player can disable this with /options command personally
  PublicMessages: true
  # How high we should show chat bubble
  Offset: 2.5
  # Base time in seconds for chat bubble to be visible
  ShowFor: 5
  # Maximum time bubble will be shown for
  MaxShowFor: 10
  # Extra seconds to be added for each letter in a message
  # This will allow to have shorter times for short messages and increase it for longer ones
  ExtraTime: 0.02
  # Scale of chat bubble, default 1
  PlateScale: 1
  # Line width before wraping text to new line
  LineWidth: 255
  Background:
    # Default Color code, this could be overriden if text itself was colorized
    # Leave it empty for default transparent color
    # Example of color code: {#black}
    Color: '{#black}'
    # Value between 0 and 1 where 0 means no background color and 1 is fully opaque
    Opacity: 0.5
  # Do you want to add text shadow
  Shadow: true
  # Higher group will be prioritized if player has access to more than one permission node
  # Colors are defined in hex format with optional alpha channel in RGBA format
  Groups:
    '0':
      BackgroundColor: '#000000DC'
      Shadow: true
      LineWidth: 255
      Scale: 0.5
    '1':
      BackgroundColor: '#AEC6FFDC'
      Shadow: true
      LineWidth: 255
      Scale: 0.5
    '2':
      BackgroundColor: '#BAFFC9DC'
      Shadow: true
      LineWidth: 255
      Scale: 0.5
    '3':
      BackgroundColor: '#FFFFBADC'
      Shadow: true
      LineWidth: 255
      Scale: 0.5

Relevant Plugins

Vault: 2.19.1, PlaceholderAPI 2.12.3

Agreements

  • My server is supported by CMI.
  • My version of CMI at the time of this report is up to date.
  • I have searched the github and asked around before making this report.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bug reportReports of bugs/inconsistencies

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions