Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

The kick is usually caused by a Velocity proxy plugin canceling or rewriting a cryptographically signed chat message. It is a server-side protocol compatibility failure, not a problem with your keyboard or home internet. Update Velocity, the backend, ViaVersion, and chat-related plugins; then isolate the plugin that handles chat or commands. If you maintain that plugin, do not cancel a signed message with ChatResult.denied(); pass it through or replace it with an unsigned message using ChatResult.message(text).

The safest repair is to identify the exact client, proxy, backend, ViaVersion, and plugin versions first. The correct workaround depends on whether you can change plugin code, need a drop-in compatibility plugin, or run a CrossChat deployment.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What the error means

“A Proxy Plugin Caused an Illegal Protocol State” means the proxy sent, rejected, or transformed a packet in a way that no longer matched the Minecraft protocol state expected by the client or backend. In the cases documented for modern Minecraft networks, the trigger is signed chat.

Minecraft 1.19.1 introduced cryptographically signed player chat. A chat packet includes proof that it came from the player and has not been altered. A Velocity plugin that intercepts the packet can still moderate, route, or transform chat, but it cannot treat a signed message as if it were an ordinary unsigned string. Canceling or changing it at the wrong point can make the proxy violate the protocol, after which the client is disconnected.

#1 Best Overall
Minecraft - Nintendo Switch
  • Minecraft is a game about placing blocks and going on adventures
  • Explore randomly generated worlds and build amazing things from the simplest of homes to the grandest of castles
  • Play in creative mode with unlimited resources or mine deep into the world in survival mode, crafting weapons and armor to fend off the dangerous mobs
  • Play on the go in handheld or tabletop modes
  • Includes Super Mario Mash-Up, Natural Texture Pack, Biome Settlers Skin Pack, Battle & Beasts Skin Pack, Campfire Tales Skin Pack; Compatible with Nintendo Switch only

CrossChat’s 1.2.0 release notes identify ChatResult.denied() as unable to cancel a cryptographically signed message at the proxy level under the 1.19.1-and-newer protocol. The same notes describe replacing that result with ChatResult.message(text), which strips the signature and prevents the disconnect in the affected flow. Sparked Host describes the broader cause as proxy plugins modifying or canceling signed chat and recommends updating the proxy, backend, and related plugins.

A PaperMC issue reproduced a related combination on Minecraft 1.19.1 and 1.19.2 clients using ViaVersion, Velocity 3.1.2-SNAPSHOT, and a Paper 1.18.2 backend. That combination matters because a network can contain several protocol translations at once: the player’s client, the proxy, ViaVersion, and the server software must all agree on how chat is represented.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why it started with Minecraft 1.19.1

Before signed chat, a proxy plugin could commonly cancel a chat event and send a replacement message without having to account for a cryptographic signature. Starting with 1.19.1, the signature became part of the protocol contract. A plugin that suppresses, edits, or re-emits the original packet has to choose a protocol-valid representation.

There are two broad valid outcomes for a plugin:

  • Pass the signed message through. The original content and signature remain intact.
  • Send a new unsigned message. The plugin deliberately creates replacement text, so the original signature is no longer presented as if it covered the replacement.

The failure occurs when a plugin attempts to deny or mutate the signed packet while the proxy still treats it as the original signed chat. The resulting disconnect is why changing a player’s network, keyboard, or Minecraft controls usually does not solve the issue.

Record the complete version stack before changing anything

Write down the versions from one affected connection and the server it reaches. A version that looks harmless in isolation can be incompatible with another layer, especially when ViaVersion allows clients and backends to use different protocol generations.

Layer Record Why it matters
Client Minecraft version, including whether it is 1.19.1 or newer Signed-chat behavior and protocol expectations changed in 1.19.1.
Proxy Velocity version and build type Proxy APIs and protocol handling differ between releases. The PaperMC reproduction used Velocity 3.1.2-SNAPSHOT.
Backend Paper, Purpur, or another server implementation and its version The backend must accept the representation the proxy sends.
Protocol bridge ViaVersion version and configuration It can translate between client and backend protocol versions, adding another compatibility boundary.
Proxy plugins Every chat, moderation, command-interception, staff-chat, formatting, and messaging plugin Any of these can cancel or rewrite chat before it reaches the backend.
Backend chat plugins Plugins that also format, suppress, or rebroadcast chat Two layers may process the same message or produce duplicate output after a proxy fix.

Also record whether the kick happens for every message or only for particular commands, channels, players, or client versions. That distinction helps separate a general signed-chat conflict from a plugin-specific code path.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Minecraft
  • Skins! We have biome settlers, city folk, town folk, and more!
  • The Nether and all its inhabitants. Fight Ghasts and make friends with Pigmen
  • Cross platform play for up to five players between Pocket Edition and Windows 10
  • Revamped touch controls, controller support, and a controller mapping screen
  • Enhanced Weather effects! Accumulating snow and more

Fix the error in the order least likely to cause damage

1. Update the proxy, backend, bridge, and plugins

Install current compatible builds of Velocity, the Paper or Purpur backend, ViaVersion, and every proxy plugin that handles chat or commands. Sparked Host’s published workflow starts with updates because a plugin may already contain a signed-chat fix, while an old proxy or backend can still reject the corrected packet.

Do not update only the plugin that appears in the kick message. A chat plugin can be current while an old Velocity build, ViaVersion build, or backend still exposes the incompatibility. Check each component’s supported Minecraft and platform range before replacing it.

Keep a backup of the proxy and backend configuration, plugin data, and current binary files. If the update makes a different failure appear, you need a known state to return to while testing.

2. Isolate the conflicting plugin

Temporarily disable plugins that can intercept chat, commands, moderation events, or staff channels. Change one component at a time, restart the proxy, and test with the same client and backend. The one-at-a-time method gives you a defensible cause instead of a guess based on the last file you changed.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Stop the proxy cleanly and make a backup of its plugins and configuration.
  2. Disable one chat, moderation, command-interception, or staff-chat plugin without changing unrelated settings.
  3. Start the proxy and connect with the same Minecraft client version that produced the kick.
  4. Send an ordinary player chat message, then repeat the action that previously caused the disconnect.
  5. If the kick disappears, restore the plugin and disable the next candidate to confirm the result. If it returns only when the first plugin is enabled, that plugin is the primary suspect.

If the network has many candidates, test the proxy with all nonessential chat-related plugins removed, then reintroduce them individually. This establishes whether the problem is in one plugin or in an interaction between two plugins.

3. Check the client, proxy, and backend combination

Test a known-compatible client and backend pair before reintroducing ViaVersion. The documented PaperMC reproduction used 1.19.1/1.19.2 clients, ViaVersion, a Velocity 3.1.2-SNAPSHOT proxy, and Paper 1.18.2. That is not a universal failing matrix, but it demonstrates why the complete stack must be recorded.

Rank #3
Minecraft | Java & Bedrock Deluxe Collection | Windows Digital Code
  • DELUXE COLLECTION — Includes Minecraft: Java & Bedrock Edition, three Bedrock add-ons, three exclusive Character Creator items, and 700 Minecoins.
  • CREATE YOUR WORLD — Build whatever you imagine in an infinite world that’s unique in every playthrough.
  • EXPLORE AND CRAFT — Discover biomes, resources, and mobs, then craft your way through a sandbox world filled with surprises.
  • SURVIVE THE ADVENTURE — Face mysterious foes, travel across exciting landscapes, and venture into perilous dimensions.
  • PLAY TOGETHER — Play cross-platform with friends in Bedrock Edition on console, mobile, and PC, or join community servers in Java Edition on PC, Mac, and Linux. Online console multiplayer requires a platform-specific subscription (sold separately).

If only clients translated through ViaVersion fail, keep the bridge in the investigation rather than assuming the backend is at fault. If every client fails when the same proxy plugin is enabled, the plugin’s signed-chat handling is the stronger lead.

4. Change plugin code that cancels signed chat

If you maintain the offending plugin, inspect its chat event and result handling. A call to ChatResult.denied() is not a safe way to cancel a cryptographically signed message at the proxy level on the 1.19.1-and-newer protocol.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use one of these approaches instead:

  • Pass the original signed message through when the plugin has no reason to alter it.
  • When the plugin must replace the content, construct a new unsigned message with ChatResult.message(text), following the implementation pattern documented in CrossChat 1.2.0.
  • Move a decision that requires canceling chat to a layer that supports the target protocol, rather than pretending the original signature still covers replacement text.

Test the repaired build with signed chat, replacement text, moderation denial, and any staff-channel routing separately. A build that fixes ordinary chat can still fail on a less common interception path.

5. Install a compatibility workaround only when its versions match

ChatPatcher is documented as a Velocity plugin for Minecraft 1.21.5. Its stated design removes signed-chat handling and requires no setup or dependencies. That makes it a potential drop-in workaround when the network’s Minecraft and Velocity versions match its supported range.

Treat it as version-sensitive rather than a universal cure. Confirm the plugin’s current source and release status, test it on a staging proxy, and verify that moderation, formatting, and logging still behave as intended. Removing signed-chat handling changes how messages are represented, so a workaround that prevents kicks can expose different behavior in plugins that expect signed data.

6. Apply the CrossChat backend requirements when relevant

CrossChat deployments have an additional separation between the proxy component and the backend. Install its companion CrossChatBackend on Paper or Purpur when you need to suppress duplicate local chat after the proxy has handled the message.

Rank #4
Mattel Games UNO Minecraft Card Game with Storage Tin,Ages 7+ | Video Game Themed Deck with Special Rule for Kids, Teens, Parties & Family Game Night, 2-10 Players (Amazon Exclusive)
  • The classic UNO card game builds fun on game night with a Minecraft theme.
  • UNO Minecraft features a deck and storage tin decorated with graphics from the popular video game.
  • Players match colors and numbers to the card on top of the discard pile as in the classic game.
  • The Creeper card unique to this deck forces other players to draw 3 cards.
  • Makes a great gift for kid, teen, adult and family game nights with 2 to 10 players ages 7 years and older, especially Minecraft and video game fans.

The CrossChat release notes state that this backend component supports Paper 1.19.1 and newer and requires Java 17 or newer. They also state that paper-global.yml may need:

enforce-secure-profiles: false

That setting is relevant when CrossChat sends signature-stripped messages. Apply it only when the CrossChat documentation and your actual versions call for it, and keep a record of the change because it affects the backend’s secure-profile enforcement. A configuration change without the matching backend component can leave you with duplicate messages or another compatibility failure.

7. Restart the repaired proxy

Stop and start the proxy after the corrected plugin build, compatibility plugin, or configuration is installed. Do not assume that replacing a JAR while the proxy is running reloads every event handler. IWPG reported on July 15, 2026 that a live incident in which any chat entry caused the kick was resolved after the proxy was restarted with a repaired build.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

After the restart, test ordinary chat, the previously failing message, commands, staff channels, and a second client version if your network supports one. Keep the old build available until those checks pass.

Choose the mitigation that fits your network

Mitigation Intervention point Documented compatibility information Configuration burden Main operational concern
Update and isolate Proxy, backend, ViaVersion, and plugin deployment No fixed version range; all components must be mutually compatible. Moderate: requires backups, controlled restarts, and stepwise testing. Updating only one layer can leave the same protocol mismatch in place.
Plugin-code repair Velocity plugin implementation CrossChat 1.2.0 documents replacing ChatResult.denied() with ChatResult.message(text) for the affected signed-chat path. High if you do not control the source; low after a tested release is available. A different event path may still cancel or mutate signed chat.
ChatPatcher Drop-in Velocity compatibility plugin Documented for Minecraft 1.21.5; no setup or dependencies are stated. Low initial configuration. It is version-sensitive and removes signed-chat handling, so test moderation and logging behavior.
CrossChat plus CrossChatBackend Proxy and Paper/Purpur backend Backend component documented for Paper 1.19.1+ and Java 17+. Moderate: install the companion backend and possibly adjust paper-global.yml. Missing the backend component can allow duplicate local chat; the secure-profile setting may be required for stripped signatures.
Reflection-based patch Runtime internals of the proxy or plugin Not established by the documented compatibility notes as a general solution. High. Internal APIs can change between builds; prefer a maintained, version-matched plugin or a source-level fix.

The table is a decision aid, not a promise that one workaround supports every combination. Match the intervention to the exact Minecraft, Velocity, backend, and plugin versions recorded at the start.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshoot by the symptom that remains

The kick happens on every chat message

Disable all proxy plugins that can intercept chat and test again. If chat works with those plugins absent, re-enable them individually. This pattern usually points to a plugin event handler that processes every signed message, rather than to a single malformed word or command.

Best Value
Sale
Ravensburger Minecraft Labyrinth - A Strategic Maze Challenge Featuring Steve, Alex, Creepers, Spiders,Llamas, and More - Fun Family Game for 2-4 Players - Ages 7 and Up
  • The Minecraft Labyrinth invites 2-4 people aged 7 and over to immerse themselves in the world of Minecraft, move corridors and search for hidden characters and items
  • The classic in the look of the well-known and popular computer game Minecraft! The labyrinth has been delighting children and adults for decades and has become a highlight among board games
  • A fun family game for children and adults: This board game for ages 7 and up is a must-have in any game collection! Simple rules, entertaining games and exciting rounds ensure long-lasting fun
  • A search and slide game that challenges and encourages logical thinking in a playful way
  • A great gift or souvenir for all Minecraft fans: the characteristic illustrations provide an authentic gaming experience

Only Minecraft 1.19.1-and-newer clients are kicked

Prioritize signed-chat handling. Compare the plugin’s behavior for pass-through messages versus replacement messages, and inspect any use of ChatResult.denied(). Older clients may not exercise the same signed-chat path, so their success does not prove the plugin is correct for modern clients.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Only ViaVersion clients are kicked

Test a client whose protocol matches the backend without ViaVersion, then test the same client through the bridge. Record both outcomes and update ViaVersion before changing plugin code. The bridge can expose an incompatibility that does not appear in a same-version connection.

The kick stopped, but chat appears twice

Look for both the proxy chat plugin and the backend’s local chat handling. In a CrossChat deployment, install and configure CrossChatBackend on Paper or Purpur when duplicate local chat must be suppressed. Do not solve duplication by randomly disabling backend chat until you know which component is responsible for the second broadcast.

A compatibility plugin prevents the kick but breaks moderation

Return to a controlled test environment and verify the plugin’s supported Minecraft and Velocity versions. Because ChatPatcher removes signed-chat handling, plugins that depend on signatures or signed metadata may need a code update instead. Keep the workaround disabled on production until its behavior is acceptable for moderation, logging, and staff workflows.

The change had no effect

Confirm that the proxy actually loaded the repaired build, that the old JAR is not still present under another filename, and that the proxy was fully restarted. Then repeat the isolation test. A restart alone cannot repair a plugin that still calls the incompatible result method, and a code fix cannot help if an older duplicate plugin remains enabled.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Operational checklist for a permanent fix

  • Record the client, Velocity, backend, ViaVersion, Java, and plugin versions before each production change.
  • Keep proxy and backend builds within the support ranges documented by their plugins.
  • List every component that can cancel, format, redirect, moderate, or rebroadcast chat.
  • Test signed chat from a 1.19.1-or-newer client after every chat-plugin update.
  • For plugin code, pass signed messages through or deliberately create unsigned replacement text; do not use ChatResult.denied() to cancel the signed proxy message in the affected protocol.
  • Use ChatPatcher only after confirming its Minecraft 1.21.5 and Velocity compatibility for your network.
  • For CrossChat, install CrossChatBackend on the Paper/Purpur servers when duplicate local chat must be suppressed, and apply enforce-secure-profiles: false only when its documented signed-message workflow requires it.
  • Restart the proxy after deploying a repaired build or changing a setting.
  • Retest ordinary chat, the original failing action, commands, staff channels, and translated client versions before declaring the incident closed.

When to escalate to the plugin maintainer

Contact the plugin maintainer with the complete version stack, the smallest set of enabled plugins that reproduces the kick, the exact client version, and whether the failure occurs on ordinary chat or only on a replacement or moderation path. Include the relevant proxy log excerpt if available, but do not omit the versions: signed-chat compatibility depends on the interaction between layers.

A maintainer can then determine whether the plugin should pass the signed packet through, create an unsigned replacement with ChatResult.message(text), or move the decision to another event layer. If the maintainer supplies a repaired build, install it on a staging proxy first, perform the same connection tests, and restart production only after the repaired path is confirmed.

Quick Recap

Bestseller No. 1
Minecraft - Nintendo Switch
Minecraft - Nintendo Switch
Minecraft is a game about placing blocks and going on adventures; Play on the go in handheld or tabletop modes
$29.82
Bestseller No. 2
Minecraft
Minecraft
Skins! We have biome settlers, city folk, town folk, and more!; The Nether and all its inhabitants. Fight Ghasts and make friends with Pigmen
$6.99
Bestseller No. 4
Mattel Games UNO Minecraft Card Game with Storage Tin,Ages 7+ | Video Game Themed Deck with Special Rule for Kids, Teens, Parties & Family Game Night, 2-10 Players (Amazon Exclusive)
Mattel Games UNO Minecraft Card Game with Storage Tin,Ages 7+ | Video Game Themed Deck with Special Rule for Kids, Teens, Parties & Family Game Night, 2-10 Players (Amazon Exclusive)
The classic UNO card game builds fun on game night with a Minecraft theme.; The Creeper card unique to this deck forces other players to draw 3 cards.
$11.46
SaleBestseller No. 5

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.