Dit artikel gaat over meldingen rond het starten van de server, het inloggen van spelers en netwerkverbindingen, bijvoorbeeld naar poorten of naar een proxy zoals Velocity of BungeeCord. Elke sectie behandelt precies één melding. Sommige voorkomen dat de server start, andere betreffen alleen individuele spelers of een extra functie.

De volledige tekst vind je in de Console en onder Bestanden in logs/latest.log. Meldingen waarbij een proxy zijn doelserver niet bereikt, staan in het log van de proxy. Lees ook altijd de regels direct ervoor en erna.

Voordat je server.properties, plugin-configuraties of wereldbestanden wijzigt, maak je onder Back-ups een back-up aan. Zo kun je altijd terug naar de oude staat.

De poort is al in gebruik

Zo ziet de melding eruit:

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

Wat erachter zit: Een poort is als een deurnummer waarlangs verbindingen bij de server aankomen. Elke poort kan per protocol maar door één programma tegelijk worden gebruikt. Staat er "FAILED TO BIND TO PORT" in de melding, dan kon de Minecraft-server zijn spelpoort niet openen en start hij niet. Dezelfde BindException kan ook van een plugin komen die een eigen poort opent, bijvoorbeeld voor voicechat of een webkaart. Dan draait de server wel, maar valt die functie van de plugin uit.

Zo los je het op:

  1. Lees de regel vóór de BindException. Staat daar een pluginnaam tussen vierkante haken, dan gaat het alleen om die plugin.
  2. Gaat het om de spelpoort, stop de server dan via de Console, wacht tot hij volledig uit is en start hem opnieuw. De spelpoort wordt automatisch door het paneel beheerd, pas server-port dus niet handmatig aan.
  3. Gaat het om een plugin, open dan onder Bestanden de configuratie in plugins/<Plugin>/. Vul daar een poort in die in het paneel aan je server is toegewezen en die geen andere dienst gebruikt, of schakel de functie uit.
  4. Start opnieuw op en controleer in de console of de melding verdwenen is.

Goed om te weten: Voor voicechat vind je de werkwijze hier: Simple Voice Chat instellen.

Een login-plugin start niet omdat de server in de online-modus draait

Zo ziet de melding eruit:

[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

Wat erachter zit: In de online-modus (online-mode=true in server.properties) controleert de server elk Java-account rechtstreeks bij Mojang. Inlogplugins zoals LibreLogin, AuthMe of FastLogin zijn bedoeld voor servers die deze controle niet zelf uitvoeren en regelen het inloggen dan via wachtwoorden. Draait de server toch in de online-modus, dan weigert de plugin te starten of kan hij het inloggen niet aansturen. Spelers zonder gekocht account worden nog steeds geweigerd.

Zo los je het op:

  1. Bepaal wie er op de server mag: alleen spelers met een gekocht Minecraft-account of bewust ook anderen.
  2. Mogen alleen echte accounts meedoen, verwijder dan de inlogplugin onder Plugins en start de server opnieuw. De online-modus beschermt dan alle namen.
  3. Mogen bewust ook spelers zonder gekocht account meedoen, gebruik dan in de Minecraft-instellingen van je server de tab Cracked-/Non-Premium-spelers toestaan. Die zet online-mode=false en richt de inlogplugin passend in, zodat spelersnamen met een wachtwoord beveiligd zijn.
  4. Zet online-mode niet handmatig op false alleen om de melding kwijt te raken. Zonder inlogplugin of beveiligde proxy kan dan iedereen met elke naam inloggen, ook met die van een admin.

Uitgebreid: Cracked-/offline-modus activeren resp. Cracked-server: login en grenzen

De Minecraft-EULA is niet geaccepteerd

Zo ziet de melding eruit:

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

Wat erachter zit: De EULA is de licentieovereenkomst van Mojang resp. Microsoft voor Minecraft-servers. Een Java-server start pas als in het bestand eula.txt de regel eula=true staat. Ontbreekt die of staat er eula=false, dan stopt de server direct na het starten weer. Bij ons wordt deze waarde automatisch ingesteld. De melding verschijnt daarom meestal pas als eula.txt is verwijderd of overschreven, bijvoorbeeld bij het uploaden van eigen serverbestanden.

Zo los je het op:

  1. Open onder Bestanden in de hoofdmap van de server, waar ook server.properties staat, het bestand eula.txt.
  2. Verander eula=false in eula=true en sla op. Ontbreekt het bestand, maak het dan aan met precies deze ene regel.
  3. Start de server en volg het opstarten in de Console.

Goed om te weten: Met eula=true ga je akkoord met de voorwaarden van de Minecraft-EULA.

Uitgebreid: Minecraft-EULA en eerste serverstart

Een speler zonder geldig Minecraft-account is geweigerd

Zo ziet de melding eruit:

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

Wat erachter zit: Een speler wilde met een Java-client meedoen, maar kon geen geldig, gekocht Minecraft-account (Microsoft) laten zien. In de online-modus (online-mode=true) weigert de server zulke verbindingen. Precies deze regel veroorzaken cracked- of TLauncher-clients. Soms zit er bij een echt account alleen een verlopen sessie achter. Je server is gezond en draait gewoon door.

Zo los je het op:

  1. Vraag de speler of hij Minecraft: Java Edition met een Microsoft-account heeft gekocht en daarmee is ingelogd in de officiële launcher.
  2. Heeft hij een geldig account, dan moet hij de Minecraft-client helemaal opnieuw opstarten. Dat vernieuwt de verlopen sessie.
  3. Speelt hij met Bedrock op mobiel, console of Windows, dan kan hij in plaats daarvan via het crossplay-adres van je server meedoen, mits crossplay actief is.
  4. Zet daarvoor de online-modus niet handmatig uit.

Goed om te weten: Wil je alleen echte accounts toelaten, dan hoef je niets te doen. De melding laat dan alleen zien dat de bescherming werkt.

Uitgebreid: Cracked-/offline-modus activeren resp. Cracked-server: login en grenzen

Het inloggen is verstoord omdat Mojang niet reageert

Zo ziet de melding eruit:

Couldn't verify username because servers are unavailable

Wat erachter zit: In de online-modus vraagt de server bij elke join aan de inlogservers van Mojang resp. Microsoft of het account echt is. Reageren die op dat moment niet, dan kan de server het account niet controleren en laat hij de speler niet binnen. Dat ligt niet aan je server: bij een storing daar worden alle servers met actieve premiumcontrole tegelijk getroffen. Nieuwe spelers komen zolang niet op de server, wie al online is, speelt meestal gewoon door.

Zo los je het op:

  1. Wacht de storing af. Die verhelpt zich meestal binnen enkele minuten vanzelf.
  2. De actuele stand zie je op de statuspagina van Mojang.
  3. Vraag je spelers het over een paar minuten opnieuw te proberen.
  4. Zet daarvoor online-mode niet uit. Dat zou je server permanent openstellen voor valse accounts in plaats van een kort probleem op te lossen.

Goed om te weten: Komen spelers op andere servers zonder problemen binnen en houdt de melding bij jou lang aan, open dan een ticket en noem het tijdstip van de melding.

Het querysysteem start niet

Zo ziet de melding eruit:

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

Wat erachter zit: Query is een extra interface via UDP waarmee serverlijsten en tools het aantal spelers en de online-status opvragen. Start die niet, dan geeft de server deze gegevens niet meer door aan buiten. Het spelen zelf wordt er niet door getroffen, spelers kunnen gewoon meedoen. De BindException eronder toont de reden: de querypoort is al in gebruik of botst met een andere dienst, vaak met een andere UDP-dienst zoals Geyser of een voicechat-plugin op dezelfde poort.

Zo los je het op:

  1. Kijk in het paneel welke poorten aan je server zijn toegewezen en welke daarvan al door Geyser of een voicechat-plugin worden gebruikt.
  2. Open onder Bestanden het bestand server.properties.
  3. Zet enable-query=true en vul bij query.port een toegewezen poort in die geen andere dienst gebruikt.
  4. Sla op en start de server opnieuw. Controleer in de Console of de melding verdwenen is.

Het servericoon is niet 64 × 64 pixels

Zo ziet de melding eruit:

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

Wat erachter zit: De afbeelding server-icon.png in de hoofdmap verschijnt in de serverlijst van de spelers naast de servernaam. Minecraft accepteert hiervoor uitsluitend een PNG van precies 64 × 64 pixels. Heeft de afbeelding een ander formaat, dan laadt de server hem niet en zien de spelers geen eigen icoon. De server draait gewoon verder.

Zo los je het op:

  1. Open je afbeelding in een beeldbewerkingsprogramma en schaal hem naar precies 64 × 64 pixels.
  2. Sla hem op als PNG met de naam server-icon.png.
  3. Upload hem onder Bestanden naar de hoofdmap van de server en vervang het oude bestand.
  4. Herstart de server. Het nieuwe icoon verschijnt zodra spelers hun serverlijst vernieuwen.

Goed om te weten: Wil je geen eigen icoon, verwijder dan server-icon.png en herstart de server. De melding verdwijnt dan ook.

Een client heeft een ongeldig inlogpakket gestuurd

Zo ziet de melding eruit:

Failed to decode packet 'serverbound/minecraft:hello'

Wat erachter zit: "hello" is het eerste pakket dat een client bij het inloggen verstuurt, onder andere met de spelersnaam. Kon de server het niet lezen, dan past de client niet bij de serverversie of het verwachte protocol, bijvoorbeeld door een andere Minecraft-versie of een ontbrekende modloader. De server verbreekt alleen deze ene verbinding en draait verder.

Zo los je het op:

  1. Controleer of er op dat tijdstip een speler wilde joinen en dat niet is gelukt.
  2. Zo ja, vergelijk dan zijn Minecraft-versie met de versie van je server onder Versie. Bij een Modpack heeft hij hetzelfde pack met dezelfde modloader nodig.
  3. Wilde niemand joinen, dan was het meestal een automatische poortscanner die servers op internet aftast. Dan hoef je niets te doen.

Goed om te weten: Moeten spelers met andere clientversies kunnen joinen, dan helpt op Paper-servers ViaVersion.

De proxy bereikt de doelserver niet op tijd

Zo ziet de melding eruit:

io.netty.channel.ConnectTimeoutException: connection timed out after <Milliseconden> ms: /<Adres>:<Poort>

Wat erachter zit: Een proxy zoals Velocity of BungeeCord is de ingangsserver waarlangs spelers joinen en vervolgens worden verdeeld over de ingestelde doelservers. Hier wilde de proxy een doelserver bereiken en kreeg binnen de wachttijd geen antwoord. Meestal kloppen het adres of de poort niet, of de doelserver is offline of slaapt. Spelers komen dan niet op die doelserver, de proxy zelf draait verder.

Zo los je het op:

  1. Lees aan het einde van de melding af welk adres en welke poort de proxy wilde bereiken.
  2. Vergelijk ze in velocity.toml (sectie [servers]) of in de config.yml van BungeeCord (sectie servers) met de gegevens die het paneel voor de doelserver toont. Ze moeten exact overeenkomen.
  3. Start de doelserver en wacht tot hij volledig is opgestart. Slapende servers wek je eerst op.
  4. Herstart de proxy zodat hij gewijzigde items overneemt, en test het joinen.

Uitgebreid: BungeeCord: Could not connect to a default or fallback server

De Velocity-ondersteuning is ingeschakeld zonder secret

Zo ziet de melding eruit:

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

Wat erachter zit: Velocity is een proxy die spelers doorstuurt naar Paper-servers. Zodat Paper deze doorverwijzingen kan vertrouwen, delen proxy en server een gezamenlijk geheim woord, het secret. In de Paper-configuratie is de Velocity-ondersteuning ingeschakeld, maar het secret ontbreekt. Paper schakelt de ondersteuning daarom uit en het doorsturen van spelers via de proxy werkt niet.

Zo los je het op:

  1. Haal het secret op bij de Velocity-proxy. Bij actuele Velocity-versies staat het in het bestand forwarding.secret waarnaar velocity.toml verwijst, bij oudere direct in velocity.toml.
  2. Open op de Paper-server onder Bestanden het bestand config/paper-global.yml en zoek de sectie proxies → velocity.
  3. Zet enabled: true en vul bij secret precies hetzelfde secret in.
  4. Gebruik je helemaal geen Velocity-proxy, zet daar dan juist enabled: false.
  5. Herstart de Paper-server en controleer of de melding verdwenen is.

Goed om te weten: In velocity.toml moet hiervoor player-info-forwarding-mode op modern staan. Bij Paper-versies vóór 1.19 staat de instelling niet in config/paper-global.yml, maar in paper.yml onder settings → velocity-support. Behandel het secret als een wachtwoord.

De doelserver weigert de verbinding van de proxy

Zo ziet de melding eruit:

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

Wat erachter zit: De proxy heeft het ingestelde adres van de doelserver bereikt, maar daar neemt geen dienst op de poort verbindingen aan. Anders dan bij een time-out reageert het adres dus wel, er luistert alleen niets. Typische oorzaken: de doelserver is gestopt, is nog aan het opstarten, of de poort in de proxy hoort niet bij deze server. Spelers komen zolang niet op deze doelserver.

Zo los je het op:

  1. Lees aan het einde van de melding adres en poort af.
  2. Start de doelserver en wacht in zijn Console tot hij volledig is gestart.
  3. Vergelijk adres en poort in velocity.toml of in de config.yml van BungeeCord met de gegevens die het paneel voor de doelserver toont.
  4. Vul niet 127.0.0.1 in als proxy en doelserver aparte servers zijn. Dat adres wijst naar de proxy zelf.

Goed om te weten: Terwijl een doelserver opnieuw opstart, is de melding normaal en verdwijnt hij vanzelf.

Uitgebreid: BungeeCord: Could not connect to a default or fallback server

Staat jouw melding er niet bij?

Lees de hele melding in de Console of in logs/latest.log, ook de regels direct ervoor. Vaak staat daar wat er als eerste misging. Volgt er een stacktrace, dus een lijst met regels die beginnen met „at“, dan verraden map- en bestandsnamen daarin zoals plugins/<Plugin> of <Plugin>.jar de betrokken plugin of mod. Lees bij proxyproblemen de logs van de proxy en de doelserver van hetzelfde tijdstip. Maak vóór wijzigingen een back-up aan. Kom je er niet uit, open dan een ticket en noem het tijdstip van de melding.