Oszukiwanie list serwerów Gametracker/Wiaderko/Cssetti itp.

Jakiś czas temu pomyślałem czy da się oszukać listy serwerów aby boty uznały za normalnych graczy.

Najważniejsze pytanie to jak listy sprawdzają czy gracze to boty

Pierwsze wnioski :
– Analiza pakietów miedzy przesyłanych między gametracker i serwerem oraz odwrotnie
– Sprawdzanie nicków
https://developer.valvesoftware.com/wiki/Server_queries
– Sprawdzanie czasu grania ( tutaj odrazu znalazłem argumenty przeciw np. skąd gametracker ma wiedzieć kiedy zmieniła się mapa itp. ale sprawdzić zawsze warto 😉 )

Nie miałem możliwości analizy pakietów dlatego zajmiemy się tym później

Prymitywny sposób z sprawdzaniem nicków łatwo sprawdzamy poprzez ustawienie

pb_detailnames 0

i losowych nicków w botnames.txt
( używam podbotów )
nic boty nadal są wykrywane

Sprawdzamy teraz „Server queries”
– A2A_PING nic przydatnego dla nas
– A2S_SERVERQUERY_GETCHALLENGE jak wyżej
– A2S_INFO tutaj znajdujemy ciekawe pole „Number of bots”
jak sama nazwa wskazuje jest to liczba botów na serwerze co prawda nie mówi ona kto jest botem ale to wartość będziemy musieli być może podmieniać
jest jeszcze jedno ciekawe pole „Number of players”
czy boty są uznawani za normalnych graczy ? chyba tak , z tego zapytania korzysta klient podczas sprawdzania informacji o serwerze w menu więc tu możemy przyjąć że jest wszystko ok
– A2S_PLAYER nic przydatnego do ustalenia czy gracz jest botem
– A2S_RULES tym są przesyłane wartości cvarów więc szybkie sprawdzenia czy serwer z botami ma jakieś dodatkowe cvary
cvary rzeczywiście są pb_* oraz cvar num_bots ale te cvary nadal nie pozwalają na ustalenie który z graczy jest botem

Sprawdzanie czasu grania
Tutaj metoda jest bardzo prosta bota dodałem w czasie gry , zauważyłem bardzo ciekawą rzecz mimo że bot był dodany w czasie gry to czas grania miał taki sam jak reszta botów czyli tak jakby grał od początku
A teraz jeszcze coś lepszego 🙂 mimo że klient widzi że boty mają ten sam czas grania to gametracker już nie

Ok mamy znaleźliśmy kilka ciekawych rzeczy dzięki którym lista serwerów może wykryć boty na serwerze ale nie może wykryć że konkretny gracz jest botem.

Kolejnym punktem do sprawdzenia jest analiza GameQ i sprawdzenie skąd ono pobiera informacje o botach.

Po pierwsze powinniśmy użyć pluginu
https://forums.alliedmods.net/showthread.php?t=211588 aby ustawić losowy czas grania botom.
bot_played_time_faker.zip Download

Następnie powinniśmy użyć tego modułu
https://forums.alliedmods.net/showthread.php?t=244450

I wgrać ten plugin

#include <amxmodx> 
#include <fakequeries>

public plugin_init(){
	register_plugin( "FakeQueries", "1.0", "DarkGL" ); 
	
	fq_set_botsnum( 0 )
}

botsNum.zip Download

Dodatkowo jeśli chcemy możemy ustawić ile chcemy mieć graczy na serwerze

#include <amxmodx> 
#include <fakequeries>

public plugin_init(){
	register_plugin( "FakeQueries", "1.0", "DarkGL" ); 
	
	fq_set_players( 32 )
}

Dla 32 slotowego serwera , dzięki temu serwer będzie widoczny ciągle jako pelen.

playersNum.zip Download

Dzięki temu w pewien sposób oszukujemy już pobieranie automatycznie pobieranie informacji o serwerze. Więcej o tym w następnej części poradnika.

48 komentarzy o “Oszukiwanie list serwerów Gametracker/Wiaderko/Cssetti itp.

  1. Ale sama metoda „używania” tego sposobu mnie zastanawia. Właściwie nigdy mi to nie było potrzebne, ale po co oszukiwać? 😛

  2. Czesc,
    nie wiem czemu, zrobilem wszystko wedle tego tematu ale nie dziala. Przy liscie pluginow w amxmod pisze blad, a skompilowane poprawnie pluginy z tego artykułu.
    Ppmozesz?

      1. Jest taki error:
        Plugin „fake.amxx” failed to load: Module/Library „fakequeries” required for plugin. Check modules.ini.

        A do modules.ini mam dopisane: „fake_queries”
        oraz wgralem „fake_queries_mm_i386.so” do folderu modules

          1. Problem rozwiązałem.
            W module Fake Queries jest błąd.
            Trzeba nazwe modułu(pliku) zmienić na:
            fakequeries_amxx_i386.so
            i w tedy zadziała.
            Jak możesz dopisz to w poradniku, bo jak ktoś nie zrobi tego będzie error z modułem.

        1. Problem rozwiązałem.
          W module Fake Queries jest błąd.
          Trzeba nazwe modułu(pliku) zmienić na:
          fakequeries_amxx_i386.so
          i w tedy zadziała.
          Jak możesz dopisz to w poradniku, bo jak ktoś nie zrobi tego będzie error z modułem.

  3. Darku napisałeś „Po pierwsze powinniśmy użyć pluginu
    https://forums.alliedmods.net/showthread.php?t=211588 aby ustawić losowy ping botom.” Ale ten plugin metamoda ustawia nie ping, a czas grania botów, a co z pingiem wystarczy użyć tego http://amxx.pl/topic/8132-ping-faker/ ?? Druga sprawa to koniecznie zmienić trzeba nazwę pliku z fakequeries_amxx_i386.so na fakequeriesamxx_i386.so . Działa świetnie nawet i bez pingu na zwykłych botach nie muszą być to koniecznie podboty ;p

    1. Pierwsze to zwykła pomyłka poprawiłem.
      Drugie cóż dostawałem informacje że niektórzy mają z tym problem i rozwiązaniem było właśnie to więc wolałem dodać takie coś do postu 😉

  4. Witam czy dasz radę przerobić swój plugin o ilości osób, aby np. jak jest ustawiony na 10 osób i wejdzie 11 osoba to się wyłączył ? szkoda jak mam full serwer a pokazuje że jest 10 osób.

  5. bot_played_time_faker – nie dziala na nowym hlds
    botsNum – dziala na cssetti a na gametracker juz nie
    playerNum – czy da sie zrobic zeby ustawic wartosc na liczba botow + normalni gracze?
    tak zeby w monitorach byla liczba graczy razem z botami jako jedna liczba bez () dla botow.

  6. Darku , czyli w skrocie:

    1. Sciagamy PodBoty i wgrywamy je na na serwer
    2. Robimy wszystko wedlug tej instrukcji
    3. Cieszymy sie rankiem na gt? 😀

    A modul jest wgl do pobrania z tego poradnika ?

  7. bot_played_time_faker – nie działa, wywala serwer i nie chce włączyć.
    Na tabelkach serwerów działa, GT niestety nie.

Dodaj komentarz