This guide covers messages related to server startup, player login, and network connections, such as to ports or to a proxy like Velocity or BungeeCord. Each section covers exactly one message. Some prevent the server from starting, others affect only individual players or an additional feature.

You can find the full wording in the Console and under Files in logs/latest.log. Messages where a proxy cannot reach its target server appear in the proxy's log. Always read the lines directly before and after as well.

Before you change server.properties, plugin configurations, or world files, create a backup under Backups. That way you can always return to the previous state.

“Address already in use”: A server or plugin port is occupied

What the message looks like:

**** FAILED TO BIND TO PORT!
java.net.BindException: Address already in use
io.netty.channel.unix.Errors$NativeIoException: bind(..) failed with error(-98): Address already in use

What's behind it: A port receives network connections and is already occupied by another service here. If Minecraft cannot open its game port, the server cannot start. Geyser or Simple Voice Chat can also fail to open their UDP port; UDP is a network protocol used for voice data, for example. That connection fails; subsequent log lines show whether the server keeps running.

How to fix it:

  1. Read the surrounding lines. Messages such as Voice chat server error or Failed to start the udp server help identify the service; a plugin name alone does not tell you whether the server continues running.
  2. For the game port, stop the server completely via the Console and restart it. The panel manages this port automatically; do not edit server-port manually.
  3. For an additional service, open its plugin or mod configuration under Files. Use an assigned port unused by another service using the same network protocol, or disable the feature. Then restart.
  4. If the game port remains occupied, open a ticket and include the message's time.

Good to know: Set up Simple Voice Chat.

“The server is running in online mode”: Login plugin cannot start

What the message looks like:

[LibreLogin] !!!The server is running in online mode! LibreLogin won't start unless you set it to false!!!
[FastLogin] Server has to be in offline mode

What's behind it: In online mode (online-mode=true in server.properties), the server checks Java accounts directly with Mojang. The affected login plugin expects a different authentication setup and therefore refuses to start or cannot manage logins. Authentication through this plugin is unavailable; online mode remains active and continues rejecting players without valid Minecraft accounts.

How to fix it:

  1. For players joining directly with valid Minecraft accounts, keep online-mode=true. Stop the server, remove the affected login plugin under Plugins, and restart.
  2. If you use a proxy, a server in front of your game server, check its authentication, protection against direct connections to the backend, and forwarding. Forwarding passes verified player details to the backend.
  3. Set online-mode=false in server.properties under Files only behind a properly secured proxy with correctly configured forwarding, while the server is stopped. Without this protection, keep online mode enabled.
  4. Restart after changes and check in the Console that the login plugin starts as intended.

Good to know: Without secure authentication, others can impersonate players. Further reading: Enable cracked/offline mode.

The Minecraft EULA Has Not Been Accepted

What the message looks like:

You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

What's behind it: The EULA is the license agreement from Mojang and Microsoft for Minecraft servers. A Java server only starts once the line eula=true appears in the file eula.txt. If it is missing or says eula=false, the server shuts down again right after starting. With us, this value is set automatically. The message therefore usually only appears when eula.txt was deleted or overwritten, for example when uploading your own server files.

How to fix it:

  1. Under Files, open the file eula.txt in the server's main folder, where server.properties is also located.
  2. Change eula=false to eula=true and save. If the file is missing, create it with exactly this one line.
  3. Start the server and follow the startup in the Console.

Good to know: With eula=true you agree to the terms of the Minecraft EULA.

In detail: Minecraft EULA and First Server Start

“… tried to join with an invalid session”: Minecraft login rejected

What the message looks like:

Username '<Player>' tried to join with an invalid session

What's behind it: The server could not confirm a Java player's session as valid and rejects the join in online mode (online-mode=true). This happens with clients without a valid, purchased Minecraft account, but also with an expired session on a valid account. Your server is healthy and keeps running normally.

How to fix it:

  1. Ask the player whether they purchased Minecraft: Java Edition with a Microsoft account and are logged in with it in the official launcher.
  2. With a valid account, they should close Minecraft completely and restart it. If the session remains invalid, they should sign back into the launcher with the correct account and start the game again.
  3. If they play Bedrock on mobile, console or Windows, they can instead join via your server's crossplay address, provided crossplay is active.
  4. Do not disable online mode by hand because of this.

Good to know: If you only want to allow genuine accounts, you do not need to change anything. The message then shows that the protection is working.

In detail: Cracked server: Login and limits

“Couldn't verify username because servers are unavailable”: Minecraft login disrupted

What the message looks like:

Couldn't verify username because servers are unavailable

What's behind it: In online mode, the server asks Mojang's and Microsoft's authentication servers on every join whether the account is genuine. If they are not responding at the moment, the server cannot verify the account and does not let the player in. This is not caused by your server: during an outage there, all servers with the premium check active are affected at the same time. New players cannot join for as long as it lasts, while those already online usually keep playing.

How to fix it:

  1. Wait out the outage. It usually resolves itself within a few minutes.
  2. Check official incident announcements from Minecraft or Mojang/Microsoft.
  3. Ask your players to try again in a few minutes.
  4. Do not disable online-mode because of this. That would permanently open your server to fake accounts instead of solving a brief problem.

Good to know: If players can join other servers without problems and the message persists for a long time on yours, open a ticket and include the time of the message.

“Unable to initialise query system”: Query port is already in use

What the message looks like:

Unable to initialise query system on <IP>:<Port>
java.net.BindException: Address already in use

What's behind it: Query is an additional interface using the UDP network protocol through which server lists and tools retrieve the player count and online status. If it fails to start, this information is unavailable through Query. Gameplay is unaffected, and players can join normally. The BindException below shows the reason: the query port is already in use or conflicts with another service, such as Geyser or a voice chat plugin using the same UDP port.

How to fix it:

  1. Check in the panel which ports are assigned to your server and which ones Geyser or a voice chat plugin already uses.
  2. Stop the server and open server.properties under Files.
  3. Set enable-query=true and set query.port to an assigned port that no other UDP service uses.
  4. Save and start the server again. Check in the Console that the message no longer appears.

The Server Icon Is Not 64 × 64 Pixels

What the message looks like:

Couldn't load server icon
java.lang.IllegalArgumentException: Invalid world icon size [<Width>, <Height>], but expected [64, 64]

What's behind it: The image server-icon.png in the main folder appears in players' server list next to the server name. Minecraft only accepts a PNG of exactly 64 × 64 pixels for this. If the image has a different size, the server does not load it, and players see no custom icon. The server continues to run normally.

How to fix it:

  1. Open your image in an image editing program and scale it to exactly 64 × 64 pixels.
  2. Save it as a PNG named server-icon.png.
  3. Upload it to the server's main folder under Files and replace the old file.
  4. Restart the server. The new icon appears as soon as players refresh their server list.

Good to know: If you don't want a custom icon, delete server-icon.png and restart the server. The message will then disappear as well.

A Client Sent an Invalid Login Packet

What the message looks like:

Failed to decode packet 'serverbound/minecraft:hello'

What's behind it: "hello" is the first packet a client sends during login, containing the player name among other things. If the server could not read it, the client does not match the server version or the expected protocol, for example because of a different Minecraft version or a missing mod loader. The server only disconnects this one connection and keeps running.

How to fix it:

  1. Check whether a player tried to join at that time and didn't manage to.
  2. If so, compare their Minecraft version with your server's version under Version. For a modpack, they need the same pack with the same mod loader.
  3. If nobody tried to join, it was usually an automated port scanner probing servers on the internet. In that case you don't need to do anything.

Good to know: If you want players with other client versions to be able to join, ViaVersion helps on Paper servers.

The Proxy Doesn't Reach the Target Server in Time

What the message looks like:

io.netty.channel.ConnectTimeoutException: connection timed out after <Milliseconds> ms: /<Address>:<Port>

What's behind it: A proxy such as Velocity or BungeeCord is the entry server through which players join and are then distributed to registered target servers. Here the proxy tried to reach a target server and received no response within the waiting time. Usually the address or port is wrong, or the target server is offline or asleep. Players then cannot get onto this target server, while the proxy itself keeps running.

How to fix it:

  1. Read at the end of the message which address and port the proxy tried to reach.
  2. Compare them in velocity.toml (section [servers]) or in BungeeCord's config.yml (section servers) with the details the panel shows for the target server. They must match exactly.
  3. Start the target server and wait until it has fully booted. Wake sleeping servers beforehand.
  4. Restart the proxy so it picks up changed entries, and test joining.

In detail: BungeeCord: Could not connect to a default or fallback server

Velocity Support Is Enabled Without a Secret

What the message looks like:

Velocity is enabled, but no secret key was specified. A secret key is required. Disabling velocity...

What's behind it: Velocity is a proxy that forwards players to Paper servers. So that Paper can trust these forwardings, the proxy and server share a common secret word, the secret. In the Paper configuration, Velocity support is enabled, but the secret is missing. Paper therefore disables the support, and player forwarding via the proxy does not work.

How to fix it:

  1. Get the secret from the Velocity proxy. In current Velocity versions it is in the file forwarding.secret, which velocity.toml points to; in older ones it is directly in velocity.toml.
  2. On the Paper server, open the file config/paper-global.yml under Files and find the section proxies → velocity.
  3. Set enabled: true and enter exactly the same secret at secret.
  4. If you don't use a Velocity proxy at all, set enabled: false there instead.
  5. Restart the Paper server and check that the message has disappeared.

Good to know: For this, player-info-forwarding-mode in velocity.toml must be set to modern. On Paper versions before 1.19, the setting is not in config/paper-global.yml but in paper.yml under settings → velocity-support. Treat the secret like a password.

The Target Server Refuses the Proxy's Connection

What the message looks like:

io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed with error(-111): Connection refused: /<Address>:<Port>

What's behind it: The proxy reached the entered address of the target server, but no service there accepts connections on the port. Unlike with a timeout, the address does respond, but nothing is listening there. Typical reasons: the target server is stopped, is still starting up, or the port in the proxy does not belong to this server. Players cannot get onto this target server for as long as this lasts.

How to fix it:

  1. Read the address and port at the end of the message.
  2. Start the target server and wait in its Console until it has fully started.
  3. Compare the address and port in velocity.toml or in BungeeCord's config.yml with the details the panel shows for the target server.
  4. Do not enter 127.0.0.1 if the proxy and target server are separate servers. That address points to the proxy itself.

Good to know: While a target server is restarting, the message is normal and goes away on its own.

In detail: BungeeCord: Could not connect to a default or fallback server

The server icon uses the wrong image format

What the message looks like:

Couldn't load server icon
java.io.IOException: Bad PNG Signature: <File signature>

What's behind it: Minecraft expects the server icon to be a PNG file. The file signature, the identifying bytes at the start of the file, does not match PNG here. The intended image therefore does not appear in the server list; the server keeps running.

How to fix it:

  1. Open the image in an image editor and explicitly export it as PNG. Set its dimensions to 64 × 64 pixels.
  2. Replace server-icon.png in the server’s root directory under Files with the newly exported image.
  3. Restart the server and check the Console to confirm that the message has disappeared. Then refresh the server list in your Minecraft client.

Good to know: Renaming a JPEG file to .png does not change its image format.

Your message isn't listed?

Read the entire message in the Console or in logs/latest.log, including the lines directly before it. Often it shows what failed first. If a stack trace follows, meaning a list of lines beginning with "at", folder and file names in it such as plugins/<Plugin> or <Plugin>.jar reveal the plugin or mod involved. For proxy problems, read the logs of both the proxy and the target server at the same time. Create a backup before making changes. If you get stuck, open a ticket and include the time of the message.

You can order a matching server here: Rent Minecraft server.