xChat

An advanced chat plugin with formatting, ignore, and PMs/MSG

317

Quick challenge

How far can you run before the mobs catch you?

xChat

banner

xChat - Your Ultimate Chat Solution

`〢Use ProtocolLib`

xChat - Advanced and Professional Chat Formatting Tired of basic and outdated chat plugins? xChat is here to completely transform communication on your server. This plugin doesn't just format the chat; it turns it into an interactive, modern, and fully customizable experience.

From rank-based formats and interactive text when hovering over to a complete private messaging system with quick replies and socialspy, xChat is designed to be the only chat tool you'll ever need.

⭐ Main Features ⭐ ✅ Professional Chat Formatting

Hex/RGB Colors: Use the full Minecraft color palette! (&#RRGGBB).

Full PlaceholderAPI Support: Show any player statistics directly in the chat.

Rank-based Formats (via Vault): Perfect integration with LuckPerms and other permission plugins to show prefixes and group formats.

Interactive Hover Text: Show detailed player stats (money, hours played, etc.) just by hovering over their name.

Click to Whisper: Click on a player's name in the chat to instantly start a private message.

✅ Advanced Private Messaging System

Customizable Formats: Set how the sent and received messages look.

Quick Reply Command (/r): Reply to the last private message with a single command. Essential for your users!

Notification Sounds: A small sound when receiving a message to ensure it doesn't get missed.

✅ Staff and Server Tools

Social Spy (/socialspy): Allows staff members with permissions to monitor private messages to keep the community safe.

Ignore System (/ignore): Allows users to persistently ignore other players.

Anti-Spam: Prevents chat flooding with a configurable cooldown between messages.

Update Notifier: Alerts in the console when a new version of xChat is available on Modrinth.

✅ Optimization and Compatibility

Lightweight and Optimized: Built on the Paper API and using packets with ProtocolLib for maximum performance.

100% Customizable: Absolutely all messages, formats, and functions can be adjusted from the generated config.yml.

Anonymous Statistics with bStats: To help us understand how the plugin is used and improve it.

🖼️ Plugin Previews

chatnormal

msg

hover

🔧 Commands and Permissions ```yaml Comando Alias Permiso Descripción /xchat reload /xc reload xchat.reload Recarga la configuración del plugin. /xchat help /xc help (Ninguno) Muestra la ayuda principal. /msg <jugador> /tell, /w (Ninguno) Envía un mensaje privado. /reply <msg> /r <msg> (Ninguno) Responde al último mensaje privado. /ignore /ign (Ninguno) Gestiona tu lista de ignorados. /socialspy /spy xchat.socialspy Activa/desactiva el espía de PMs. (Bypass Spam) - xchat.antispam.bypass Permite saltarse el cooldown del chat. ```

Export to Spreadsheets 🔌 Required Dependencies To make xChat work with its full potential, you need to install these three plugins:

Vault: For permission and economy plugin integration.

PlaceholderAPI: To use the thousands of available placeholders.

ProtocolLib: For advanced feature functionality.

🐠Config.YML ```yaml

___

__ __ / __ |__ __ | |

/ // / | ' / ` | __| Plugin by

> </ /___| | | | (| | | xPlugins inc

/_/_____/|| ||__,_|__|

#

🐠 Wiki: http://xchat.willfry.net/

💥 Discord: https://discord.gg/9khbRDhPCS

This is the default chat format if a player doesn't have a specific group format.

Works with PlaceholderAPI: https://github.com/PlaceholderAPI/PlaceholderAPI/wiki/Placeholders

chat-format: "%vault_rank% %player_name%&7 ▸ &f%message%"

Format by LuckPerms groups (via Vault).

The group name (e.g., 'vip') must be the same as in your permissions plugin.

groups: vip: "&b&lVIP &b%player_name% &7▸ &f%message%"

Format with HOVER when hovering over the name.

This format takes priority over 'groups' and 'chat-format' formats.

hover-format: default: description: "&7▸ &#77C3FFPlayer stats &n%player_name%&r" lines: - "&8▸ Personal information ◂" - "" - "&fPlayer name: &#34D399%player_name% ✔" - "&fJoined: &#34D399%player_first_join_date%" - "" - "&8 • &fTotal coins: &#34D399%vault_eco_balance_formatted%" - "&8 • &fHours played: &#34D399%statistic_hours_played%" - "&8 • &fCurrent guild: &#FCA5A5None" - "&8 • &fCurrent partner: &#FCA5A5None" - "" - "&#77C3FF!&nClick&#77C3FF to send message!" click: "/msg %player_name% " format: "&#C084FC%changeoutput_equals_input:default_matcher:{vault_rank}_ifmatch:&#FF0000Get it!_else:{vault_prefix}% &#E5E7EB%player_name%"

PRIVATE MESSAGES (/msg, /r, /socialspy)

#

// ___ __ _

/ / __|/ _` | Idea by

/ // __ (_| | xPlugins

/ /___/__, |

|___/

pm:

Format that both players see. Placeholders adapt to the sender and receiver.

%player_name% will be the sender, %essentials_nickname% will be the receiver (or vice versa).

format: sender: "&#FCD05C✉ Messages! &8▸ &fFrom &#FCD05C%sender_name% &fa &#FCD05C%receiver_name%&7 ▸ &f%message%" receiver: "&#FCD05C✉ Messages! &8▸ &fFrom &#FCD05C%sender_name% &fa &#FCD05C%receiver_name%&7 ▸ &f%message%"

Sound the receiver hears when receiving a message.

List of sounds: https://jd.papermc.io/paper/1.20/org/bukkit/Sound.html

sound: "ENTITY_EXPERIENCE_ORB_PICKUP"

System for staff to view private messages.

social-spy: enabled: true format: "&8[&cSPY&8] &#FCD05C%sender_name% &8▸ &#FCD05C%receiver_name% &8▸ &f"

Configurable messages for the MSG / Pm system.

messages: usage: "&cUse it like this: /{label} <player> <message>" reply_usage: "&cUse it like this: /{label} <message>" player-not-found: "&cThat player is not online." cannot-message-self: "&cYou cannot message yourself." no-reply-target: "&cYou have no one to reply to." social-spy-on: "&aSocialSpy enabled. You will now see private messages." social-spy-off: "&cSocialSpy disabled."

HELP MESSAGES (/xchat help, /ignore help)

// ___ __ _

/ / __|/ _` | Idea by

/ // __ (_| | xPlugins

/ /___/__, |

|___/

help-message: xchat: - "&7-------&f xChat Help &7------" - "" - "&#AEC6CF> /xchat help &#878787➛&f Displays this help message." - "&#AEC6CF> /xchat reload &#878787➛&f Reloads plugin configuration." - "" - "&7---------------------------------------" ignore: - "&7-----------------&f Ignore Help &7--------------------" - "" - "&#AEC6CF /ignore help &#878787➛&f Displays this help." - "&#AEC6CF /ignore list &#878787➛&f See who you are ignoring." - "&#AEC6CF /ignore add <player> &#878787➛&f Start ignoring them." - "&#AEC6CF /ignore remove <player> &#878787➛&f Stop ignoring them." - "" - "&7---------------------------------------"

IGNORE SYSTEM (/ignore)

_____

_ __ __ ___ _ __ ___

/ // ` | ' / _ | '__/ _ Idea by

// /| (| | | | | (_) | | | __/ xPlugins

____/ __, || ||___/|_| ___|

|___/

ignore: enabled: true storage: "ignores.yml" messages: added: "&aYou are now ignoring &f%target%." removed: "&eYou are no longer ignoring &f%target%." not_found: "&cPlayer not found." usage: "&eUsage: /ignore <help|list|add|remove|toggle> [player]" cannot_ignore_self: "&cYou cannot ignore yourself." list_empty: "&7You are not ignoring anyone." list_header: "&6Ignoring:" list_format: "&7- &f%target%"

Anti Spam

_ __

/ __ | |() / __ __ __ __ ___

//\| ' | __| |_____ | ' / ` | ' ` Idea by

/ | | | || |_____| |) | (| | | | | | | xPlugins

/ /| ||__|_| __/ .__/ __,|| || ||

|_| 1.0.0

anti-spam: enabled: true delay-seconds: 3 message: "&#ff0000 ⚠ Slow down! You must wait %time% second(s) before chatting again."

GENERAL PLUGIN MESSAGES

// ___ __ _

/ / __|/ _` | Idea by

/ // __ (_| | xPlugins

/ /___/__, |

|___/

plugin-messages: reload: "&#75e25f ✔ Hey! xChat configuration has been reloaded!" no-permission: "&#ff2c2c ☀ Oops! You don't have permission to run this command!"

UPDATE NOTIFIER

/ / _ __ __| | __ | | ___

/ / ' / ` |/ _` | __/ _

/ / |) | (| | (| | || __/

___/| .__/ __,_|__,_|_____|

|_| 1.0.0

update-checker: enabled: true ``` ⚙️ Installation

Download the xChat .jar file.

Make sure you have the 3 dependencies above installed.

Place all the .jar files in your server's plugins folder.

Start or restart the server.

Configure everything to your liking in the generated config.yml file!

❤️ Support and Credits Created with love by WillfryDev (xPlugins inc.).

lg

ADS