Krak Multiplayer
PL
Pobierz
Pomoc

Krak Server

Krak Server to agent serwerowy Krak Multiplayer: mały program na serwer dedykowany lub VPS, który przez całą dobę hostuje działające tam serwery Minecraft przez Krak Multiplayer. Sterujesz nim z aplikacji na telefonie lub komputerze.

Konfiguracja w 6 krokach

Potrzebujesz maszyny, na której działa twój serwer Minecraft (VPS, serwer dedykowany albo domowy komputer), i Krak Multiplayer na telefonie lub komputerze. Na maszynie wpisujesz jedno polecenie; reszta dzieje się w aplikacji.

  1. Uruchom jak zwykle swój serwer Minecraft na tej maszynie: Bedrock Dedicated Server, serwer Java albo Java z Geyser.
  2. Otwórz terminal na tej maszynie jako administrator. Windows: kliknij prawym przyciskiem Start i wybierz Terminal (Administrator) lub Windows PowerShell (Administrator). Linux: otwórz terminal albo połącz się przez SSH.
  3. Skopiuj poniżej polecenie instalacji dla swojego systemu (przycisk Kopiuj), wklej je do terminala i naciśnij Enter. Na Linuksie wpisz hasło, jeśli sudo o nie poprosi.
  4. Poczekaj do minuty. Polecenie pobiera Krak Server, sprawdza go, instaluje i pokazuje duży kod parowania, np. 7Q4M-X2PA, oraz link. Niczego więcej nie musisz tam wpisywać.
  5. Na telefonie lub komputerze otwórz Krak Multiplayer, dotknij przycisku +, potem Hostuj zdalny serwer, i wpisz kod (albo otwórz link). Sprawdź nazwę serwera i zatwierdź.
  6. Wybierz, który serwer Minecraft na maszynie udostępnić i jako jaki świat, a potem Zapisz. Twój świat jest online dla znajomych zawsze, gdy maszyna działa.

Instalacja na Linuksie

Wklej to do terminala i naciśnij Enter (sudo może zapytać o twoje hasło):

curl -fsSL https://krak-mp.cc/download/server/install.sh | sudo sh

Skrypt wybiera wersję dla twojego procesora, sprawdza jej SHA-256, instaluje Krak Server jako usługę systemową krak-server, uruchamia ją i pokazuje kod parowania. Później sudo krak-server status pokaże go ponownie. Ręcznie: pobierz archiwum dla swojego procesora ze strony pobierania, porównaj jego SHA-256, rozpakuj je poleceniem tar xzf i uruchom sudo ./krak-server install. Ponowne uruchomienie instalatora aktualizuje Krak Server.

Instalacja na Windows

Otwórz PowerShell jako administrator (prawy przycisk na Start, Terminal (Administrator)), wklej to i naciśnij Enter:

irm https://krak-mp.cc/download/server/install.ps1 | iex

Instaluje usługę Windows Krak Server, która startuje z Windows i uruchamia się ponownie po awarii, dodaje krak-server.exe do PATH i pokazuje kod parowania. Później krak-server.exe status w dowolnym nowym terminalu administratora pokaże go ponownie; program jest w C:\Program Files\Krak Server.

Żeby wypróbować bez instalacji: pobierz plik zip, rozpakuj go i uruchom krak-server.exe w konsoli. Paruje się i hostuje, dopóki go nie zamkniesz.

Co robi

Krak Server loguje się kodem parowania, nigdy twoim hasłem. Znajduje serwery Bedrock i Java na tej samej maszynie i udostępnia te, które wybierzesz w aplikacji, jako światy Krak. Gracze dołączają do nich z Krak Multiplayer jak do każdego innego świata: serwer pojawia się na liście LAN w samym Minecraft.

Ruch gry idzie przez przekaźnik Krak. Gracze nigdy nie widzą adresu IP serwera, a serwer nigdy nie widzi ich adresów. Krak Server nie otwiera portów i nie wymaga przekierowania portów: łączy się tylko na zewnątrz z krak-mp.cc.

Serwerem sterujesz w aplikacji: dotknij +, potem Hostuj zdalny serwer, albo otwórz Moje światy, gdzie są twoje serwery. Tam wybierasz, co hostować, uruchamiasz to i zatrzymujesz oraz widzisz graczy, prośby o dołączenie, wyrzucenia, bany i stan serwera. Ten ekran nosi nazwę Zdalne sterowanie, żeby nigdy nie pomylić go z hostowaniem na twoim urządzeniu.

Wymagania

  1. Linux na x86_64 lub ARM64 (systemd dla usługi działającej cały czas) albo Windows 10, 11 lub Server 2019 i nowszy na x64.
  2. Bedrock Dedicated Server, serwer Java (Paper, Fabric i inne) albo serwer Java z Geyser na tej samej maszynie.
  3. Konto Krak Multiplayer z potwierdzonym e-mailem lub logowaniem Google oraz aplikacja 0.8.5 lub nowsza, żeby sparować serwer i nim sterować (przycisk + od 0.8.6).
  4. Około 15 MB miejsca na dysku i 40 MB pamięci. Obok serwera gry Krak Server zużywa bardzo mało CPU.

Sparuj go ze swoim kontem

  1. Polecenie instalacji pokazuje kod parowania na końcu. Później albo gdy kod wygaśnie, uruchom na maszynie sudo krak-server status (w Windows: krak-server.exe status w terminalu administratora).
  2. W Krak Multiplayer dotknij +, potem Hostuj zdalny serwer, i wpisz kod albo otwórz link na telefonie. W aplikacji 0.8.5: Profil, Moje serwery, Dodaj serwer.
  3. Sprawdź nazwę, system i sieć serwera, a potem zatwierdź. Kod działa przez 10 minut; potem serwer pokaże nowy.

Zatwierdzaj tylko kod pokazany przez serwer, który kontrolujesz. Każdy, kto prosi cię o kod, chce hostować w twoim imieniu.

Wybierz, co hostować

Otwórz serwer (w Moich światach albo przez + i Hostuj zdalny serwer) i dotknij Hostuj na tym serwerze. Wybierz serwer znaleziony na maszynie, a potem jeden ze swoich światów lokalnych albo nowy. Nazwę, opis, ikonę, dostęp i inne ustawienia świata edytujesz w aplikacji jak zwykle.

Konto hostuje naraz jeden świat, z Krak Plus lub bez: świat na telefonie lub komputerze, serwer hostowany przez aplikację albo świat na Krak Server. Serwer cross-play (Paper z Geyser) to jeden świat z obiema edycjami. Możesz sparować do 2 serwerów, albo 7 z Krak Plus, i mieć na każdym świat: włącz hostowanie dla tego, którego chcesz teraz. Z Krak Plus twój serwer zewnętrzny może w tym czasie zostać na liście, chyba że to ten sam serwer.

Zatwierdzanie dołączania działa, ale prośby wygasają po 2 minutach. Dla serwera, który działa, gdy śpisz, wyłącz zatwierdzanie i zamiast tego używaj ustawień dostępu świata i banów.

Ustawienia Bedrock Dedicated Server

Gracze Krak dołączają przez listę LAN, więc serwer musi przyjmować graczy LAN. W server.properties ustaw:

enable-lan-visibility=true
online-mode=false
allow-list=false

Z online-mode=false serwer nie sprawdza logowania Xbox. Jeśli własny port serwera jest też otwarty dla internetu, gracze łączący się z nim bezpośrednio mogą dołączyć pod dowolną nazwą, także operatora. Trzymaj port Bedrock zamknięty dla internetu albo zaakceptuj niezweryfikowanych graczy bezpośrednich.

Tylko jeden serwer Bedrock na maszynę może być widoczny w sieci LAN: zajmuje port UDP 7551. Minecraft 1.26.52 i nowszy wpuszcza graczy Krak tylko w ten sposób, więc drugiego serwera Bedrock na tej samej maszynie nie da się udostępnić: Krak Server go nie hostuje, a aplikacja mówi dlaczego. Zatrzymaj tamten serwer albo włącz RakNet w drugim. Po zmianie tych ustawień uruchom serwer ponownie.

Serwery Java

Serwer Java nie potrzebuje niczego specjalnego: Krak Server łączy się z portem serwera na tej samej maszynie. Na serwerze z online-mode gracze potrzebują jak zwykle Minecraft: Java Edition.

Geyser: gracze Bedrock na serwerze Java

Z Geyser na Paper, Spigot lub proxy gracze Bedrock wchodzą przez port Bedrock Geyser, a Krak Server udostępnia ten port jak serwer Bedrock. Domyślny Geyser odrzuca każdego gracza Bedrock przychodzącego przez Krak: widzi on „Please log into Xbox”, bo dołącza jak do gry LAN, bez sprawdzania logowania Xbox, którego oczekuje Geyser. Krak Server nie widzi tej odmowy, więc aplikacja nie może cię o niej powiadomić. Ustaw to w config.yml Geyser (plugins/Geyser-Spigot/config.yml na Paper i Spigot):

validate-bedrock-login: false

Potem uruchom serwer ponownie. Geyser przestaje sprawdzać logowanie Xbox graczy Bedrock: trzymaj jego port Bedrock (domyślnie 19132) zamknięty dla internetu, inaczej gracze łączący się z nim bezpośrednio mogą dołączyć pod dowolną nazwą Bedrock. Krak nie potrzebuje otwartego portu.

To nie dotyczy graczy Java, a serwer Java może zostać z online-mode=true. Z Floodgate gracze Bedrock dołączają bez konta Java; bez Floodgate Geyser prosi każdego gracza Bedrock o zalogowanie się kontem Java.

Krak łączy się z Geyser przez RakNet. Minecraft 26.60 ma zakończyć dołączanie przez RakNet, więc gracze Bedrock z 26.60 mogą nie wejść przez Krak, dopóki Geyser ich nie obsłuży.

Docker

Uruchom kontener serwera gry z siecią hosta (--network host), żeby Krak Server zainstalowany na hoście widział jego wykrywanie LAN i porty.

Ustawienia

Krak Server czyta /etc/krak-server/config.json na Linuksie i %ProgramData%\Krak Server\config.json na Windows. Każdy klucz jest opcjonalny, a nieznane klucze są odrzucane. Sprawdź plik poleceniem krak-server config check i po zmianie uruchom usługę ponownie.

name
Nazwa pokazywana w aplikacji. Domyślnie: nazwa hosta maszyny.
allow
Porty, które aplikacja może udostępniać: bedrockPorts i javaPorts. Domyślnie: zwykłe zakresy, Bedrock od 19132 do 19140 i Java od 25565 do 25570. Serwer na innym porcie zostanie udostępniony dopiero po dodaniu jego portu tutaj, na samej maszynie.
updates
mode: auto (domyślnie), notify lub off; window: czas lokalny, w którym automatyczna aktualizacja może uruchomić Krak Server ponownie (domyślnie 04:00-06:00).
relay
preferred: przekaźnik używany zawsze; null wybiera najlepszy.
publicAddress
Adres, który aplikacja proponuje, gdy włączasz publiczny adres dla świata.
logLevel, logFormat
debug, info, warn lub error; text lub json.
limits
memoryMB: limit pamięci Krak Server (domyślnie 128).

Aktualizacje

Krak Server co 6 godzin sprawdza podpisane aktualizacje i sam je instaluje: w oknie aktualizacji albo gdy tylko nikt nie gra lub aktualizacja jest wymagana. Hostowany świat uruchamia się ponownie, a gracze dołączają z listy LAN. W aplikacji przycisk Zaktualizuj teraz instaluje aktualizację od razu.

W Linuksie usługa instaluje aktualizację przy ponownym uruchomieniu, w kilka sekund. W Windows instaluje ją w ciągu 15 minut zaplanowane zadanie Krak Server\Apply update: działa jako SYSTEM, zatrzymuje usługę, podmienia program, uruchamia go ponownie i sprawdza, czy nowa wersja działa. Jeśli nowa wersja się nie uruchomi, wraca poprzednia. krak-server status pokazuje oczekującą aktualizację i kiedy zadanie ostatnio działało.

Aby od razu zainstalować aktualizację w Linuksie:

sudo krak-server update

W Windows, w PowerShell jako administrator (z pełną ścieżką działa w każdym oknie):

& "C:\Program Files\Krak Server\krak-server.exe" update

Ponowne uruchomienie polecenia instalacji też aktualizuje Krak Server. Zachowuje parowanie i ustawienia oraz tworzy na nowo zadanie aktualizacji Windows, na przykład po instalacji z --no-auto-update.

Status i logi

krak-server status pokazuje, z czyim kontem serwer jest sparowany, kod parowania, gdy czeka, połączenie, każdy hostowany świat i jego graczy. Na Linuksie logi są w dzienniku systemowym:

sudo krak-server status
journalctl -u krak-server -f

W Windows są w %ProgramData%\Krak Server\logs. Logi nigdy nie zawierają tokenów, kluczy ani adresów graczy.

Usuń serwer

W aplikacji: otwórz serwer (Moje światy), jego menu, Usuń serwer. Serwer od razu przestaje hostować i nie może się ponownie zalogować. Potem sam pokazuje nowy kod parowania, dla tego albo innego konta.

Na maszynie: sudo krak-server unpair usuwa parowanie; sudo krak-server uninstall usuwa usługę, a z --purge także jej ustawienia i dane.

Zmiana lub reset hasła, wylogowanie wszędzie i ban wylogowują też wszystkie serwery konta.

Rozwiązywanie problemów

Kod wygasł

Kod działa przez 10 minut. Serwer sam pokaże nowy: uruchom ponownie krak-server status.

Zegar się spieszy lub późni (clock skew)

Krak Server loguje się z czasem maszyny. Włącz synchronizację czasu: timedatectl set-ntp true na Linuksie, usługa Czas systemu Windows na Windows.

Nie znaleziono serwera gry

Najpierw uruchom serwer gry i sprawdź, czy odpowiada na maszynie (dla Bedrock: enable-lan-visibility=true). Potem dotknij w aplikacji Skanuj ponownie.

Port jest niedozwolony

Serwer gry działa na porcie spoza allow. Dodaj port do allow w pliku konfiguracyjnym na maszynie i uruchom Krak Server ponownie.

Gracze są odrzucani

Sprawdź online-mode i allow-list w server.properties. Stan serwera w aplikacji pokazuje odmowy i ich powód.

Gracze Bedrock widzą „Please log into Xbox”

To Geyser odrzuca graczy przychodzących przez Krak. Ustaw validate-bedrock-login: false w config.yml Geyser i uruchom serwer ponownie (patrz Geyser wyżej). Aplikacja nie może pokazać tej odmowy.

krak-server.exe nie jest rozpoznawany

Krak Server dodaje swój folder do PATH podczas instalacji: otwórz nowy terminal. Albo uruchom go z pełną ścieżką: "C:\Program Files\Krak Server\krak-server.exe" status (w PowerShell dodaj & na początku). Instalacja sprzed 0.8.6? Uruchom polecenie instalacji ponownie.

Nikt nie może dołączyć do drugiego serwera Bedrock

Na jednej maszynie działają dwa serwery Bedrock, a widoczność w sieci LAN (port UDP 7551) ma ten drugi. Od Minecraft 1.26.52 serwer Bedrock przyjmuje graczy Krak tylko dzięki widoczności w sieci LAN, więc aplikacja pokazuje ten serwer jako zatrzymany. Udostępniaj jeden serwer Bedrock na maszynę: zatrzymaj tamten i uruchom ten ponownie albo włącz w tym RakNet.

Aplikacja mówi, że inny świat jest już hostowany

Konto hostuje naraz jeden świat, z Krak Plus lub bez. Dopóki świat działa na twoim telefonie, komputerze albo innym Krak Server, ten serwer czeka i sam startuje w ciągu kilku sekund, gdy tamten świat się zatrzyma. Żeby przełączyć, zatrzymaj tamten świat (aplikacja proponuje Zatrzymaj go) albo wyłącz w aplikacji hostowanie świata tego serwera.

Instalacja mówi, że serwer jest już sparowany

Krak Server zostaje sparowany z kontem, które zatwierdziło jego kod, także gdy polecenie instalacji zostanie uruchomione ponownie. Żeby przekazać serwer innemu kontu, jego właściciel usuwa go w aplikacji (Moje światy albo zdalne sterowanie, Usuń serwer): serwer sam pokaże wtedy nowy kod parowania, sprawdzisz go poleceniem krak-server status. Albo na maszynie: sudo krak-server unpair (w Windows: krak-server.exe unpair w terminalu administratora).

Aktualizacja jest pobrana, ale niezainstalowana

W Windows aktualizacje instaluje zaplanowane zadanie, ale Krak Server przed 0.8.9.1 nigdy go o to nie prosił, więc serwer z Windows zostawał przy wersji, z którą go zainstalowano. Zainstaluj aktualizację raz, w PowerShell jako administrator: & "C:\Program Files\Krak Server\krak-server.exe" update (albo uruchom ponownie polecenie instalacji); kolejne aktualizacje zainstalują się same. Jeśli aktualizacja czeka dłużej niż 30 minut, krak-server status powie dlaczego i które polecenie ją zainstaluje. W Linuksie: sudo krak-server update.

Krak Server jest zatrzymany (NOT RUNNING)

Uruchom go: w PowerShell jako administrator sc.exe start KrakServer (samo sc to w PowerShell inne polecenie), w Linuksie sudo systemctl start krak-server. Po minucie krak-server status powinien pokazać online. Jeśli znów się zatrzyma, przyczynę podaje log: %ProgramData%\Krak Server\logs w Windows, journalctl -u krak-server w Linuksie. Od 0.8.9.1, jeśli nowa wersja z aktualizacji się nie uruchomi, poprzednia wraca sama.

Minecraft jest znakiem towarowym Mojang Synergies AB. Krak Multiplayer nie jest oficjalnym produktem Minecraft i nie jest zatwierdzony przez Mojang ani Microsoft ani z nimi powiązany.