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

CoreChatX

CoreChatX is a complete communication suite for Minecraft servers. It brings multiple chat-related features into one polished system.

Автор: IceWolf23X8522обновлён 22 окт. 2026 г.
УправлениеОбщениеУтилиты

Описание

CoreChatX Feature List

CoreChatX is a complete communication suite for Minecraft servers. It brings chat, private messages, persistent nicknames, channels, mentions, pings, chat item previews, chat bubbles, moderation, player settings, locales, and external bridges into one polished system.

The idea is simple: server chat should feel like one product, not a stack of separate plugins that each need their own configuration, commands, and maintenance.

This page is a commercial-style feature overview. Exact config keys, defaults, limits, and operational details are documented at https://wiki-corechatx.icewolf23x.dev/

Current release: 2026.3.3

Before updating an existing installation, stop the affected servers and back up every file and subfolder inside their CoreChatX plugin folders. Keep the old JARs separately and also back up MySQL if it is already in use. Update the Velocity proxy and all participating Paper backends together.


Why CoreChatX

Many servers end up installing one plugin for chat, another for private messages, another for nicknames, another for mentions, another for channels, another for Discord, another for Telegram, another for chat bubbles, another for item previews, and then one more just to keep the whole setup consistent.

That works, technically. It also turns chat into a maintenance hobby.

CoreChatX is built for server owners who want the whole communication experience to feel consistent:

  • one visual language
  • one permission model
  • one player settings flow
  • one network-aware chat layer
  • one place to manage public chat, PMs, nicknames, channels, pings, bridges, moderation, and rich interactions

It is not trying to be "yet another chat plugin". It is trying to replace scattered chat-related plugin stacks with one clean, friendly, server-ready system.


Stats

CoreChatX Paper/Purpur Chart

CoreChatX Velocity Chart

CoreChatX uses bStats for usage statistics, enabled by default. Reports include plugin/platform and Java versions, operating-system details, processor count, player count, online-mode status, a generated server identifier, and the configured backend count on Velocity. These metrics do not include chat messages or player names. bStats receives the reports; aggregate charts are publicly available.

You can opt out by setting enabled: false in Paper's plugins/bStats/config.yml, or enabled=false in Velocity's plugins/bStats/config.txt, then restarting the affected server/proxy. These settings are shared with other bStats integrations. See the bStats server-owner guide and privacy policy.

Current State

CoreChatX currently:

  • supports Paper 1.21.11 - 26.2
  • targets Java 21; use Java 21 for Paper 1.21.11 and Java 25 for Paper 26.1/26.2, while Velocity must satisfy its own runtime requirement and CoreChatX's Java 21 minimum
  • ships separate corechatx-paper and corechatx-velocity runtime jars
  • uses CoreChatX as the Paper plugin name
  • uses corechatx as the Velocity plugin id
  • works on standalone Paper servers
  • works on Velocity networks with one or more isolated CoreChatX proxy groups
  • keeps YAML as the default and offers optional MySQL storage for standalone Paper or Velocity-owned network groups
  • includes verified backups, YAML-to-MySQL migration, and current-data MySQL-to-YAML rollback through /ccxstorage
  • lets each player choose persistent or non-persistent channel selection
  • supports permanent or timed personal channel hiding
  • checks Modrinth for stable releases and experimental alpha/beta builds, with console and Paper OP notifications
  • supports group-local network chat, PMs, player settings, nicknames, runtime data, Discord links, and ChatItem snapshots
  • supports Discord inbound and outbound messages
  • supports Telegram inbound and outbound messages
  • supports Telegram forum topic routing
  • supports per-channel Discord and Telegram bridge format overrides
  • supports source-specific mention gates for Minecraft, Discord, and Telegram text
  • supports optional Discord-Minecraft account linking
  • supports Discord required-link-to-play and required-role-to-play gates
  • supports Discord nickname sync from Minecraft nicknames, with fallback to the real Minecraft player name
  • supports Discord connection, death, advancement, and server-status embeds
  • supports Discord console channels, player-list output, and channel description updates
  • supports Discord ChatItem PNG previews and item inspection menus
  • supports Discord custom emoji expansion from Minecraft messages
  • supports Discord inbound attachments as clickable Minecraft file links
  • supports legacy color and hex formatting conversion from trusted server-side values before rendering
  • includes optional chat bubbles above players
  • includes persistent CoreChatX nicknames with granular color, style, hex, and gradient permissions
  • supports local Paper or proxy-routed join, quit, and first-join announcements
  • has been tested on standalone Paper and Velocity network setups
  • documents proprietary CoreChatX code and external third-party libraries through LICENSE and THIRD-PARTY-NOTICES.md

One Suite, Not Ten Plugins

CoreChatX covers the core communication stack:

  • public chat
  • private messages
  • persistent nicknames
  • real-name lookup for nicknames
  • replies
  • channels
  • channel shortcuts
  • mentions
  • custom pings
  • interactive keywords
  • chat item previews
  • chat bubbles
  • moderation tools
  • player settings
  • locale support
  • Discord bridge
  • Telegram bridge
  • standalone and Velocity network setups

The value is not just the feature count. The value is that these features know about each other.

Channels can affect formatting, permissions, mention delivery, ChatItems, chat bubbles, and bridge export. Mentions can respect player settings and channel read permissions. Private messages can work with social spy and ignore rules. Network chat can carry rich Adventure components and ChatItem preview references. Bridges can follow channel routing instead of acting like a separate side project.

That is the difference between a chat system and separate plugins with overlapping commands and disconnected configuration.


Polished Public Chat

CoreChatX gives public chat the kind of foundation players actually notice:

  • clean chat formats
  • rank-aware layouts
  • channel-aware layouts
  • LuckPerms prefix support
  • PlaceholderAPI support in server-controlled templates
  • persistent nickname support
  • join, quit, and first-join messages
  • message cleanup and sanitization
  • safe conversion of legacy color codes and legacy hex color values in trusted server-side text
  • anti-repeat checks
  • anti-caps checks
  • word filtering

Player-written messages stay safe. Server-owned templates can use dynamic placeholders, while normal player input is kept under control before it becomes a rich chat component.


Kyori Adventure And MiniMessage

CoreChatX is built around Kyori Adventure and MiniMessage formatting. That means server owners can create modern chat components without being trapped in old color-code-only formatting.

MiniMessage support makes it easy to use:

  • colors
  • gradients
  • hover text
  • click actions
  • suggested commands
  • copy-to-clipboard actions
  • reusable formatting patterns
  • clean rich text across chat, messages, previews, bridge output, embeds, and command feedback

CoreChatX also handles legacy formatting returned by plugins such as PlaceholderAPI, LuckPerms, and Essentials-style nickname providers before building the final Adventure component. That helps server owners keep modern MiniMessage templates without breaking when another plugin still returns old color-code or hex-color output.

This gives CoreChatX a modern Paper-native feel instead of a legacy chat setup with richer formatting bolted on afterward.


PlaceholderAPI-Powered Interactions

CoreChatX can combine MiniMessage with PlaceholderAPI inside server-controlled templates.

That opens the door to fast, flexible interactions based on:

  • player data
  • ranks and groups
  • economy values
  • server stats
  • world data
  • progression systems
  • installed PlaceholderAPI expansions
  • custom server logic exposed through placeholders

CoreChatX also exposes useful PlaceholderAPI values to other plugins, including:

  • %corechatx_player_nickname%
  • %corechatx_first_join_date%
  • %corechatx_messages_count%

In practice, this means server owners can build dynamic chat interactions without extra glue just to make a hover line, bridge message, Discord channel description, or click action show something useful.

If PlaceholderAPI can expose it, CoreChatX can help turn it into part of the chat experience.

On Velocity, optional PAPIProxyBridge support can resolve PlaceholderAPI values for proxy-owned surfaces such as player list rows, Discord channel descriptions, join/quit messages, and fallback Discord formats. If a proxy placeholder lookup cannot complete in time, CoreChatX falls back instead of letting the message path wait indefinitely.


Persistent Nicknames

CoreChatX includes a full nickname layer instead of treating display names as a formatting afterthought.

Nickname features include:

  • /nick <nickname>
  • /nick off, /nick clear, and /nick reset
  • staff nickname edits for other online players
  • /realname <nickname> lookup
  • {player_name} for the real Minecraft username
  • {player_nickname} for the visible CoreChatX nickname, with fallback to the real username
  • optional nicknames.prefix shown only when a custom nickname exists
  • optional color-only mode through nicknames.change-only-colors
  • named colors, safe MiniMessage styles, hex colors, gradients, and legacy color-code input
  • per-color and per-style nickname permissions
  • duplicate nickname protection
  • proxy-group nickname synchronization

Nicknames are used across chat, PMs, social spy, broadcasts, join/quit/first-join messages, mentions, ChatItem preview titles, PlaceholderAPI output, and Discord account-linked identity where enabled.

The real player identity stays stable internally. Routing, ignore rules, replies, account links, and runtime state still use UUIDs and real Minecraft names, while the visible presentation can use the configured nickname.


Interactive Keywords

Interactive keywords let players type simple tokens such as:

  • [discord]
  • [rules]
  • [store]
  • [vote]
  • [map]

CoreChatX can turn those tokens into polished clickable chat elements.

They can include:

  • hover text
  • click commands
  • suggested commands
  • URLs
  • copied text
  • optional permissions
  • channel restrictions
  • optional PlaceholderAPI rendering

This is the kind of small feature that often becomes "add another plugin". Here, it is just part of the chat suite.


Mentions And Pings

Mentions and pings are built directly into the message flow.

They support:

  • player mentions
  • @Player and exact-name mention behavior
  • nickname-aware mention suggestions
  • custom ping triggers
  • sound notifications
  • actionbar notifications
  • per-player ping toggles
  • staff-friendly ping rules
  • cross-server mention awareness
  • mention formatting based on the mentioned player
  • channel read-permission checks before a target is pinged
  • source-specific mention gates for Minecraft, Discord, and Telegram
  • Discord role allow-lists for custom pings triggered from Discord

If a player cannot read the channel where they were mentioned, CoreChatX does not ping them and does not render their name as an @ mention.

Because mentions are part of CoreChatX itself, they can work with formatting, notifications, privacy choices, custom nicknames, channel permissions, and Velocity network presence instead of pretending every server is isolated.


Channels

CoreChatX supports multiple channel styles:

  • global chat
  • local chat
  • staff chat
  • network-wide chat
  • role-based chat spaces
  • custom server-defined channels

Channel delivery scopes are explicit: NETWORK reaches participating backends in the same Velocity group, SERVER stays on one backend, and LOCAL_RADIUS reaches players within a configured radius in the same world. On standalone Paper, network-scoped chat stays on that server.

Channels can decide:

  • who can send
  • who can receive
  • which features are enabled
  • how messages look
  • whether chat bubbles are allowed
  • whether ChatItems are allowed
  • whether messages can be exported to Discord or Telegram
  • which Discord or Telegram target should receive bridge output
  • which per-channel bridge format override should be used
  • which sources are allowed to create mentions
  • which shortcut command should control the channel
  • whether public-chat ignores affect only notifications or hide ignored senders' messages

Channel shortcuts can be configured per channel. For example, /ac can switch a player to adminchat, while /ac <message> can send a one-shot message to that channel without changing the player's currently selected active channel.

Players with the appropriate permissions can use /hidechannel <channel> [minutes] to hide a channel temporarily or until they restore it with /unhidechannel <channel>. While hidden, the player cannot send to or receive from that channel. The preference persists and follows the player across backend switches in proxy mode.

This keeps channel behavior centralized instead of scattered across several plugins with separate ideas of how chat should behave.


Private Messages

Private messaging is part of the same communication system as public chat.

Included tools:

  • direct messages
  • reply command
  • social spy
  • ignore controls
  • PM toggle
  • delivery feedback
  • cross-server private messages
  • group-local private messages on Velocity networks

Public-chat ignore behavior can stay PM-only, suppress public mention/ping notifications, or hide public messages from ignored players. Channels can inherit or override this behavior, and configured staff bypass permissions still apply.

The result is a PM system that understands the rest of the plugin: privacy, moderation, network routing, formatting, nicknames, and player settings all live in the same ecosystem.


Moderation Tools

CoreChatX includes the everyday moderation controls a real server needs:

  • player mute
  • unmute
  • global chat mute
  • clear chat
  • anti-repeat checks
  • anti-caps checks
  • word filtering
  • staff bypass permissions
  • mute-aware Discord account linking behavior
  • bridge-origin permission checks for linked Discord users

Moderation is handled inside the chat layer itself. That means it works naturally with channels, private messages, network behavior, Discord-linked users, and player settings.

This avoids making separate moderation and chat tools duplicate or guess each other's state.


Chat Item Previews

Players can share clickable previews for:

  • held items
  • shulker contents
  • armor
  • hotbar
  • inventory
  • ender chest

Supported chat tokens include:

  • [item]
  • [i]
  • [armor]
  • [hotbar]
  • [inventory]
  • [inv]
  • [enderchest]
  • [ender]
  • [ec]

ChatItem token formats can use:

  • {token}
  • {name}
  • {material}
  • {amount}

{name} uses the custom item name when present, then the item name, then the material fallback.

Multiple ChatItem tokens in the same message can reuse the same captured player state while still opening the correct view.

On a Velocity network, players on another backend can still click and open the preview through lightweight snapshot references and on-demand retrieval. That keeps network chat cleaner and avoids stuffing heavy item data into the main chat packet.

When Discord image rendering is enabled, Minecraft-to-Discord ChatItem messages can attach rendered PNG previews. Inventory-like renders can include dropdown menus, and Discord users can inspect individual items through ephemeral Minecraft-style tooltip panels with names, lore, enchantments, stored enchanted-book enchantments, potion effects, attributes, armor trims, and durability.

Expired Discord item inspection actions now return a clear expired or unavailable message instead of loading forever.

Admins can also warm the item render cache with:

  • /corechatx itemcache warmup
  • /corechatx itemcache status
  • /corechatx itemcache cancel

This helps make Discord item previews appear faster after the cache has been prepared.

When vanilla asset downloading is enabled, the renderer can download and extract Minecraft client assets into the local plugin cache. Configured resource packs can also provide rendering assets; vanilla Minecraft assets are not bundled in the plugin JAR.


Chat Bubbles

CoreChatX can show recent chat messages above player heads.

Bubble features include:

  • player toggle
  • channel rules
  • world rules
  • sneaking checks
  • invisibility checks
  • configurable duration
  • message wrapping
  • stacked recent messages
  • distance-based visibility
  • cleanup on quit, reload, and shutdown

Chat bubbles use the already processed message, so filtering, channels, mentions, nicknames, and keywords have already done their job.

On a network, bubbles stay local to the server where the sender is physically playing. That keeps the feature useful without pretending an overhead bubble can float across servers.


Player Controls

Players get direct control over important communication preferences:

  • settings menu
  • ping toggles
  • PM toggle
  • nickname management
  • channel switching
  • channel shortcuts
  • permanent or timed personal channel hiding
  • persistent or non-persistent channel selection
  • chat bubble toggle
  • locale selection
  • ignore list controls
  • Discord account link and unlink commands when enabled

The Channel compass in /ccxsettings (also /chatsettings) lets each player choose:

  • Persistent: keep the last active channel after disconnecting, including across server restarts.
  • Non persistent: return to the configured default on the next connection.

Changing this preference does not immediately switch the active channel. Moving between backends during the same proxy connection also preserves the current selection.

This makes CoreChatX feel like a player-facing feature, not just an admin-side config file with a chat command attached.


Locale Support

CoreChatX includes a practical locale foundation:

  • per-player locale selection
  • locale override files
  • fallback to the main message file
  • cleaner control over player-facing wording

This is useful for multilingual communities and for servers that want every message to sound like it belongs to their brand.


Discord And Telegram Bridges

CoreChatX includes built-in bridge support.

Important disclosure: Discord and Telegram bridges are optional and only run when the server owner enables and configures them. When enabled, CoreChatX can send selected chat content, player display names, channel labels, rich message data, and related message formatting to the Discord or Telegram services configured by the server owner. Inbound bridge messages can also bring Discord or Telegram messages back into configured Minecraft channels. Account linking associates Minecraft identities with Discord accounts. When enabled, event mirrors, ChatItem exports, and console mirroring can also send event data, item/inventory previews, or console output to Discord.

Bridge features include:

  • Discord outbound messages
  • Discord inbound messages
  • Telegram outbound messages
  • Telegram inbound messages
  • Telegram forum topic routing
  • per-channel bridge targets
  • per-channel Discord and Telegram bridge format overrides
  • fully configurable Discord inbound format
  • Discord inbound attachment forwarding as clickable Minecraft file links
  • Discord ChatItem image attachments and item inspection menus for Minecraft-origin messages
  • Discord text channel description updates with internal placeholders and optional PlaceholderAPI values
  • Discord player-list text and slash commands
  • Discord console command channels for standalone Paper, backend console bots, and Velocity proxy commands
  • PlaceholderAPI and rank prefix support in Discord outbound format templates
  • Discord role names and role colors available to Minecraft chat formats
  • Discord custom emoji expansion for Minecraft-to-Discord messages
  • optional Discord account linking for Minecraft-backed inbound identity
  • optional Discord nickname sync from the Minecraft nickname or real player name
  • optional link-to-play enforcement with a Discord link code in the Minecraft denial or kick reason
  • optional Discord role gates for players joining the server
  • group-specific required-role gates on Velocity networks
  • route-level and channel-level account-link overrides
  • channel prefix support in Discord inbound format templates
  • source-specific mention gates for Minecraft, Discord, and Telegram inbound text
  • Discord role allow-lists for bridge-origin custom pings
  • connection, first-join, quit, death, and advancement embeds
  • server online and offline status embeds
  • rank prefix support in Telegram outbound format templates
  • channel-level bridge export control
  • config-load warnings for bad bridge placeholders or inbound MiniMessage syntax
  • global bridge master switch
  • cleaner reload and shutdown behavior
  • safe message length handling

Discord role-based admission requires Server Members Intent. When enabled, role and guild-membership changes can revoke an online linked player's access, and the admission gate prevents reconnection until the required access is restored. Discord nickname synchronization remains subject to Discord's role hierarchy and guild-owner restrictions. Console channels and their authorized roles should be restricted to trusted administrators.

Custom Discord slash-command names are supported. Linking messages can use /{link_command} so the instructions show the command actually configured for the standalone or proxy bot.

Bridge formatting is sanitized where it matters. CoreChatX can strip MiniMessage, legacy, and hex formatting from identity/template fragments before sending to external services, while preserving the real player message content.

The bridge layer is treated as part of the chat system, not as a separate external pipe with unrelated routing rules.

That matters because channel rules, formatting, network behavior, and bridge routing should agree with each other. If they do not, players notice. Admins notice faster.


Velocity Network Support

CoreChatX supports both standalone Paper servers and Velocity networks.

In network mode, it can keep these features working across servers:

  • group-local network chat channels
  • group-local cross-server private messages
  • player communication settings
  • persistent nicknames
  • Velocity-owned runtime storage for proxy mode
  • player real-name and nickname suggestions
  • TAB entries where available
  • mentions and pings
  • group-local Discord account-link sync
  • interactive keyword behavior
  • ChatItem preview access
  • proxy-routed join, quit, and first-join announcements
  • Velocity-owned velocity-messages.yml formats for proxy join, quit, and first-join messages
  • proxy-routed group broadcasts
  • Discord player-list output for the matching group
  • Discord bridge export without duplicate network messages
  • Discord event embeds for accepted backend death and advancement events
  • Discord server-status embeds for proxy startup, proxy shutdown, and backend online/offline changes

In multi-channel mode, each Velocity network-channel value is an isolated CoreChatX group. Chat, PMs, player directory data, state sync, nicknames, mutes, Discord links, pending link codes, Discord image transfer, and ChatItem snapshot routing stay inside the matching group.

Velocity can also monitor backend servers listed in backend-groups.* and announce online/offline changes to Discord when discord.server-status is enabled.

When login gates are enabled, backend-groups.<server> lets Velocity resolve the target CoreChatX group before the player fully enters a backend. That allows required Discord link and role checks to happen at the proxy boundary instead of depending on a backend with an online carrier player.

This is where the "one suite" approach matters most. A network setup should not require a separate plugin stack on every backend just to make messages, toggles, mentions, nicknames, join/leave behavior, bridges, and PMs understand that players moved servers.


YAML And MySQL Storage

CoreChatX keeps YAML as the default storage backend. You can update a YAML installation to 2026.3.0 without switching to MySQL.

Optional MySQL storage persists:

  • player preferences and nicknames
  • statistics and active/hidden channels
  • ignore lists and mutes
  • global runtime state
  • Discord links, unlink records, and pending link codes

Standalone Paper owns its storage directly. In proxy mode, Velocity owns the shared runtime data and keeps each CoreChatX network group isolated; Paper backends use the proxy instead of opening their own MySQL connections.

/ccxstorage provides status and health checks, file/database validation, verified backups, migration plans, progress, data comparisons, history, and interruption recovery. Migration and rollback changes are console-only. Configured MySQL storage does not silently fall back to YAML when unavailable.

Changing the backend setting alone does not migrate existing YAML data. After making the complete backup described at the top of this page, follow the guide for your setup:

Each guide explains preparation, import, verification, activation, and reopening in order. It also covers recovery and returning to YAML using the latest MySQL data. Rehearse with an isolated copy of your own installation before migrating a live server; restoring an old YAML backup after MySQL has accepted new changes would lose those newer changes.


Commands

CoreChatX includes commands for:

  • plugin management
  • /corechatx root command
  • /ccx root command alias
  • /corechatx itemcache
  • /ccxstorage
  • /ccxsettings and /chatsettings
  • /hidechannel and /unhidechannel
  • /nick
  • /realname
  • /discord link
  • /discord unlink
  • /discord linked
  • private messages
  • replies
  • social spy
  • broadcast
  • nicknames
  • real-name lookup for custom nicknames
  • Discord account linking
  • ping controls
  • channel controls
  • channel shortcuts
  • ignore controls
  • PM toggle
  • settings menu
  • locale selection
  • mute and unmute
  • global chat mute
  • clear chat

The commands are designed around the same communication layer, so they feel connected instead of random.


Admin Experience

CoreChatX includes practical behavior for server owners:

  • clear startup information
  • version and author shown on startup
  • Paper or Velocity architecture shown on startup
  • CORECHATX startup banner
  • corechatx.* permission namespace
  • corechatx:main default network channel
  • safer config validation
  • default config key synchronization
  • cleaner failure handling
  • safer network message handling
  • bridge lifecycle handling on reload and shutdown
  • config regeneration support
  • Discord ChatItem render cache warmup
  • documented proprietary code and third-party dependency notices
  • narrowly packaged runtime jars containing the common module, MySQL storage module, HikariCP, and Connector/J; no separate storage or JDBC plugin JARs are needed
  • Paper external runtime libraries declared through plugin.yml
  • Velocity external libraries downloaded into plugins/CoreChatX/libs with startup logs showing whether libraries were downloaded or already present
  • automatic missing-default restoration for Paper YAML files and Velocity YAML/properties files
  • runtime data ownership rules for standalone Paper and Velocity proxy deployments
  • explicit mixed-version warnings for Paper and Velocity jar pairs
  • asynchronous Modrinth update checks after startup and every 24 hours by default
  • stable-update recommendations and separate experimental alpha/beta announcements
  • storage health checks, verified backups, migration, and rollback tools

The update checker notifies console and OP players on Paper, and console only on Velocity. It reads version metadata from Modrinth's API and identifies the installed plugin version in its User-Agent; it does not download or install plugin updates. Configure update-check.interval-hours or disable checks with update-check.enabled in Paper's config.yml or Velocity's velocity-config.properties.

Runtime libraries declared by Paper or loaded by Velocity may require internet access during initial startup.

These are not flashy player-facing features, but they make day-to-day operation much easier to trust and maintain.


Verified

The current project state has been tested through:

  • build and test passes
  • release packaging checks
  • standalone Paper startup
  • Velocity startup
  • Paper startup in network mode
  • command checks
  • config regeneration checks
  • Discord bridge checks
  • ChatItem rendering and cache checks
  • live Paper test environment checks
  • live Velocity network test environment checks

Future Direction

CoreChatX is designed to grow into a broader communication hub for common server social systems, such as:

  • clans and guilds
  • towns and settlements
  • lands and territories
  • parties and lightweight groups

The goal is to make chat aware of the communities players actually build, while keeping communication centralized, consistent, and pleasant to use. These are future directions, not additional integrations included in the current release.


Summary

CoreChatX gives a server:

  • polished public chat
  • Kyori Adventure MiniMessage formatting
  • PlaceholderAPI-powered dynamic templates
  • persistent nicknames
  • legacy formatting compatibility
  • interactive keywords
  • mentions and pings
  • channels and channel shortcuts
  • private messages
  • moderation tools
  • ChatItem previews
  • chat bubbles
  • player settings
  • locale support
  • Discord and Telegram bridges
  • Discord account linking and optional login gates
  • Discord connection, event, and server-status embeds
  • Discord ChatItem image rendering, player-list commands, console channels, channel descriptions, custom emoji, and attachment forwarding
  • standalone Paper support
  • Velocity network support
  • optional MySQL storage with backup, migration, and rollback tools
  • personal channel persistence and visibility controls
  • Modrinth stable and experimental update notifications

In short, CoreChatX is for servers that want communication to feel intentional.

If your chat setup needs several plugins, multiple bridge configs, and extra placeholder glue just to produce one consistent message, CoreChatX is built to make that experience simpler.

Also try


CoreToolsX logo
      CoreToolsX      


CoreArmorX logo
      CoreArmorX      


CoreStructuresX logo
   CoreStructuresX   


CoreCaseX logo
      CoreCaseX      


CoreExtractionX logo
   CoreExtractionX   

Галерея

Website

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

Все версии →
release

CoreChatX 2026.3.3

2026.3.3
22 окт. 2026 г.16Minecraft: 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.2, 26.3paper, purpur
Скачать
Что нового
# CoreChatX 2026.3.3 ## Added - Added bStats `discord_integration` charts on Paper and Velocity and a `telegram_integration` chart on Paper to count configured integrations. The new chart values contain only status categories, without bot tokens, Discord/Telegram IDs, player identities, messages, or traffic volume. The existing global bStats opt-out is respected; Paper proxy backends report Discord as `Managed by Velocity`. ## Fixed - Fixed Discord ChatItem images being generated for channels with `export-to-bridges: false`. Standalone and proxy servers now stop these exports before image preparation or sending while preserving local ChatItems and `allow-chatitems`. - Fixed overhead chat bubbles exposing messages from `STAFF` channels or channels with a non-empty `permission-receive`, even when bubble allowlists enabled them. Public-channel bubble settings continue to work as configured. - Fixed player-head ChatItem snapshots potentially blocking the Paper main thread during profile completion. Missing skins now use an immediate fallback while bounded asynchronous lookup, timeout, cache, and shutdown handling prepare a texture for a later capture. - Fixed Discord death messages bypassing Paper cancellation, `showDeathMessages`, blank-message checks, or the main scoreboard's death-message visibility. Discord and network deaths now share the same public eligibility rules; advancement announcements are unchanged. - Fixed PremiumVanish exposure through CoreChatX-managed Velocity TAB entries, chat completions, and shared backend directories. TAB and completions now use per-viewer visibility, public directories omit vanished players, hide/show and permission changes reconcile state, and cleanup preserves entries owned by other plugins. ## Known issues - Public-channel bubbles still cannot enforce per-viewer ignore or hidden-channel rules, or a chat radius smaller than the bubble view distance. Disable bubbles for channels that require those audience restrictions.
release

CoreChatX 2026.3.3

2026.3.3
22 окт. 2026 г.16Minecraft: 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.2, 26.3velocity
Скачать
Что нового
# CoreChatX 2026.3.3 ## Added - Added bStats `discord_integration` charts on Paper and Velocity and a `telegram_integration` chart on Paper to count configured integrations. The new chart values contain only status categories, without bot tokens, Discord/Telegram IDs, player identities, messages, or traffic volume. The existing global bStats opt-out is respected; Paper proxy backends report Discord as `Managed by Velocity`. ## Fixed - Fixed Discord ChatItem images being generated for channels with `export-to-bridges: false`. Standalone and proxy servers now stop these exports before image preparation or sending while preserving local ChatItems and `allow-chatitems`. - Fixed overhead chat bubbles exposing messages from `STAFF` channels or channels with a non-empty `permission-receive`, even when bubble allowlists enabled them. Public-channel bubble settings continue to work as configured. - Fixed player-head ChatItem snapshots potentially blocking the Paper main thread during profile completion. Missing skins now use an immediate fallback while bounded asynchronous lookup, timeout, cache, and shutdown handling prepare a texture for a later capture. - Fixed Discord death messages bypassing Paper cancellation, `showDeathMessages`, blank-message checks, or the main scoreboard's death-message visibility. Discord and network deaths now share the same public eligibility rules; advancement announcements are unchanged. - Fixed PremiumVanish exposure through CoreChatX-managed Velocity TAB entries, chat completions, and shared backend directories. TAB and completions now use per-viewer visibility, public directories omit vanished players, hide/show and permission changes reconcile state, and cleanup preserves entries owned by other plugins. ## Known issues - Public-channel bubbles still cannot enforce per-viewer ignore or hidden-channel rules, or a chat radius smaller than the bubble view distance. Disable bubbles for channels that require those audience restrictions.
release

CoreChatX 2026.3.2

2026.3.2
7 окт. 2026 г.50Minecraft: 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.2, 26.3paper, purpur
Скачать
Что нового
# CoreChatX 2026.3.2 ## Changed - ChatItem previews and remote PMs now limit overlapping requests, with customizable busy feedback in `chatitems.yml` and `messages.yml`. Older previews may expire early under heavy load. Forwarded PMs consume the configured cooldown even if later rejected or timed out. - Discord console logging now recovers from stalled requests, and ChatItem disk-cache limits remain enforced across reloads, with memory fallback on cache errors. Image transfers and Discord/Telegram exports also have workload limits and timeouts; overloaded exports may be dropped while Minecraft chat continues. ## Safety - Strengthened Velocity backend/player validation, Discord account-link updates and chat-text handling. Added stricter checks for runtime libraries, downloaded assets and custom resource packs; invalid libraries block Velocity startup, failed asset updates keep the working cache, and oversized textures may need resizing. ## Migration - **Update Velocity and all participating Paper backends together.** Stop Paper backends before Velocity, install matching `2026.3.2` JARs everywhere, then start Velocity first. Mixed `2026.3.1`/`2026.3.2` networks are incompatible. No database migration is required when upgrading from `2026.3.1`. - Ensure Paper `deployment.server-id` matches its registered Velocity backend name. For multiple groups, add `backend-groups.<server>=<network-channel>` in `velocity-config.properties` for every participating backend and match its Paper `deployment.network-channel`; these mappings are optional with one group. - Telegram now accepts incoming messages only from explicitly mapped chats/topics in `telegram.inbound.routes`. Set `telegram.inbound.allow-unmapped-chats: true` to restore the previous `default-channel` fallback. Custom pings from Telegram or other generic remote sources require an empty `use-permission`.
release

CoreChatX 2026.3.2

2026.3.2
7 окт. 2026 г.23Minecraft: 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.2, 26.3velocity
Скачать
Что нового
# CoreChatX 2026.3.2 ## Changed - ChatItem previews and remote PMs now limit overlapping requests, with customizable busy feedback in `chatitems.yml` and `messages.yml`. Older previews may expire early under heavy load. Forwarded PMs consume the configured cooldown even if later rejected or timed out. - Discord console logging now recovers from stalled requests, and ChatItem disk-cache limits remain enforced across reloads, with memory fallback on cache errors. Image transfers and Discord/Telegram exports also have workload limits and timeouts; overloaded exports may be dropped while Minecraft chat continues. ## Safety - Strengthened Velocity backend/player validation, Discord account-link updates and chat-text handling. Added stricter checks for runtime libraries, downloaded assets and custom resource packs; invalid libraries block Velocity startup, failed asset updates keep the working cache, and oversized textures may need resizing. ## Migration - **Update Velocity and all participating Paper backends together.** Stop Paper backends before Velocity, install matching `2026.3.2` JARs everywhere, then start Velocity first. Mixed `2026.3.1`/`2026.3.2` networks are incompatible. No database migration is required when upgrading from `2026.3.1`. - Ensure Paper `deployment.server-id` matches its registered Velocity backend name. For multiple groups, add `backend-groups.<server>=<network-channel>` in `velocity-config.properties` for every participating backend and match its Paper `deployment.network-channel`; these mappings are optional with one group. - Telegram now accepts incoming messages only from explicitly mapped chats/topics in `telegram.inbound.routes`. Set `telegram.inbound.allow-unmapped-chats: true` to restore the previous `default-channel` fallback. Custom pings from Telegram or other generic remote sources require an empty `use-permission`.
release

CoreChatX 2026.3.1

2026.3.1
1 окт. 2026 г.9Minecraft: 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.2paper, purpur
Скачать
Что нового
# CoreChatX 2026.3.1 ## Added - Added optional full advancement synchronization between Paper backends in the same Velocity group. The proxy stores criteria, partial progress and completion dates in YAML or MySQL, progressively merging each player's existing progress as they visit each backend. Explicit revocations stay revoked when older backend data is imported. - Historical advancement progress is restored without repeating chat announcements, toasts, XP, items or reward functions. New completions can announce live across participating backends; inventories, XP balances, statistics and recipe books are not synchronized. - Added `death-messages.network-enabled` to relay public death messages within the same Velocity group. It respects the source world's death-message rule and excludes hidden, cancelled and team-restricted messages; local death messages remain unchanged. - Added optional `PremiumVanish` hooks on Paper standalone and Velocity. Hidden players' join, first-join and quit announcements are suppressed, including their corresponding bridge messages; accepted first joins and counters are still recorded. ## Configuration - Advancement synchronization and network death messages are **disabled by default**. Advancement sync requires `advancement-sync.enabled` on Paper and `velocity-advancements.properties` on Velocity, explicit backend-to-group pins and a unique secret per backend. Its authenticated endpoint saves independently of online plugin-message carriers. Use HTTPS or an encrypted tunnel between separate machines; endpoint settings require a restart. Disable other plugins' advancement synchronization first. See the [setup guide](https://wiki-corechatx.icewolf23x.dev/advancement-sync.html). - `hooks.premiumvanish` is **enabled by default** in Paper `config.yml` and Velocity `velocity-config.properties`. Install `PremiumVanish` on the proxy for Velocity-owned network announcements. Paper hook changes apply through `/corechatx reload`; Velocity changes require a restart. ## Migration - **Before updating, stop the affected servers and back up every file and subfolder in their plugin folders, the complete Minecraft worlds and the CoreChatX database when MySQL is used.** Stop Paper backends before Velocity so final saves can finish. Install matching `2026.3.1` JARs on the proxy and all participating backends, then start Velocity first. - MySQL adds schema migration `V004` and `ccx_player_advancements`, including installations that leave advancement sync disabled. The normal schema auto-migration applies it at startup; if `schema-auto-migrate=false`, arrange the schema upgrade before boot. Older builds reject schema version 4: reverting only the JAR is not a database downgrade. - Canonical backups containing advancement records use format `3` and retain that progress through Velocity YAML-to-MySQL migration and rollback. Backups without advancement records keep format `1` or `2`, and both remain readable. Keep pre-update backups for downgrades, and retain each backend's existing world files until the required player visits have imported their progress.
release

CoreChatX 2026.3.1

2026.3.1
1 окт. 2026 г.8Minecraft: 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.2velocity
Скачать
Что нового
# CoreChatX 2026.3.1 ## Added - Added optional full advancement synchronization between Paper backends in the same Velocity group. The proxy stores criteria, partial progress and completion dates in YAML or MySQL, progressively merging each player's existing progress as they visit each backend. Explicit revocations stay revoked when older backend data is imported. - Historical advancement progress is restored without repeating chat announcements, toasts, XP, items or reward functions. New completions can announce live across participating backends; inventories, XP balances, statistics and recipe books are not synchronized. - Added `death-messages.network-enabled` to relay public death messages within the same Velocity group. It respects the source world's death-message rule and excludes hidden, cancelled and team-restricted messages; local death messages remain unchanged. - Added optional `PremiumVanish` hooks on Paper standalone and Velocity. Hidden players' join, first-join and quit announcements are suppressed, including their corresponding bridge messages; accepted first joins and counters are still recorded. ## Configuration - Advancement synchronization and network death messages are **disabled by default**. Advancement sync requires `advancement-sync.enabled` on Paper and `velocity-advancements.properties` on Velocity, explicit backend-to-group pins and a unique secret per backend. Its authenticated endpoint saves independently of online plugin-message carriers. Use HTTPS or an encrypted tunnel between separate machines; endpoint settings require a restart. Disable other plugins' advancement synchronization first. See the [setup guide](https://wiki-corechatx.icewolf23x.dev/advancement-sync.html). - `hooks.premiumvanish` is **enabled by default** in Paper `config.yml` and Velocity `velocity-config.properties`. Install `PremiumVanish` on the proxy for Velocity-owned network announcements. Paper hook changes apply through `/corechatx reload`; Velocity changes require a restart. ## Migration - **Before updating, stop the affected servers and back up every file and subfolder in their plugin folders, the complete Minecraft worlds and the CoreChatX database when MySQL is used.** Stop Paper backends before Velocity so final saves can finish. Install matching `2026.3.1` JARs on the proxy and all participating backends, then start Velocity first. - MySQL adds schema migration `V004` and `ccx_player_advancements`, including installations that leave advancement sync disabled. The normal schema auto-migration applies it at startup; if `schema-auto-migrate=false`, arrange the schema upgrade before boot. Older builds reject schema version 4: reverting only the JAR is not a database downgrade. - Canonical backups containing advancement records use format `3` and retain that progress through Velocity YAML-to-MySQL migration and rollback. Backups without advancement records keep format `1` or `2`, and both remain readable. Keep pre-update backups for downgrades, and retain each backend's existing world files until the required player visits have imported their progress.
release

CoreChatX 2026.3.0.1-hotfix

2026.3.0.1-hotfix
13 сент. 2026 г.42Minecraft: 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.2paper, purpur
Скачать
Что нового
# CoreChatX 2026.3.0.1-hotfix ## Changed - Paper and Velocity now display prominent, colored console banners for Modrinth updates: green for recommended stable releases and yellow for experimental alpha/beta builds, with installed/available versions and the download link. - Added the [CoreChatX wiki](https://wiki-corechatx.icewolf23x.dev/) link to the Paper and Velocity startup banners. ## Fixed (hotfix-related) - Fixed the first public chat message after joining or switching a Velocity backend being rejected because moderation data was only requested when the player tried to chat. Paper now loads player settings, privacy, channel, mute and global state proactively on join, with bounded read retries. Chat remains protected while authoritative moderation data is unavailable. - Fixed delayed proxy join callbacks applying display changes or first-join announcements to a disconnected or replaced player session. Accepted-join effects now wait for confirmed player and moderation data. - Fixed proxy request timeouts and first-join warnings reporting only `null`. Diagnostics now identify the operation, request, backend and player; timed-out writes are not automatically retried because they may already have committed. - Fixed the Modrinth update checker rejecting four-part hotfix versions such as `2026.3.0.1-hotfix`. This build orders hotfix revisions numerically and continues to detect later stable, beta and alpha versions. ## Compatibility - Updating from `2026.3.0` requires no configuration conversion or MySQL schema migration. Existing YAML/MySQL data and protocol `29` are unchanged. ## Migration - **Stop the affected servers and back up every file and subfolder in the CoreChatX plugin folders before replacing the JARs; also back up MySQL when used.** Install the matching hotfix JAR on Velocity and each participating Paper backend, then restart. Download this hotfix manually: the update checker in the older `2026.3.0` build does not recognize this version format. For upgrades from `2026.2.6` that also move YAML data to MySQL, follow the [step-by-step migration guide](https://wiki-corechatx.icewolf23x.dev/migration.html).
release

CoreChatX 2026.3.0.1-hotfix

2026.3.0.1-hotfix
13 сент. 2026 г.14Minecraft: 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.2velocity
Скачать
Что нового
# CoreChatX 2026.3.0.1-hotfix ## Changed - Paper and Velocity now display prominent, colored console banners for Modrinth updates: green for recommended stable releases and yellow for experimental alpha/beta builds, with installed/available versions and the download link. - Added the [CoreChatX wiki](https://wiki-corechatx.icewolf23x.dev/) link to the Paper and Velocity startup banners. ## Fixed (hotfix-related) - Fixed the first public chat message after joining or switching a Velocity backend being rejected because moderation data was only requested when the player tried to chat. Paper now loads player settings, privacy, channel, mute and global state proactively on join, with bounded read retries. Chat remains protected while authoritative moderation data is unavailable. - Fixed delayed proxy join callbacks applying display changes or first-join announcements to a disconnected or replaced player session. Accepted-join effects now wait for confirmed player and moderation data. - Fixed proxy request timeouts and first-join warnings reporting only `null`. Diagnostics now identify the operation, request, backend and player; timed-out writes are not automatically retried because they may already have committed. - Fixed the Modrinth update checker rejecting four-part hotfix versions such as `2026.3.0.1-hotfix`. This build orders hotfix revisions numerically and continues to detect later stable, beta and alpha versions. ## Compatibility - Updating from `2026.3.0` requires no configuration conversion or MySQL schema migration. Existing YAML/MySQL data and protocol `29` are unchanged. ## Migration - **Stop the affected servers and back up every file and subfolder in the CoreChatX plugin folders before replacing the JARs; also back up MySQL when used.** Install the matching hotfix JAR on Velocity and each participating Paper backend, then restart. Download this hotfix manually: the update checker in the older `2026.3.0` build does not recognize this version format. For upgrades from `2026.2.6` that also move YAML data to MySQL, follow the [step-by-step migration guide](https://wiki-corechatx.icewolf23x.dev/migration.html).
release

CoreChatX 2026.3.0

2026.3.0
9 сент. 2026 г.7Minecraft: 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.2paper, purpur
Скачать
Что нового
# CoreChatX 2026.3.0 ## Added - Added asynchronous Modrinth update checks after startup and every 24 hours by default. Console and OP players receive stable-update recommendations and separate experimental alpha/beta announcements; no automatic installation occurs. - Optional `MYSQL` runtime storage for standalone Paper and Velocity: preferences, nicknames, statistics, active/hidden channels, ignores, mutes, global state, Discord links, unlink records and pending codes. `YAML` remains the default; Velocity keeps each network group separate. - Added `/ccxstorage` on Paper and Velocity for health checks, file/database validation, checksummed backups, migration plans, parity checks, history, resume and abort. Confirmations and durable journals protect migration/rollback; unfinished transitions keep affected gameplay storage unavailable. - Added the **Channel** compass in `/ccxsettings` and `/chatsettings`: `Persistent` keeps the last channel; `Non persistent` restores the configured default on reconnect, including after restarts. Changing the preference leaves the current channel unchanged, as do proxy backend transfers within the same connection. ## Changed - Settings, nickname, channel, ignore and moderation changes now report success after authority confirmation. Single-setting updates preserve other preferences; `/ignore` and `/unignore` apply the requested final state and enforce saved-list limits. A response timeout does not cancel an accepted database write. - With `MYSQL`, Paper loads complete player state before admission. Gameplay storage waits for database readiness and ownership checks; failures never silently select YAML. A database lease prevents two live processes from writing the same scope. ## Fixed ### Storage and recovery - Fixed `/ccxstorage migrate files-to-mysql abort` deleting rows that a planned/failed run never imported. Abort now preserves later imports and refuses deletion when imported contents have changed. - Fixed recovery accepting run IDs from another namespace or scope. Migration operations now enforce the configured owner, preventing cross-group changes. - Fixed Paper treating malformed persistent YAML as empty data and overwriting it. Startup reports the error; failed player/global reloads block writes and shutdown flushes until the file is repaired and successfully reloaded. - Fixed older concurrent YAML snapshots replacing newer data. Write failures now reach callers, and maintenance drains accepted writes—including timed-out requests—before migration or rollback. - Fixed writes retaining authority after waiting on locks past lease expiry. Shutdown also resolves queued operations and late completions, preventing expired owners from writing and callers from waiting indefinitely. - Fixed migration/rollback retries after a successful abort being mistaken for completed cutovers. Verified aborts can be retried without deleting journals; Velocity also supports cancelling unexecuted plans and safely repeating interrupted aborts. - Fixed MySQL startup deadlocks when network groups initialize separate scopes concurrently. Duplicate owners of the same scope remain rejected. - Fixed YAML saves after MySQL-to-YAML rollback dropping `runtime-updated-at`, regressing player aggregate versions and breaking canonical backup parity. - Fixed MySQL startup checksum mismatches from packaged migration line endings. JARs preserve the original migration bytes; never edit database checksums to bypass validation. ### Player state and moderation - Fixed delayed proxy mute lookups clearing newer mutes or leaving backend caches incorrectly cleared. - Fixed proxy public chat and PMs bypassing mutes before the player state loaded. With mute enforcement enabled, messages receive temporary-unavailability feedback until the authoritative mute lookup completes. - Fixed simultaneous Velocity YAML nickname changes assigning the same visible name to different players. Full player updates and `/nick` enforce normalized nickname ownership atomically. - Fixed late completions overwriting newer settings, channels, statistics, mutes, global state or Discord links/unlinks. Old quit cleanup no longer evicts newer login state; delayed code reads cannot restore invalidated Discord codes. - Fixed `/chatmute` overwriting the first-join counter and concurrent settings/ignore changes replacing unrelated values. - Fixed `/corechatx reload` temporarily resetting proxy preferences or statistics. Hydrated mirrors and pending requests survive reload, then refresh after transport registration. Deployment and storage identity changes still require restart. ### Discord and integrations - Fixed link instructions showing `/link` with custom Discord command names. Minecraft code help, required-link admission and Discord DMs now use the configured standalone/proxy command. - Fixed the first inbound Discord message showing an unresolved linked-player nickname before proxy player state loaded. - Fixed mandatory Discord linking admitting unlinked players when commands were unavailable or code creation failed. `account-linking.require-linked-to-play` now denies entry; Velocity checks before backend entry. `deny-if-unverifiable` only controls role checks for already linked players. - Fixed Velocity Discord console feedback missing messages sent through current or typed Adventure calls. - Reduced resource-pack fingerprint string copying during Discord ChatItem image initialization, cutting avoidable Paper startup/reload work while preserving the cache fingerprint format. - Fixed Discord token verification and gateway shutdown blocking Paper startup or `/corechatx reload`. Reconnection is asynchronous; retired connections and queued role callbacks cannot revive the old bridge. - Fixed linked Discord messages being dropped on standalone MySQL after the Minecraft player quit or the server restarted. Offline nickname/staff checks load saved settings asynchronously, honor `allow-offline-linked-players` and deny delivery when settings are unavailable. ### Chat and menus - Fixed dragging items into the temporary `/ccxsettings` inventory and losing them when the menu closed. - Fixed cross-server PM timeouts silently discarding pending deliveries. Each affected sender is now notified once. - Fixed inbound bridge and outbound Telegram length limits splitting emoji UTF-16 pairs. ## Configuration - Added `update-check.enabled` and `update-check.interval-hours` to Paper `config.yml` and Velocity `velocity-config.properties`. Customize OP notices through `messages.yml` keys `updates.stable` and `updates.preview`; Velocity notifications are console-only. - Added `{link_command}`, the configured Discord command name without `/`, to linking messages. Use `/{link_command} code:{code}`; standalone Paper or Velocity supplies `account-linking.link-command-name`. Exact older stock messages adapt automatically; customized messages need the placeholder added manually. - Paper `storage.yml` and Velocity `velocity-storage.yml` now configure `storage.backend`, stable namespace/scope, MySQL connections/TLS, bounded pools/executors, timeouts, leases and `schema-auto-migrate`. Supply credentials through `storage.mysql.password-env`; TLS defaults to `VERIFY_IDENTITY`. - Added saved `persistent-channel-enabled`, defaulting to `true` for existing players, and `link-check-unavailable-kick` in Paper Discord messages and Velocity account-linking messages. ## Permissions - Added `corechatx.command.storage` for inspection and backups: default `op` on Paper; grant it through the permission provider on Velocity. Migration/rollback changes remain console-only, including for operators. Velocity transitions require `--all-scopes`. ## Compatibility - Paper and Velocity JARs include the MySQL runtime and JDBC driver. Install only the matching platform JAR; separate storage-module, HikariCP or Connector/J installs are unnecessary. YAML-only setups need no database. ## Migration - **Before updating, stop the affected servers and back up every file and subfolder in the CoreChatX plugin folders**, including configuration, player data, credentials, journals and backups. Keep the old JARs separately; also back up MySQL when used. - The website includes a [2026.2.6 YAML → 2026.3.0 MySQL migration guide](https://wiki-corechatx.icewolf23x.dev/migration.html) for standalone Paper and Velocity: backups, configuration, verified migration, activation, rollback and interruption recovery. - Upgrade Velocity and every participating Paper backend together. Protocol `29` cannot reliably exchange complete runtime state and mutations with older JARs. - Legacy `storage.sql.*` never enabled MySQL. Use `storage.backend: MYSQL` and `storage.mysql.*`; existing YAML data requires `/ccxstorage migrate files-to-mysql plan` and confirmed execute/restart. Changing the backend alone does not migrate data. - Schema `V003` adds persistent channels as the default for existing players. With `schema-auto-migrate: false`, arrange the schema upgrade before startup. Older builds reject schema `3`; replacing the JAR cannot downgrade the database. - Keep corrected 2026.3.0 JARs after abort: older builds cannot read the `ABORTED` local journal state. Use each new plan's run IDs and tokens; never delete journals or alter checksums to force a retry. - Use `/ccxstorage rollback mysql-to-files` to export current MySQL data before returning to YAML; never overwrite newer data with a pre-migration backup. Canonical format `1` remains readable; non-persistent channel preferences require format `2` and its matching newer build. ## Known issues - Discord rate limits can delay channel-topic updates after rapid joins/restarts. Chat and linking continue while topic updates retry. - The 2026.2.6 migration was tested with synthetic legacy data, not production data. Rehearse with an isolated copy of your own data and retain complete backups before cutover.
release

CoreChatX 2026.3.0

2026.3.0
9 сент. 2026 г.7Minecraft: 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.2velocity
Скачать
Что нового
# CoreChatX 2026.3.0 ## Added - Added asynchronous Modrinth update checks after startup and every 24 hours by default. Console and OP players receive stable-update recommendations and separate experimental alpha/beta announcements; no automatic installation occurs. - Optional `MYSQL` runtime storage for standalone Paper and Velocity: preferences, nicknames, statistics, active/hidden channels, ignores, mutes, global state, Discord links, unlink records and pending codes. `YAML` remains the default; Velocity keeps each network group separate. - Added `/ccxstorage` on Paper and Velocity for health checks, file/database validation, checksummed backups, migration plans, parity checks, history, resume and abort. Confirmations and durable journals protect migration/rollback; unfinished transitions keep affected gameplay storage unavailable. - Added the **Channel** compass in `/ccxsettings` and `/chatsettings`: `Persistent` keeps the last channel; `Non persistent` restores the configured default on reconnect, including after restarts. Changing the preference leaves the current channel unchanged, as do proxy backend transfers within the same connection. ## Changed - Settings, nickname, channel, ignore and moderation changes now report success after authority confirmation. Single-setting updates preserve other preferences; `/ignore` and `/unignore` apply the requested final state and enforce saved-list limits. A response timeout does not cancel an accepted database write. - With `MYSQL`, Paper loads complete player state before admission. Gameplay storage waits for database readiness and ownership checks; failures never silently select YAML. A database lease prevents two live processes from writing the same scope. ## Fixed ### Storage and recovery - Fixed `/ccxstorage migrate files-to-mysql abort` deleting rows that a planned/failed run never imported. Abort now preserves later imports and refuses deletion when imported contents have changed. - Fixed recovery accepting run IDs from another namespace or scope. Migration operations now enforce the configured owner, preventing cross-group changes. - Fixed Paper treating malformed persistent YAML as empty data and overwriting it. Startup reports the error; failed player/global reloads block writes and shutdown flushes until the file is repaired and successfully reloaded. - Fixed older concurrent YAML snapshots replacing newer data. Write failures now reach callers, and maintenance drains accepted writes—including timed-out requests—before migration or rollback. - Fixed writes retaining authority after waiting on locks past lease expiry. Shutdown also resolves queued operations and late completions, preventing expired owners from writing and callers from waiting indefinitely. - Fixed migration/rollback retries after a successful abort being mistaken for completed cutovers. Verified aborts can be retried without deleting journals; Velocity also supports cancelling unexecuted plans and safely repeating interrupted aborts. - Fixed MySQL startup deadlocks when network groups initialize separate scopes concurrently. Duplicate owners of the same scope remain rejected. - Fixed YAML saves after MySQL-to-YAML rollback dropping `runtime-updated-at`, regressing player aggregate versions and breaking canonical backup parity. - Fixed MySQL startup checksum mismatches from packaged migration line endings. JARs preserve the original migration bytes; never edit database checksums to bypass validation. ### Player state and moderation - Fixed delayed proxy mute lookups clearing newer mutes or leaving backend caches incorrectly cleared. - Fixed proxy public chat and PMs bypassing mutes before the player state loaded. With mute enforcement enabled, messages receive temporary-unavailability feedback until the authoritative mute lookup completes. - Fixed simultaneous Velocity YAML nickname changes assigning the same visible name to different players. Full player updates and `/nick` enforce normalized nickname ownership atomically. - Fixed late completions overwriting newer settings, channels, statistics, mutes, global state or Discord links/unlinks. Old quit cleanup no longer evicts newer login state; delayed code reads cannot restore invalidated Discord codes. - Fixed `/chatmute` overwriting the first-join counter and concurrent settings/ignore changes replacing unrelated values. - Fixed `/corechatx reload` temporarily resetting proxy preferences or statistics. Hydrated mirrors and pending requests survive reload, then refresh after transport registration. Deployment and storage identity changes still require restart. ### Discord and integrations - Fixed link instructions showing `/link` with custom Discord command names. Minecraft code help, required-link admission and Discord DMs now use the configured standalone/proxy command. - Fixed the first inbound Discord message showing an unresolved linked-player nickname before proxy player state loaded. - Fixed mandatory Discord linking admitting unlinked players when commands were unavailable or code creation failed. `account-linking.require-linked-to-play` now denies entry; Velocity checks before backend entry. `deny-if-unverifiable` only controls role checks for already linked players. - Fixed Velocity Discord console feedback missing messages sent through current or typed Adventure calls. - Reduced resource-pack fingerprint string copying during Discord ChatItem image initialization, cutting avoidable Paper startup/reload work while preserving the cache fingerprint format. - Fixed Discord token verification and gateway shutdown blocking Paper startup or `/corechatx reload`. Reconnection is asynchronous; retired connections and queued role callbacks cannot revive the old bridge. - Fixed linked Discord messages being dropped on standalone MySQL after the Minecraft player quit or the server restarted. Offline nickname/staff checks load saved settings asynchronously, honor `allow-offline-linked-players` and deny delivery when settings are unavailable. ### Chat and menus - Fixed dragging items into the temporary `/ccxsettings` inventory and losing them when the menu closed. - Fixed cross-server PM timeouts silently discarding pending deliveries. Each affected sender is now notified once. - Fixed inbound bridge and outbound Telegram length limits splitting emoji UTF-16 pairs. ## Configuration - Added `update-check.enabled` and `update-check.interval-hours` to Paper `config.yml` and Velocity `velocity-config.properties`. Customize OP notices through `messages.yml` keys `updates.stable` and `updates.preview`; Velocity notifications are console-only. - Added `{link_command}`, the configured Discord command name without `/`, to linking messages. Use `/{link_command} code:{code}`; standalone Paper or Velocity supplies `account-linking.link-command-name`. Exact older stock messages adapt automatically; customized messages need the placeholder added manually. - Paper `storage.yml` and Velocity `velocity-storage.yml` now configure `storage.backend`, stable namespace/scope, MySQL connections/TLS, bounded pools/executors, timeouts, leases and `schema-auto-migrate`. Supply credentials through `storage.mysql.password-env`; TLS defaults to `VERIFY_IDENTITY`. - Added saved `persistent-channel-enabled`, defaulting to `true` for existing players, and `link-check-unavailable-kick` in Paper Discord messages and Velocity account-linking messages. ## Permissions - Added `corechatx.command.storage` for inspection and backups: default `op` on Paper; grant it through the permission provider on Velocity. Migration/rollback changes remain console-only, including for operators. Velocity transitions require `--all-scopes`. ## Compatibility - Paper and Velocity JARs include the MySQL runtime and JDBC driver. Install only the matching platform JAR; separate storage-module, HikariCP or Connector/J installs are unnecessary. YAML-only setups need no database. ## Migration - **Before updating, stop the affected servers and back up every file and subfolder in the CoreChatX plugin folders**, including configuration, player data, credentials, journals and backups. Keep the old JARs separately; also back up MySQL when used. - The website includes a [2026.2.6 YAML → 2026.3.0 MySQL migration guide](https://wiki-corechatx.icewolf23x.dev/migration.html) for standalone Paper and Velocity: backups, configuration, verified migration, activation, rollback and interruption recovery. - Upgrade Velocity and every participating Paper backend together. Protocol `29` cannot reliably exchange complete runtime state and mutations with older JARs. - Legacy `storage.sql.*` never enabled MySQL. Use `storage.backend: MYSQL` and `storage.mysql.*`; existing YAML data requires `/ccxstorage migrate files-to-mysql plan` and confirmed execute/restart. Changing the backend alone does not migrate data. - Schema `V003` adds persistent channels as the default for existing players. With `schema-auto-migrate: false`, arrange the schema upgrade before startup. Older builds reject schema `3`; replacing the JAR cannot downgrade the database. - Keep corrected 2026.3.0 JARs after abort: older builds cannot read the `ABORTED` local journal state. Use each new plan's run IDs and tokens; never delete journals or alter checksums to force a retry. - Use `/ccxstorage rollback mysql-to-files` to export current MySQL data before returning to YAML; never overwrite newer data with a pre-migration backup. Canonical format `1` remains readable; non-persistent channel preferences require format `2` and its matching newer build. ## Known issues - Discord rate limits can delay channel-topic updates after rapid joins/restarts. Chat and linking continue while topic updates retry. - The 2026.2.6 migration was tested with synthetic legacy data, not production data. Rehearse with an isolated copy of your own data and retain complete backups before cutover.