Geyser og Floodgate: lad Bedrock-spillere joine din Java-server
Sådan sætter du crossplay op med Geyser og Floodgate - UDP-porten der altid glemmes, den rigtige auth-type, hvad Bedrock-spillere ikke får, og hvorfor konsolspillere er en sag for sig.
Hvad de to ting gør
Du skal bruge begge, og de løser hver sin halvdel af problemet:
| Hvad den gør | |
|---|---|
| Geyser | Oversætter mellem Bedrock og Java, så en Bedrock-klient kan tale med din Java-server |
| Floodgate | Lader Bedrock-spillere komme ind uden at eje Java-udgaven, mens din server bliver ved med at være i online-mode |
Uden Floodgate kan Geyser godt køre - men så skal hver eneste Bedrock-spiller også eje en Java-konto og logge ind med den. Det er sjældent det, man vil.
Med Floodgate beholder du
online-mode=trueiserver.properties. Dine Java-spillere bliver stadig verificeret som normalt. Det er hele pointen med Floodgate, og det er grunden til, at du ikke skal slå online-mode fra.
Er du i tvivl om, hvad forskellen på de to udgaver overhovedet er, så start med Minecraft Java vs. Bedrock Edition.
Trin 1 - Installér begge som plugins
Kører du Paper, Spigot eller Purpur, skal du bruge plugin-udgaverne. De er hurtigere, giver lavere forsinkelse og finder selv din servers adresse og port.
- Stop serveren i Potionhost kontrolpanelet.
- Hent Geyser-Spigot og Floodgate fra geysermc.org.
- Læg begge
.jar-filer iplugins/. - Start serveren, så de opretter deres mapper, og stop den igen.
Du har nu:
plugins/
├── Geyser-Spigot/config.yml
└── floodgate/
├── config.yml
└── key.pem
Rør ikke ved
key.pem. Kører Geyser og Floodgate på samme server, finder Geyser selv nøglen. En ekstra kopi af nøglen i Geysers egen mappe er i sig selv en dokumenteret fejlkilde.Du skal kun kopiere nøglen rundt, hvis du kører et proxynetværk - så skal alle servere have den samme
key.pem. Overfør den i binær tilstand, ikke ASCII, ellers bliver den ødelagt.Og del den aldrig med nogen. Den er det, der lader Bedrock-konti springe Javas login over.
Trin 2 - Sæt auth-type til floodgate
Åbn plugins/Geyser-Spigot/config.yml og find:
java:
auth-type: floodgate
De tre muligheder:
| Værdi | Hvornår |
|---|---|
floodgate |
Det du vil have. Bedrock-spillere kommer ind uden Java-konto, serveren bliver i online-mode |
online |
Uden Floodgate. Hver Bedrock-spiller skal eje en Java-konto og logge ind med den |
offline |
Kun bag en proxy, der selv står for login. Aldrig som genvej |
offlineer ikke en genvej til at lukke Bedrock-spillere ind. Med den indstilling bliver ingen verificeret - hvem som helst kan joine under et hvilket som helst navn, inklusive dit eget, og arve dine rettigheder og dine ting. Det er præcis dét, Floodgate findes for at undgå.
Bemærk at konfigurationen blev bygget om. Sektionen hed tidligere
remote:og hedder nujava:. MOTD-indstillinger ligger undermotd:, ogserver-nameer flyttet tilgameplay:. Geyser omskriver selv gamle filer, men mange guider viser stadig de gamle stier.
Trin 3 - Åbn UDP-porten
Det her er den hyppigste årsag til, at intet virker.
| Hvem | Port | Protokol |
|---|---|---|
| Java-spillere | 25565 |
TCP |
| Bedrock-spillere | 19132 |
UDP |
Bedrock-porten kommer oveni - den erstatter ikke Java-porten. Begge skal være åbne samtidig.
Bedrock bruger UDP. Åbner du 19132 som TCP, sker der ingenting overhovedet. Det er den enkeltfejl, der ligger bag flest "Unable to connect to world".
Giver din pakke kun én port, findes der en indstilling til det:
bedrock:
clone-remote-port: true
Den får Geyser til at bruge samme portnummer som Java-serveren. Har du fået tildelt en separat UDP-port, skal du ikke bruge den - så sætter du bare bedrock.port til den port, du har fået.
Trin 4 - Start og test
Start serveren, og kig i Konsol. Geyser skriver, at den lytter på Bedrock-porten.
Sådan joiner en Bedrock-spiller:
- Play → Servers-fanen. Ikke Friends
- Scroll forbi de fremhævede servere til Add Server
- Adresse: serverens adresse. Port: 19132
- Gem og join
Bedrock understøtter ikke SRV-records. Kører din Java-server uden portnummer via en SRV-record, virker den adresse ikke for Bedrock-spillere. Giv dem IP-adressen eller et navn med en almindelig A-record.
Konsolspillere
Xbox, PlayStation og Switch kan ikke tilføje tredjepartsservere af sig selv. Det er en begrænsning fra Microsoft og Sony, ikke noget du eller vi kan ændre.
De findes tredjepartsværktøjer - BedrockConnect via en DNS-ændring på konsollen, eller en app der får serveren til at fremstå som et LAN-spil. De virker, men de er ikke noget, vi kan supportere. Sig det ærligt til dine spillere fra start, så du slipper for sagerne.
Hvad Bedrock-spillere ikke får
Det er værd at vide på forhånd, så du kan svare med det samme:
- Klient-mods virker ikke. Tommelfingerreglen fra GeyserMC selv: kan en almindelig vanilla-klient joine din server, kan Bedrock også. Kræver din server et mod hos spilleren, er den udelukket
- Resource packs oversættes ikke automatisk. Vil du have din pakke på Bedrock, skal du levere en Bedrock-udgave i
.mcpack-format - Menuer i kister opfører sig anderledes. Geyser kan ikke skelne højre- og venstreklik i inventory, hvilket brækker nogle GUI-plugins
- Klikbare links i chatten virker ikke, og kommando-autofuldførelse er begrænset
- Kamp føles anderledes - Bedrock har ikke Javas våbenafkøling
- Enkelte visuelle ting mangler: glødeeffekten, banner-lag over seks, usynlige item frames
Versioner - det her skal du holde øje med
Geyser følger ikke automatisk med nye Bedrock-versioner. Den understøtter en fast liste, og en version bliver først understøttet, når der er kommet en ny Geyser-udgave.
Kombineret med at Bedrock opdaterer sig selv automatisk på alle platforme, betyder det, at dine Bedrock-spillere bliver låst ude i samme øjeblik Mojang udsender en opdatering, som din Geyser er ældre end.
Hold Geyser opdateret, og gør det hurtigt efter hver Bedrock-opdatering. Lad advarslen om nye versioner stå slået til, så konsollen selv siger til.
Fejlen Outdated client! Please use <version> på en Bedrock-spiller betyder næsten altid, at det er Geyser, der skal opdateres - ikke serveren.
Fejlfinding
| Symptom | Sandsynlig årsag | Løsning |
|---|---|---|
Unable to connect to world |
Porten er åbnet som TCP i stedet for UDP | Åbn 19132 som UDP |
Unable to connect to world (2) |
Spilleren bruger Java-porten | De skal bruge Bedrock-porten |
| Virker på samme netværk, men ikke udefra | UDP ikke åben udadtil | Tjek firewall og port |
Invalid IP address! |
Adressen bruger en SRV-record | Giv dem IP eller en A-record |
Please connect through the official Geyser |
key.pem passer ikke mellem Floodgate og Geyser |
Sørg for samme nøgle alle steder, og slet overflødige kopier |
Cannot reply to EncryptionRequestPacket |
En ekstra key.pem i Geysers mappe, eller auth-type passer ikke med serverens online-mode |
Slet den overflødige nøgle og genstart |
Tag mismatch |
Nøglen blev ødelagt under overførsel | Slet Floodgate-mappen, genstart så nøglen laves på ny, og overfør binært |
| Bedrock-spillere har standard-skins | Floodgate mangler på den server, der ser logins | Installér Floodgate |
| MOTD og spillertal er forkerte | motd.passthrough-motd eller passthrough-player-counts |
Begge er true som standard - tjek at de ikke er ændret |
| Navneændring slår ikke igennem | Gammel cache | Slet usercache.json og genstart |
| Paper afviser Bedrock-navnet | Punktummet foran navnet | Slå brugernavnsvalidering fra i Paper-konfigurationen |
| Kommandoer virker ikke på Bedrock-navne | Præfikset | Standardpræfikset er et punktum. Brug ikke * - det brækker kommandoer |
| Bedrock-klienten fryser i kommandolisten | For mange kommandoer | Slå gameplay.command-suggestions fra |
Bedrock-spillere får som standard et punktum foran deres navn - fx
.Spiller123. Det er med vilje, så de ikke kolliderer med rigtige Java-brugernavne. Vil du ændre det, står det iplugins/floodgate/config.ymlunderusername-prefix. Lad det være noget, der ikke er et bogstav.
Gode råd
- Installér Floodgate fra dag ét. At køre Geyser alene og senere skifte giver dig et rod med UUID'er.
- Lad
online-modestå påtrue. Floodgate er bygget netop til at kunne det. - Test selv fra en Bedrock-enhed, inden du fortæller dine spillere, at det virker.
- Sig tydeligt, at konsolspillere skal bruge et tredjepartsværktøj - helst inden de spørger.
- Opdatér Geyser med det samme efter en Bedrock-opdatering. Det er den eneste vedligeholdelse, det her kræver.
Kan dine Bedrock-spillere ikke komme ind? Send os fejlbeskeden fra deres skærm sammen med et udsnit af serverkonsollen fra opstart.