Guides / Server & Performance

server-icon.png: dokładne wymagania i API do zarządzania, którego nikt nie używa

64x64, PNG, w katalogu głównym serwera — pomyl się w którymkolwiek z tych trzech, a ikona po prostu się nie pojawi. Plus API do zarządzania JSON-RPC, które zastąpiło parsowanie konsoli.

Ikona serwera to najbardziej bezlitosna mała funkcja w Minecrafcie, ponieważ każdy błąd wygląda identycznie: brak ikony, brak błędu.

Trzy wymagania, wszystkie obowiązkowe

  1. Dokładnie 64×64 piksele. Nie 63, nie 128. Serwer nie zmienia rozmiaru.
  2. Format PNG. Naprawdę PNG, a nie zmieniony JPG.
  3. Nazwana server-icon.png, w katalogu głównym serwera — obok server.properties, a nie w folderze świata.

Pomyl się w którymkolwiek z tych punktów, a serwer uruchomi się normalnie i wyświetli domyślną ikonę. Nic nie zostanie zalogowane na domyślnym poziomie.

Rzeczy, które również to psują

  • Przeplatany PNG (Interlaced PNG). Niektóre edytory domyślnie zapisują pliki przeplatane; czytnik Minecrafta je odrzuca. Eksportuj ponownie jako nieprzeplatane.
  • 16-bitowa głębia kolorów. Zapisz jako 8-bitową na kanał.
  • Profile kolorów. Osadzony profil ICC czasami powoduje problemy z parserem. Usuń metadane podczas eksportu.
  • Przezroczystość jest w porządku i renderuje się poprawnie na liście serwerów.

Klient ją buforuje

Gdy klient raz zobaczy Twój serwer, przechowuje jego ikonę. Zmiana jej po stronie serwera nie aktualizuje istniejących wpisów — Gracz musi usunąć i ponownie dodać serwer, lub poczekać, aż pamięć podręczna wygaśnie. Testowanie zmiany ikony z własnego klienta przekona Cię, że nie zadziałała, choć w rzeczywistości zadziałała.

API do zarządzania

Najnowsze wersje serwera udostępniają interfejs zarządzania JSON-RPC, który jest zatwierdzonym zamiennikiem dla parsowania danych wyjściowych konsoli lub dołączania wtyczek.

Włącz go w server.properties:

management-server-enabled=true
management-server-host=localhost
management-server-port=25585

Następnie komunikuj się za pomocą JSON-RPC przez ten port:

{ "jsonrpc": "2.0", "id": 1, "method": "minecraft:players" }

Metody obejmują listę Graczy, status serwera, białą listę i listę banów, zasady gry (gamerules), ustawienia oraz parę zapisz/zatrzymaj. Każda z nich zwraca ustrukturyzowany JSON zamiast linii tekstu, którą musisz parsować za pomocą wyrażeń regularnych.

Powiąż go z localhostem

Domyślnie jest to localhost i tak powinno pozostać. Interfejs nie jest przeznaczony do wystawiania na internet — cokolwiek, co do niego dotrze, może zatrzymać Twój serwer. Udostępnij go poprzez tunel SSH lub odwrotny serwer proxy z uwierzytelnianiem, jeśli potrzebujesz zdalnego dostępu, nigdy nie zmieniając hosta na 0.0.0.0.

Dlaczego to ma znaczenie

Pulpity nawigacyjne, boty Discorda i monitory czasu działania historycznie działały poprzez odczytywanie logów konsoli lub używanie RCON, z których oba są kruche. Typowane API oznacza, że widżet licznika Graczy nie zepsuje się, gdy zmieni się format linii logu.

Konwertuj dowolny obraz na zgodny server-icon.png i przeglądaj metody JSON-RPC w Narzędziach do ikon serwera i API.

Ikona serwera i API →

More guides

Browse all →

Szukasz innych narzędzi do Minecrafta?

Zestaw generatorów, podglądów i konwerterów działających w przeglądarce — wszystkie za darmo.