Statusy serwerów gier w Node.js

Bodzio | 2021-02-17 10:25:31 UTC | #1

Siemka, wiecie może jaki jest najprostszy sposób na pobranie danych o serwerze Minecraft i CS:GO. Nie chce robić kolejnej listy serwerów a po prostu chce mieć status swoich serwerów na stronie. Potrzebne dane to czy jest online, liczba graczy no i w przypadku CS:GO ewentualnie aktualna mapa. Szukałem czegoś w NPM ale nic lekkiego i aktualizowanego nie znalazłem.


mar232320 | 2020-04-03 11:02:32 UTC | #3

Jest możliwe kontrolowania serwerów Minecraft w node.js (jeśli serwer jest postawiony na wersji od 1.7.10 - 1.15.1.

Pierwsze co musisz zrobić to zainstalować bibliotekę minecraft-protocol
npm install minecraft-protocol
Biblioteka posiada mnóstwo funkcji, ale tu odsyłam Cię do dokumentacji; przedstawię tylko to, co jest Ci potrzebne :slight_smile:

Pierwsze polecenie to mc.ping(opcje, callback) które pozwala sprawdzić latency serwera, oraz przedstawia podstawowe informacje.
Dostepne argumenty to:
description - motd serwera
players - wyświetla informacje o graczach serwera:
Parametry do opcji players to:
- max - liczba graczy, którzy w jednym momencie mogą znajdować się na serwerze, którą
ustawiłeś w pliku server.properties
- online - wyświetla aktualną liczbę graczy na serwerze
version - informacje o wersji serwera
Parametry do opcji version :
- name numer wersji i silnik
- protocol - numer wersji protokołu minecraft
favicon - ikona serwera
latency - pinguje serwer; wyświetla informacje o połączeniu

Po szczegółowa dokumentacje odsyłam tutaj:
https://github.com/PrismarineJS/node-minecraft-protocol
https://github.com/PrismarineJS/node-minecraft-protocol/blob/master/docs/API.md

Mam nadzieję, ze pomogłem :)


Bodzio | 2020-04-03 09:47:52 UTC | #4

Okej jest to fajne rozwiązanie w dodatku wszystko jest oczywiście w npm. Ale potrzebuje jeszcze coś do CS:GO…


riko.dev | 2020-04-03 10:50:56 UTC | #5

Sprawdź https://www.npmjs.com/package/source-server-query. Ta biblioteka jest dość mała i zajmuje niecałe 10.7 kB.


Bodzio | 2020-04-03 11:02:29 UTC | #6

Dzięki za pomoc. Skorzystam z obu rozwiązań :wink:.


psycho | 2020-04-03 14:49:01 UTC | #7

Dorzucę swoje 3 grosze, gdyż jest też ciekawa biblioteka, która obsłuży większą ilość gier. Nazywa się gamedig. Obsługuje ona dużo więcej typów serwerów (testowałem na Minecraft, cs 1.6, csgo i gmod)


Bodzio | 2020-04-03 16:49:42 UTC | #8

O również fajne rozwiązanie. Kurde jakimś cudem jak robiłem research to wyskakiwały mi paczki tego typu ale jakieś stare np. ostatnia aktualizacja 4 lata temu a github nie działa. A tutaj fajna paczka która jest aktualizowana z tego co widzę :stuckouttongue:. Sprawdzę każdą opcje i wybiorę najlepszą dla mnie.


system | 2021-02-17 10:25:33 UTC | #9

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.