Aqui tratamos das mensagens relacionadas com o arranque do servidor, o início de sessão dos jogadores e as ligações de rede, por exemplo a portas ou a um proxy como o Velocity ou o BungeeCord. Cada secção aborda exatamente uma mensagem. Algumas impedem o arranque do servidor, outras afetam apenas jogadores individuais ou uma funcionalidade adicional.

Podes encontrar o texto completo na Consola e, em Ficheiros, em logs/latest.log. As mensagens em que um proxy não consegue alcançar o servidor de destino aparecem no log do proxy. Lê sempre também as linhas imediatamente antes e depois.

Antes de alterares server.properties, configurações de plugins ou ficheiros do mundo, cria uma cópia de segurança em Cópias de segurança. Assim, podes voltar ao estado anterior a qualquer momento.

A porta já está ocupada

Assim aparece a mensagem:

**** FAILED TO BIND TO PORT!
java.net.BindException: Address already in use
[<Plugin>] Failed to start HTTP server: Address already in use

O que está por trás: Uma porta é como o número de uma porta de casa, por onde chegam as ligações ao servidor. Cada porta só pode ser ocupada por um programa de cada vez, por protocolo. Se a mensagem contiver "FAILED TO BIND TO PORT", o servidor Minecraft não conseguiu abrir a sua porta de jogo e não arranca. A mesma BindException também pode vir de um plugin que abre a sua própria porta, por exemplo para chat de voz ou um mapa web. Nesse caso, o servidor funciona, mas essa funcionalidade do plugin falha.

Como resolver:

  1. Lê a linha antes da BindException. Se aparecer aí o nome de um plugin entre parênteses retos, o problema afeta apenas esse plugin.
  2. Se afetar a porta de jogo, para o servidor através da Consola, espera até ele estar totalmente desligado e volta a iniciá-lo. O painel gere a porta de jogo automaticamente, não alteres server-port manualmente.
  3. Se afetar um plugin, abre em Ficheiros a respetiva configuração em plugins/<Plugin>/. Aí, indica uma porta que esteja atribuída ao teu servidor no painel e que nenhum outro serviço utilize, ou desativa a funcionalidade.
  4. Reinicia e verifica na consola se a mensagem deixa de aparecer.

Bom saber: Para o chat de voz, o procedimento está aqui: Configurar o Simple Voice Chat.

Um plugin de login não arranca porque o servidor está em modo online

Assim aparece a mensagem:

[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

O que está por trás: No modo online (online-mode=true em server.properties), o servidor verifica cada conta Java diretamente na Mojang. Plugins de autenticação como LibreLogin, AuthMe ou FastLogin destinam-se a servidores que não fazem essa verificação por si e gerem o início de sessão através de palavras-passe. Se o servidor funcionar mesmo assim em modo online, o plugin recusa-se a arrancar ou não consegue controlar o início de sessão. Jogadores sem conta comprada continuam a ser rejeitados.

Como resolver:

  1. Decide quem deve poder entrar no servidor: apenas jogadores com conta Minecraft comprada ou, de forma deliberada, também outros.
  2. Se só devem entrar contas legítimas, remove o plugin de autenticação em Plugins e reinicia o servidor. O modo online protege então todos os nomes.
  3. Se deliberadamente também devem entrar jogadores sem conta comprada, usa nas definições de Minecraft do teu servidor o separador Permitir jogadores cracked/não premium. Ele define online-mode=false e configura o plugin de login de forma adequada, para que os nomes dos jogadores fiquem protegidos por uma palavra-passe.
  4. Não definas online-mode manualmente como false apenas para que a mensagem desapareça. Sem plugin de login ou proxy protegido, qualquer pessoa pode então entrar com qualquer nome, incluindo o de um administrador.

Mais detalhes: Ativar o modo cracked/offline ou Servidor cracked: login e limites

O EULA do Minecraft não foi aceite

Assim aparece a mensagem:

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

O que está por trás: O EULA é o contrato de licença da Mojang ou da Microsoft para servidores Minecraft. Um servidor Java só arranca quando o ficheiro eula.txt contém a linha eula=true. Se esta faltar ou se aí estiver eula=false, o servidor termina logo após o arranque. Connosco, este valor é definido automaticamente. Por isso, a mensagem costuma surgir apenas quando eula.txt foi apagado ou substituído, por exemplo ao carregar ficheiros próprios do servidor.

Como resolver:

  1. Em Ficheiros, na pasta principal do servidor, onde também está server.properties, abre o ficheiro eula.txt.
  2. Altera eula=false para eula=true e guarda. Se o ficheiro não existir, cria-o com exatamente esta linha.
  3. Inicia o servidor e acompanha o arranque na Consola.

Bom saber: Com eula=true aceitas os termos do EULA do Minecraft.

Mais detalhes: EULA do Minecraft e primeiro arranque do servidor

Um jogador sem conta Minecraft válida foi rejeitado

Assim aparece a mensagem:

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

O que está por trás: Um jogador quis entrar com um cliente Java que não conseguiu apresentar uma conta Minecraft (Microsoft) válida e comprada. No modo online (online-mode=true), o servidor rejeita essas ligações. Esta linha é gerada precisamente por clientes cracked ou TLauncher. Ocasionalmente, no caso de uma conta legítima, a causa é apenas uma sessão expirada. O teu servidor está saudável e continua a funcionar normalmente.

Como resolver:

  1. Pergunta ao jogador se comprou o Minecraft: Java Edition com uma conta Microsoft e se tem sessão iniciada no launcher oficial com ela.
  2. Se tiver uma conta válida, deve reiniciar totalmente o cliente Minecraft. Isso renova a sessão expirada.
  3. Se jogar com Bedrock no telemóvel, consola ou Windows, pode entrar em alternativa através do endereço de crossplay do teu servidor, desde que o crossplay esteja ativo.
  4. Não desatives o modo online manualmente por causa disto.

Bom saber: Se só queres permitir contas legítimas, não tens de fazer nada. A mensagem mostra apenas que a proteção está a funcionar.

Mais detalhes: Ativar o modo cracked/offline ou Servidor cracked: login e limites

O início de sessão está com problemas porque a Mojang não responde

Assim aparece a mensagem:

Couldn't verify username because servers are unavailable

O que está por trás: No modo online, a cada entrada o servidor consulta os servidores de autenticação da Mojang ou da Microsoft para saber se a conta é legítima. Se estes não responderem, o servidor não consegue verificar a conta e não deixa o jogador entrar. Isto não se deve ao teu servidor: numa falha do lado deles, todos os servidores com verificação premium ativa são afetados em simultâneo. Novos jogadores não conseguem entrar enquanto durar, e quem já está online normalmente continua a jogar.

Como resolver:

  1. Aguarda que a falha passe. Costuma resolver-se sozinha em poucos minutos.
  2. Podes ver o estado atual na página de estado da Mojang.
  3. Pede aos teus jogadores que tentem novamente dentro de alguns minutos.
  4. Não desatives online-mode por causa disto. Isso abriria o teu servidor de forma permanente a contas falsas, em vez de resolver um problema breve.

Bom saber: Se jogadores entram sem problemas noutros servidores e a mensagem persistir muito tempo no teu, abre um ticket e indica a hora da mensagem.

O sistema Query não arranca

Assim aparece a mensagem:

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

O que está por trás: O Query é uma interface adicional sobre UDP, através da qual listas de servidores e ferramentas consultam o número de jogadores e o estado online. Se não arrancar, o servidor deixa de comunicar estes dados para o exterior. O jogo em si não é afetado, os jogadores podem entrar normalmente. A BindException abaixo mostra o motivo: a porta Query já está ocupada ou entra em conflito com outro serviço, frequentemente com outro serviço UDP como o Geyser ou um plugin de chat de voz na mesma porta.

Como resolver:

  1. Vê no painel quais as portas atribuídas ao teu servidor e quais delas já são usadas pelo Geyser ou por um plugin de chat de voz.
  2. Em Ficheiros, abre o ficheiro server.properties.
  3. Define enable-query=true e, em query.port, indica uma porta atribuída que nenhum outro serviço utilize.
  4. Guarda e reinicia o servidor. Verifica na Consola se a mensagem deixa de aparecer.

O ícone do servidor não tem 64 × 64 píxeis

Este é o aspeto da mensagem:

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

O que está por trás disto: A imagem server-icon.png na pasta principal aparece na lista de servidores dos jogadores, junto ao nome do servidor. O Minecraft aceita para isso exclusivamente um PNG com exatamente 64 × 64 píxeis. Se a imagem tiver outro tamanho, o servidor não a carrega e os jogadores não veem um ícone próprio. O servidor continua a funcionar normalmente.

Como resolver:

  1. Abre a tua imagem num programa de edição de imagem e redimensiona-a para exatamente 64 × 64 píxeis.
  2. Guarda-a como PNG com o nome server-icon.png.
  3. Carrega-a em Ficheiros para a pasta principal do servidor e substitui o ficheiro antigo.
  4. Reinicia o servidor. O novo ícone aparece assim que os jogadores atualizarem a lista de servidores.

Bom saber: Se não quiseres um ícone próprio, elimina server-icon.png e reinicia o servidor. A mensagem também desaparece.

Um cliente enviou um pacote de início de sessão inválido

Este é o aspeto da mensagem:

Failed to decode packet 'serverbound/minecraft:hello'

O que está por trás disto: „hello“ é o primeiro pacote que um cliente envia ao iniciar sessão, entre outras coisas com o nome do jogador. Se o servidor não o conseguiu ler, o cliente não corresponde à versão do servidor ou ao protocolo esperado, por exemplo devido a uma versão diferente do Minecraft ou a um modloader em falta. O servidor termina apenas essa ligação e continua a funcionar.

Como resolver:

  1. Verifica se, a essa hora, algum jogador quis entrar e não conseguiu.
  2. Se sim, compara a versão do Minecraft dele com a versão do teu servidor em Versão. No caso de um Modpack, ele precisa do mesmo pack com o mesmo modloader.
  3. Se ninguém quis entrar, foi normalmente um scanner de portas automático que anda a sondar servidores na internet. Nesse caso, não tens de fazer nada.

Bom saber: Se quiseres que jogadores com outras versões de cliente possam entrar, em servidores Paper o ViaVersion ajuda.

O proxy não consegue alcançar o servidor de destino a tempo

Este é o aspeto da mensagem:

io.netty.channel.ConnectTimeoutException: connection timed out after <Milissegundos> ms: /<Endereço>:<Porta>

O que está por trás disto: Um proxy como o Velocity ou o BungeeCord é o servidor de entrada através do qual os jogadores entram e são depois distribuídos pelos servidores de destino registados. Aqui, o proxy quis alcançar um servidor de destino e não obteve resposta dentro do tempo de espera. Normalmente o endereço ou a porta não estão corretos, ou o servidor de destino está offline ou em suspensão. Os jogadores não conseguem então entrar nesse servidor de destino, mas o próprio proxy continua a funcionar.

Como resolver:

  1. Lê no fim da mensagem que endereço e que porta o proxy quis alcançar.
  2. Compara-os em velocity.toml (secção [servers]) ou no config.yml do BungeeCord (secção servers) com os dados que o painel mostra para o servidor de destino. Têm de coincidir exatamente.
  3. Inicia o servidor de destino e espera até estar totalmente arrancado. Servidores em suspensão deves acordá-los antes.
  4. Reinicia o proxy para que assuma as entradas alteradas e testa a entrada.

Mais detalhes: BungeeCord: Could not connect to a default or fallback server

O suporte Velocity está ativado sem secret

Este é o aspeto da mensagem:

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

O que está por trás disto: O Velocity é um proxy que encaminha jogadores para servidores Paper. Para que o Paper possa confiar nesses reencaminhamentos, o proxy e o servidor partilham uma palavra secreta comum, o secret. Na configuração do Paper, o suporte Velocity está ativado, mas falta o secret. Por isso, o Paper desativa o suporte e o reencaminhamento de jogadores através do proxy não funciona.

Como resolver:

  1. Obtém o secret no proxy Velocity. Nas versões atuais do Velocity, está no ficheiro forwarding.secret, para o qual velocity.toml aponta; nas mais antigas, diretamente em velocity.toml.
  2. No servidor Paper, abre em Ficheiros o ficheiro config/paper-global.yml e procura a secção proxies → velocity.
  3. Define enabled: true e introduz em secret exatamente o mesmo secret.
  4. Se não usas nenhum proxy Velocity, define aí antes enabled: false.
  5. Reinicia o servidor Paper e verifica se a mensagem desapareceu.

Bom saber: Em velocity.toml, player-info-forwarding-mode tem de estar definido como modern. Nas versões do Paper anteriores à 1.19, a definição não está em config/paper-global.yml, mas em paper.yml, em settings → velocity-support. Trata o secret como uma palavra-passe.

O servidor de destino recusa a ligação do proxy

Este é o aspeto da mensagem:

io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed with error(-111): Connection refused: /<Endereço>:<Porta>

O que está por trás disto: O proxy alcançou o endereço registado do servidor de destino, mas aí nenhum serviço aceita ligações na porta. Ao contrário de um tempo de espera excedido, o endereço responde, mas nada está à escuta. Causas típicas: o servidor de destino está parado, ainda está a arrancar, ou a porta no proxy não pertence a este servidor. Enquanto isso durar, os jogadores não conseguem entrar nesse servidor de destino.

Como resolver:

  1. Lê no fim da mensagem o endereço e a porta.
  2. Inicia o servidor de destino e espera na respetiva Consola até estar totalmente arrancado.
  3. Compara o endereço e a porta em velocity.toml ou no config.yml do BungeeCord com os dados que o painel mostra para o servidor de destino.
  4. Não introduzas 127.0.0.1 se o proxy e o servidor de destino forem servidores separados. Esse endereço aponta para o próprio proxy.

Bom saber: Enquanto um servidor de destino está a reiniciar, a mensagem é normal e desaparece sozinha.

Mais detalhes: BungeeCord: Could not connect to a default or fallback server

A tua mensagem não está aqui?

Lê a mensagem completa na Consola ou em logs/latest.log, incluindo as linhas imediatamente anteriores. Muitas vezes, é aí que está o que falhou primeiro. Se se seguir um stacktrace, ou seja, uma lista de linhas que começam por „at“, os nomes de pastas e ficheiros nele, como plugins/<Plugin> ou <Plugin>.jar, revelam o plugin ou o mod envolvido. Em problemas de proxy, lê os logs do proxy e do servidor de destino à mesma hora. Cria uma cópia de segurança antes de fazeres alterações. Se não conseguires avançar, abre um ticket e indica a hora da mensagem.