> For the complete documentation index, see [llms.txt](https://esmp-fun.gitbook.io/plugins/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://esmp-fun.gitbook.io/plugins/community-chat/help/troubleshooting.md).

# Troubleshooting

## Starting the relay

| It says                                                  | The fix                                                                                                                                                                                                                                                                             |
| -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Config not found: ...`                                  | The `config.yml` file must sit in the same folder as the jar. On Windows, check it isn't secretly called `config.yml.txt` (Windows hides file extensions by default). The [setup guide](/plugins/community-chat/getting-started/set-up-the-network.md) has a ready-to-paste config. |
| `UnsupportedClassVersionError` or similar Java complaint | Your Java is too old — the relay needs Java 25. Install the latest from [adoptium.net](https://adoptium.net).                                                                                                                                                                       |
| Something about the licence                              | Your download carries its own licence — check the [licence dashboard](https://esmp.fun/plugins/dashboard.php), or simply re-download the jar from where you bought it.                                                                                                              |

## Connecting a server

| Symptom                                                                                              | The fix                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Console banner "NOT connected yet"                                                                   | The token in `plugins/CrossCommunitySRV/config.yml` is still the placeholder — paste the real one, then `/crosschat reload`.                                                                                                                                                                                                                                                                                                                   |
| `/crosschat status` says "Relay not reachable"                                                       | The relay is down, the `relay.url` address is wrong, or the relay's port isn't open to the internet (`8377` by default; on Minecraft hosting it's the number the panel assigned). The firewall notes in the [Minecraft hosting](/plugins/community-chat/getting-started/relay-on-a-minecraft-server.md) and [VPS](/plugins/community-chat/getting-started/relay-on-a-vps.md) guides cover every layer. Once reachable it reconnects by itself. |
| The relay says `Listening on ...` but **no** server can connect                                      | A firewall layer is still closed (cloud firewall, panel port, or — on Oracle — its baked-in iptables rules), or the port in the relay's `listen:` config doesn't match the port in the address you handed out. Both are covered step-by-step in the hosting guides above.                                                                                                                                                                      |
| **Some** servers connect fine, others get "No answer from ..."                                       | The relay is fine — the failing servers' *hosts* block outbound connections to unusual ports. No setting on their server can fix it. The cure is on the relay's side: [give the relay a domain address on port 443](/plugins/community-chat/getting-started/relay-behind-443.md), which every host allows.                                                                                                                                     |
| "Nothing is accepting connections at ..." (refused, not a timeout)                                   | The machine is reachable but nothing answers on that port. Either the relay isn't running, its `listen.port` doesn't match the port in the address, **or a panel firewall rule is rejecting you** — on panel hosting, a single Allow rule for a specific server flips the port to allow *only* that server. Delete such rules; the tokens are the security.                                                                                    |
| "... answered, but not as a CrossCommunitySRV relay" (older versions: `WebSocketHandshakeException`) | Something answered — but it wasn't a WebSocket handshake. Almost always a reverse proxy or tunnel in front of the relay that isn't forwarding to the relay's port, or strips the WebSocket upgrade headers. Both cases (including the exact message to send your host's support) are covered in [the domain-address guide](/plugins/community-chat/getting-started/relay-behind-443.md#if-it-doesnt-connect-the-header-check).                 |
| Log mentions port `:80` but the address is `wss://...`                                               | A display bug in spoke versions before 0.2.6 — `wss` really connects on 443; the message just printed the wrong default. Update the spoke; the connection itself was never on port 80.                                                                                                                                                                                                                                                         |
| Connects, then drops with an authentication error                                                    | The token doesn't match what the operator put in the relay's config for your community. Ask them to re-send it.                                                                                                                                                                                                                                                                                                                                |

## Discord

| Symptom                                                                 | The fix                                                                                                                               |
| ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| Bot is online but Discord messages never reach the game                 | **Message Content Intent** is off. Discord Developer Portal → your app → Bot page → switch it ON, then restart the relay.             |
| Game messages appear as plain bot posts instead of player names + heads | The bot lacks **Manage Webhooks** in that channel — re-invite it with the link from the setup guide, or grant the permission by hand. |
| Nothing arrives in one specific Discord                                 | Wrong `chatChannelId` for that community, or the bot can't see that channel. Right-click the channel → Copy Channel ID and compare.   |

## General

| Symptom                                                        | The fix                                                                                                                  |
| -------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| Messages arrive on Discord but not on another Minecraft server | That server is down or paused — run `/crosschat status` there.                                                           |
| "Is my message even arriving?"                                 | Set `logTraffic: true` in the relay config and restart it — every crossing message is then printed to the relay console. |
| The relay restarted                                            | Servers buffer briefly and reconnect on their own — expect a few seconds' gap in the global feed, nothing more.          |
| A Discord admin deleted the bridge webhook                     | The relay recreates it automatically.                                                                                    |

Still stuck? Ask in the [ESMP Discord](https://dc.esmp.fun) or email <support@esmp.fun>.
