COWMODSКаталог модов

X-Chat

A plugin to easily manage chat

5421обновлён 26 авг. 2026 г.
ОбщениеУтилиты

Описание

Spigot Wiki Discord

X-Chat

Advanced chat management with MiniMessage and custom formats

📝 Description

X-Chat is a comprehensive chat management plugin that gives you full control over your server's chat experience. From priority-weighted formats and interactive hover/click effects to real-time moderation filters and custom emojis — everything is configurable from YAML files. Supports all major color formats and gracefully handles both Paper and Spigot servers. Compatible with Minecraft 1.18+.

✨ Features

  • Priority-based Format System: Create unlimited chat formats (admin, vip, default, etc.) with numeric priorities. The highest-priority format the player has permission for is automatically selected. Each format has independent color permissions (legacy, hex, MiniMessage).
  • Full Color Format Support: MiniMessage (<red>, <gradient>), Legacy (&c, &l), Hex (&#FF0000), BBCode ([BOLD], [COLOR=#hex]), and HTML shorthand (<b>, <i>, <u>, <s>) — all auto-converted seamlessly.
  • Interactive Player Names: Hover over a player's name to see custom info (rank, ping, etc. via PlaceholderAPI). Click to execute configurable actions (suggest command, run command, open URL, copy to clipboard). Works with all formats.
  • Auto-Mentions: Automatically detects when a player mentions another by name in chat. Highlights the mentioned name with a custom gradient format and plays a configurable sound. Supports optional @ prefix requirement.
  • Smart Moderation Suite: Anti-Spam (configurable cooldown), Anti-Caps (percentage threshold with auto-lowercase or block), Anti-Advertising (regex-based IP and Discord link detection), and Smart Censor (partial w**d or full **** word censoring). Each filter has its own bypass permission.
  • Dynamic Chat Tags: [item] — shows held item with hover tooltip (name, amount, durability, enchantments). [pos] — displays coordinates with click-to-copy. [ping] — shows player latency. All individually configurable with their own YAML files.
  • Custom Emoji System: Define text shortcuts that are replaced with emojis or formatted text. Supports MiniMessage in emoji values. Permission-gated or open to everyone.
  • Auto-Links: URLs in chat are automatically converted to clickable links with configurable hover text.
  • Private Messaging System: /msg, /r (reply) — usable by all players by default. Includes SocialSpy for staff, ignore system with persistence, and self-message prevention.
  • Chat History: Per-player message log saved in memory and disk. View with /chatlog or /history with paginated output.
  • Custom Join/Leave Messages: Configurable join, leave, and first-join messages with MiniMessage and PlaceholderAPI support. Cancels default Bukkit messages.
  • Auto-Broadcaster: Timed announcements with random or sequential order, configurable sounds, and multi-line MiniMessage support.
  • Custom Death Messages: Per-cause death messages (PvP, fall, drown, fire, lava, void, explosion, cactus, lightning, magic, projectile, etc.) with MiniMessage formatting.
  • Placeholders in Messages: Allow players to use PlaceholderAPI placeholders directly in their chat messages (configurable with permission).
  • 6 Language Files: EN, ES, PT, JA, RU, and CUSTOM — switch languages at runtime with /xchat locate.
  • Dynamic Command Registration: All commands (names and aliases) are defined in config.yml — no need to edit plugin.yml. Changes apply on reload.
  • Config Auto-Updater: Detects outdated configurations, creates a backup, and rebuilds automatically on startup.
  • Paper & Spigot Compatible: Hover, click, and interactive effects work natively on Paper. On Spigot, they are automatically stripped to plain text — no errors, no crashes.
  • Folia Supported: Fully compatible with Folia's regionized threading.

🖥️ Compatibility

SoftwareSupported
Bukkit / Spigot / Paper / Purpur✅
Folia✅
PlaceholderAPI✅ (soft)
Vault✅ (soft)
Minecraft1.18 → 1.21+

🛠️ Main Commands

/msg <player> <message> Sends a private message to a player. Usable by everyone by default.

/r <message> Replies to the last player who sent you a private message. Usable by everyone by default.

/clearchat Clears the chat for all online players.

/socialspy Toggles SocialSpy mode — see all private messages sent between players.

/ignore <player> Ignores a player. You will no longer see their messages or receive messages from them. Persistent across restarts.

/sudo <player> <command/message> Forces a player to execute a command or send a chat message.

/chatlog <player> [page] View a player's recent chat history with paginated output.

/broadcast <message> Send a global announcement to all online players with a custom format.

/xchat [subcommand]

  • help — Shows the help menu.
  • reload — Reloads all YAML configurations.
  • version — Shows the current version info.
  • update — Manually check for updates.
  • locate <language> — Changes the plugin language at runtime.

🛡️ Permissions

Chat Formats

  • xchat.format.admin — Use the admin chat format. (default: none)
  • xchat.format.vip — Use the VIP chat format. (default: none)
  • xchat.format.default — Use the default chat format. (default: none)

General

  • xchat.colors — Master permission to use ALL color types (legacy, hex, MiniMessage). (default: op)
  • xchat.tags.all — Master permission to use ALL interactive tags. (default: none)

Commands

  • xchat.command.clear — Use /clearchat. (default: op)
  • xchat.command.spy — Use /socialspy. (default: op)
  • xchat.command.ignore — Use /ignore. (default: op)
  • xchat.command.sudo — Use /sudo. (default: op)
  • xchat.command.history — Use /chatlog. (default: op)
  • xchat.command.broadcast — Use /broadcast. (default: op)

Administration

  • xchat.admin — Use /xchat admin commands. (default: op)

Filter Bypass

  • xchat.bypass.spam — Bypass anti-spam cooldown. (default: none)
  • xchat.bypass.caps — Bypass anti-caps filter. (default: none)
  • xchat.bypass.advertising — Bypass anti-advertising filter. (default: none)
  • xchat.bypass.blocked-words — Bypass blocked-words filter. (default: none)
  • xchat.bypass.grammar — Bypass auto-grammar corrections. (default: none)

Features

  • xchat.placeholders — Use PlaceholderAPI placeholders in chat messages. (default: none)
  • xchat.emojis — Use custom emojis in chat. (default: none)
  • xchat.tags.click — Use click tags in chat. (default: none)
  • xchat.tags.hover — Use hover tags in chat. (default: none)
  • xchat.tags.insert — Use insert tags in chat. (default: none)
  • xchat.tags.font — Use font tags in chat. (default: none)

Tip: /msg and /r have no permission by default — all players can use them. You can add a permission in config.yml to restrict access.


Need help? Join our [Discord](https://ptb.discord.com/invite/Yb6GsfGWmd) or report issues in the discussion section.

Галерея

Broadcast commandAll commands of X-Chat

Последние версии

Все версии →
release

New Features and Bug Fixes

1.4
26 авг. 2026 г.204Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
# 🚀 X-Chat v1.4 - Changelog ## ✨ New Features - **Database failover — the plugin never requires MySQL/Redis** — If the database goes down, X-Chat switches to local-only mode after a configurable number of failed attempts and keeps working normally (chat, tags, formats, PMs, mentions). A background task retries the connection and re-enables cross-server features automatically when the database comes back. No crashes, no freezes, no console spam. New `cross-server.failover` section in config.yml (`max-failures`, `retry-interval`). - **DiscordSRV / bridge plugins see chat again** — X-Chat no longer cancels the `AsyncPlayerChatEvent`; instead it clears the recipients list after its own broadcast. Third-party bridges (DiscordSRV, IRC relays, chat loggers) that listen with `ignoreCancelled=true` were silently skipping X-Chat messages — now they receive the event normally with no duplicate in-game delivery. ## 🐛 Bug Fixes - **Update checker logic fixed** — Version comparison now understands pre-release suffixes: a release (`1.3`) is no longer reported as outdated against a pre-release (`1.3-Beta-10`) on Spigot.
release

Error fixes

1.3
23 авг. 2026 г.20Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
# 🚀 X-Chat v1.3 - Changelog ## ⚙️ Bugs/Errors Fixes - **Obfuscated text now works** — Legacy `&k` code is now correctly converted to the MiniMessage `<obfuscated>` tag. - Fix notification update logic - Fix some bugs with MySQL
beta

Bug Fixes

1.3-Beta-10
15 июл. 2026 г.87Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
🚀 X-Chat v1.3-Beta-10 - Changelog ## ⚙️ Bug Fixes - **Local links clickable again** — Links built directly via Adventure Component API (ClickEvent/HoverEvent) instead of MiniMessage string tags. More reliable parsing. - **Cross-server links fixed** — Same Component API fix ensures JSON payload carries proper click/hover events. - **Mentions formatting works** — Mention names built as Adventure Components with Placeholder.component(). Works both locally and cross-server. - **Item tag hover/click fixed** — Hover tooltips now use real HoverEvent.showText(). Also supports configurable click actions (suggest/run command, copy). - **Interactive player name fixed** — Name hover/click uses Adventure Component API for reliable rendering.
beta

Bug Fixes

1.3-Beta-09
13 июл. 2026 г.19Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
🚀 X-Chat v1.3-Beta-09 - Changelog ## ⚙️ Bug Fixes - **Fixed local links not clickable** — Links are now built directly via Adventure Component API (`ClickEvent`/`HoverEvent`) instead of embedding MiniMessage string tags. Bypasses any MiniMessage parsing issues with complex nested click/hover tags. - **Fixed cross-server link formatting** — Same Component API fix ensures the JSON-serialized payload carries proper click/hover events to other servers. - **Fixed mentions not formatting** — Mention names are now built as Adventure Components and injected via `Placeholder.component()`, guaranteeing correct color/style rendering both locally and cross-server. - **Fixed item tag hover/click not working** — Item tags now build hover tooltips directly as Adventure Components with `HoverEvent.showText()`. Previously the hover text was inserted as visible plain text instead of an actual Minecraft hover event. Item tags also support configurable click actions (suggest command, run command, copy to clipboard). - **Fixed interactive player name** — Player name hover/click in chat format now uses Adventure Component API instead of embedded MiniMessage string tags, for more reliable rendering. - **Fixed race condition with interactive name resolver** — `AsyncPlayerChatEvent` fires concurrently across threads; the previous instance-field resolver could be overwritten by a second chat before being read. Now passed as a local parameter via an `InteractiveNameResult` holder. - **Hardened cross-server payload delimiter** — Switched from `\n` to `\u0001` (SOH) between legacy/JSON/pre-mention parts. The old `\n` delimiter could be silently corrupted if a player with MiniMessage permission typed `<newline>`. Receiver auto-detects the delimiter for backward compatibility with older senders. - **Improved cross-server reliability** — JSON Component serialization now carries proper interactive events since all local Components are built correctly. Added defensive `NoClassDefFoundError` fallback on the receiver for very old Spigot, and a one-shot warning if `GsonComponentSerializer` is missing from the classpath.
beta

Error/Bug fixes

1.3-Beta-08
13 июл. 2026 г.19Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
🚀 X-Chat v1.3-Beta-08 - Changelog ## ⚙️ Bug Fixes - **Fixed local links not clickable** — Links are now built directly via Adventure Component API (`ClickEvent`/`HoverEvent`) instead of embedding MiniMessage string tags. Bypasses any MiniMessage parsing issues with complex nested click/hover tags. - **Fixed cross-server link formatting** — Same Component API fix ensures the JSON-serialized payload carries proper click/hover events to other servers. - **Fixed mentions not formatting** — Mention names are now built as Adventure Components and injected via `Placeholder.component()`, guaranteeing correct color/style rendering both locally and cross-server. - **Fixed item tag hover/click not working** — Item tags now build hover tooltips directly as Adventure Components with `HoverEvent.showText()`. Previously the hover text was inserted as visible plain text instead of an actual Minecraft hover event. Item tags also support configurable click actions (suggest command, run command, copy to clipboard). - **Fixed interactive player name** — Player name hover/click in chat format now uses Adventure Component API instead of embedded MiniMessage string tags, for more reliable rendering. - **Improved cross-server reliability** — JSON Component serialization now carries proper interactive events since all local Components are built correctly.
beta

Bug/Error fixes

1.3-Beta-07
12 июл. 2026 г.14Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
🚀 X-Chat v1.3-Beta-07 - Changelog ## ⚙️ Bug Fixes - **Fixed local links not clickable + chat format removed** — Moved legacy color conversion before system tags to prevent corrupting MiniMessage tags and URL parameters. - **Fixed mention colors lost (local + cross-server)** — Same pipeline fix preserves mention formatting correctly. - **Fixed cross-server hover/click broken** — Fixed server prefix deserializer, JSON now preserves all interactive data. - **Fixed tags not hoverable cross-server** — Tag configs now support both legacy and MiniMessage formats properly.
beta

Bugs/Errors fixes

1.3-Beta-06
10 июл. 2026 г.18Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
🚀 X-Chat v1.3-Beta-06 - Changelog ## 🐛 Bugs/Error Fixes - **Fixed `IllegalPluginAccessException` on plugin disable** — `RedisMessagingService.publish()` no longer uses the Bukkit scheduler (`runTaskAsynchronously`), which threw an error when the plugin was shutting down. Now uses `CompletableFuture.runAsync()` for all Redis publishes, making it safe during the entire plugin lifecycle including disable. - **Fixed cross-server mention formatting lost** — Mention highlights (color, bold, etc.) were stripped when messages traveled between servers. The cross-server payload now sends MiniMessage source strings instead of JSON-serialized Components, preserving all rich text formatting end-to-end. - **Fixed cross-server auto-links not clickable** — URLs with `<click:open_url>` and `<hover>` events were lost in transit. The new MiniMessage-based transfer preserves click and hover actions on links for Paper servers. - **Fixed cross-server interactive player names not working** — Hover and click events on player names in chat format were discarded cross-server. Now fully preserved via MiniMessage serialization. - **Fixed cross-server tags (`[inv]`, `[pos]`, `[ping]`) losing hover/click** — Item tooltips, position data, and ping display with their hover components now transfer correctly to other servers. - **Fixed cross-server PM sender name not interactive** — Private messages from other servers now show the sender's name with hover info (including their origin server) and click-to-reply action, matching the local PM behavior. - **Fixed cross-server mention sound detection** — The mention sound now uses pre-mention plain text for reliable player name matching, avoiding false negatives from MiniMessage tags wrapping player names.
beta

X-Chat 1.3-Beta-05

1.3-Beta-05
9 июл. 2026 г.20Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
🚀 X-Chat v1.3-Beta-05 - Changelog ## ✨ New Features - **Per-broadcast cross-server toggle** — New `cross-server: true/false` option under `broadcast-settings` in `config.yml` to control whether `/broadcast` sends globally or locally only. - **Per-broadcast server prefix toggle** — New `show-server-prefix: true/false` option under `broadcast-settings` controls whether the `[ServerName]` prefix is shown on other servers when a broadcast is received. - **Mentions now cover player prefix** — When a player has a prefix (e.g. `[Admin] Fabian`), mentioning `@Fabian` or `@[Admin] Fabian` will both trigger the mention highlight and sound. The longer display name is matched first. ## 🐛 Bug Fixes - Fixed `NullPointerException` on cross-server `/msg` — `ConcurrentHashMap.put(null)` crash when sending a PM to a player on another server. Added null validation in `setLastMessageTarget()`. - Fixed `/r` not working cross-server — Both the sender's and receiver's server now store the appropriate reply target name, so `/r` works correctly in both directions. - Fixed SocialSpy not working — Spy messages were never sent to local players in any cross-server PM path. Added the missing local spy broadcast to all three cross-server PM code paths. Also fixed duplicate spy messages by removing the incorrect publish from the receiver's server. - Fixed URL/link formatting broken cross-server — On Spigot servers, URLs in cross-server messages are now re-processed to display as underlined blue text. On Paper, the JSON component already preserves auto-links. - Fixed Hover/Click components not transmitted cross-server — Cross-server messages on Paper no longer have their JSON component discarded and rebuilt. The original serialized component (with hover events, click actions, and auto-links) is preserved. - Fixed ChatLog cross-server — `/chatlog` now loads player history from disk for cross-server players whose data isn't in memory, fixing empty results. - Fixed Join/Leave double server prefix — Removed the redundant `[ServerName]` prefix from cross-server join and quit messages.
beta

New features and bug fixes

1.3-Beta-04
8 июл. 2026 г.26Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
🚀 X-Chat v1.3-Beta-04 - Changelog ## ✨ New Features - **Default connection guard** — If `cross-server.storage` is set to `mysql`, `redis` or `both` but the connection settings are still at default values (localhost, empty password), the plugin will not attempt to connect and will fall back to `yaml` with a warning in console instead of throwing an error. ## 🐛 Bug Fixes - Fixed config auto-merge not triggering for existing configs — bumped `config-code` to `5`.
beta

New features and bug fixes

1.3-Beta-03
8 июл. 2026 г.17Minecraft: 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Скачать
Что нового
🚀 X-Chat v1.3-Beta-03 - Changelog ## ✨ New Features - **Cross-server join/quit messages** — Join and quit messages are now published via Redis pub/sub and displayed on all connected servers. Toggle with `cross-server.join-quit.enabled` in `config.yml`. - **Cross-server player list sync** — Player online/offline events are synced across servers via the `xchat:playerlist` Redis channel, enabling global tab-completion and player lookups. - **Configurable server prefix** — The `[ServerName]` prefix on cross-server messages can now be enabled/disabled and customized with colors using `cross-server.server-prefix.format` in `config.yml`. ## 🐛 Bug Fixes - Fixed cross-server message payload format — unified to `serverName|senderUUID|senderName|message` (4 parts) across all channels. - Fixed "both" storage mode overwriting MySQL with Redis — MySQL is now the primary storage, Redis is used for pub/sub messaging only. - Fixed incoming cross-server messages being ignored — a `MessageHandler` is now properly registered to process incoming chat, PM, spy, broadcast, join, and quit messages. - Fixed Social Spy state and reply target not being restored from Redis/MySQL when a player rejoins. - Replaced direct casts to `RedisMessagingService` with `plugin.getMessagingService()` interface calls.