ChatManager, introduced in PEX 1.13, offers reliable "out of the box" functionality of a conventional chat plugin like a iChat or HeroChat. ChatManager offers basic chat customization such as chat colours and prefixes/suffixes, as well as a per user/group message format and a ranged chat with global chat mode.
ChatManager now supports Multiverse fancy world aliases in chat!
ChatManager is disabled by default
To enable ChatManager after it is installed, you will need to edit the default config.yml in the ChatManager directory and set
An example ChatManager config file:
enable: true chat-range: 100.0 display-name-format: '%prefix%player%suffix' global-message-format: <%prefix%player%suffix> &e%message message-format: <%prefix%player%suffix> %message ranged-mode: false
|enable||false||Determines if ChatManager is enabled or not|
|ranged-mode||false||Enables Ranged Mode, a special mode in which chat messages have limited range. For more details look at the Ranged Mode section|
|chat-range||100||Amount of blocks in which a chat message can be heard. Only used if ranged mode is enabled|
||Default message format. For placeholders look into Message Format Placeholders section.|
||Message format for Global Messages. For more details, look at the Ranged Mode section.|
It's also possible to specify user/group specific settings. For example, for only specific groups, you can enable Ranged Mode, change their chat range, or specify their message format. They are almost identical to Configuration properties. If not specified than values from configuration file would be used.
|force-ranged-mode||Enables Ranged Mode for specific user/group.|
|chat-range||Chat range for user/group, in blocks.|
|message-format||Default message format|
|global-message-format||Message format for global messages.|
/pex group Admins set message-format "&4[admin] &f%player: %message"
This will set
message-format for group Admins (and subgroups) only to
&4[admin] &f%player: %message.
ChatManager also has a few permissions:
|chatmanager.chat.global||Permission to send global messages when ranged mode enabled.|
|chatmanager.chat.color||Permission to use color codes in chat message. Example:
|chatmanager.chat.magic||Permission to use the 'magic' &k color code in chat message. Example:
|chatmanager.chat.bold||Permission to use the &l color code to embolden text. Example:
|chatmanager.chat.strikethrough||Permission to use the &m color code to strikethrough text. Example:
|chatmanager.chat.underline||Permission to use the &n color code to underline text. Example:
|chatmanager.chat.italic||Permission to use the &o color code to italicize text. Example:
|chatmanager.override.ranged||Permission to override/ignore the ranged chat setting. If this is not explicitly disabled for groups that have * permissions, all chat messages will be sent globally (but will not be coloured as such)|
ChatManager contains a Ranged Mode feature. When this mode is enabled, any message is limited by the specified range (default range is 100 blocks). What this means is that a message can be seen only if a player is with the specified range of the player who typed the message (think of someone who too far away to hear someone else talking).
ChatManager also includes a Global Message feature which requires a special permission (
chatmanager.chat.global) node to use this ability. Global Messages are messages that are not limited by range.
To send a global message, you have to type the exclamation "!" mark (otherwise known as a bang) before the message text.
!Hi everyone, i have good news for you!.
Global Messages also have their own message format and are colured orange by default. Check
global-message-format configuration property for details.
These are the placeholders/server variables that PEX supports and assumes are available. If another plugin offers others, such as essentials nickname function (
%displayname), they can be added to the config file.
||World the sender is in. If Multiverse is enabled, the colored alias of the world will be used.|
ChatManager also has time placeholders which are based on the php date() function. Note that only the time related placeholders are implemented.
||24-hour format of an hour with leading zeros:
||Minutes with leading zeros:
||12-hour format of an hour with leading zeros:
||Seconds, with leading zeros:
||24-hour format of an hour without leading zeros:
||Lowercase Ante meridiem and Post meridiem:
||12-hour format of an hour without leading zeros:
||Uppercase Ante meridiem and Post meridiem: