Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2015-11-26, 01:17


PrzMas

GG: 59825555






Wiek: 31
Na forum: 4000 dni
Posty: 24
Nick w MP: przmas

Piwa: 386

Respekt: 110
Respekt: 110


W zwi?zku z tym, ?e przesta?o mi zale?e? na przetrzymywaniu tego "wykrywacza" na w?asny u?ytek,
tote? postanowi?em opublikowa? w miarodajnej postaci to co wydedukowa?em.


Ukryta wiadomość / Hidden message(aby ją zobaczyć musisz postawić użytkownikowi)
Wiadomość została ukryta, aby ją przeczytać należy się zalogować.

Deklaracja nag??wka funkcji i callback-a, nale?y je umie?ci? gdzie? w skrypcie, najlepiej w widocznym miejscu np. na g?rze.

Ukryta wiadomość / Hidden message(aby ją zobaczyć musisz postawić użytkownikowi)
Wiadomość została ukryta, aby ją przeczytać należy się zalogować.

Zainicjowanie sprawdzania, kt?re jest mo?liwe dopiero wtedy, gdy klasa gracza jest utworzona (oczywi?cie po stronie klienta) - akcja 0x47 to jest oczekiwanie na za?adowanie tej klasy.

Ukryta wiadomość / Hidden message(aby ją zobaczyć musisz postawić użytkownikowi)
Wiadomość została ukryta, aby ją przeczytać należy się zalogować.

Callback OnClientCheckResponse nie jest wykonywany (wywo?ywany) w skrypcie gamemode-a, dlatego nale?y go umieszcza? w filtercript-ach.
Wiadomo, ?e je?eli w ci?gu 1 sekundy (czas zale?y m.in. od szybko?ci po??czenia klient-serwer) od wywo?ania funkcji SendClientCheck dla akcji 0x47 (patrz: OnPlayerConnect) nie zostanie wywo?any callback OnClientCheckResponse, to mo?na takiego gracza wyrzuci?, bo np. to mo?e by? RakSAMP albo ulepszony s0beit z pewnymi blokadami.


W kwestii polityki proponuj? nie chwali? si?, ?e macie co? takiego w skrypcie, a je?li ju? to lepiej rozpowszechni? plotk?, ?e to jest w?zek golfowy, poniewa? z pewnego punktu widzenia powy?sza metoda jest lepsza od tego w?zka, cho?by dlatego, ?e jest dyskretniejsza i prostsza w u?yciu, a nawet daje kilka innych mo?liwo?ci, dla kt?rych nie ma w SA-MP wbudowanych funkcji, natomiast (przy powy?szej metodzie) ?atwo mo?na "zosta? niewykrytym" podczas do??czania z s0beit-em na serwer.

Co do tych kilku innych mo?liwo?ci...
Proponuj? sprawdzi? jakie checksum-y s? generowane dla graczy znajduj?cych si? w r??nym stanie (pieszo, w powietrzu, w wodzie, w poje?dzie, ...), kt?rzy ju? do??czyli do gry, czyli maj? ju? utworzon? klas? gracza (m.in. posta?/skin). Do generowania tych checksum-?w wystarczy jedynie wywo?anie dla akcji 0x02, natomiast do ich analizowania/por?wnywania b?dzie konieczna wiedza na temat operacji bitowych, wi?c je?eli kto? nie czuje si? na si?ach to mo?e od razu sobie to odpu?ci?, cho? na dobr? spraw? ta wiedza nie jest jaka? tajemna :P


Opr?cz akcji 0x47 i 0x02 s? jeszcze takie akcje jak poni?ej:
  • 0x48: czas, jaki up?yn?? od momentu uruchomienia systemu operacyjnego klienta/gracza, wyra?ony w ilo?ci milisekund;
  • 0x46: ta akcja oka?e si? przydatna w po??czeniu z parametrem 'crc', w?wczas przekazany do funkcji argument 'arg1' jest zwracany (przez zmienn? 'checksum') z niezmienion? warto?ci?.


Je?li chodzi o zgodno?? klient/serwer dla powy?szego kodu, to w/w akcje zosta?y dodane/odblokowane w wersji 0.3z-R4 i s? dost?pne do wersji 0.3.7-R2 dla serwera, natomiast dla klienta powy?szy mechanizm na pewno jest efektywny od wersji 0.3z-R2 (nie sprawdza?em 0.3z-R1) do 0.3.7-R1. Tak wygl?da sytuacja zgodno?ci na chwil? obecn?.

Z uwagi na brak oficjalnej dokumentacji ze strony tw?rc?w nie napisz? nic wi?cej na temat przedmiotowego w temacie kodu, zreszt? i tak ju? napisa?em wystarczaj?co du?o.
Pytania typu co jeszcze opr?cz s0beit'a mo?na wykry? s? bezcelowe, poniewa? to zale?y od pomys?owo?ci tego, kto u?ywa powy?szego mechanizmu, no i od faktycznych jego mo?liwo?ci.


Poprzedni temat: [link]

[ Dodano: 2016-03-02 ]
Gdyby kto? si? natkn?? to nie zalecam korzysta? z tego rozwi?zania: [link].
Zale?nie od tego jak skin gracza zachowuje si? po po??czeniu (OnPlayerConnect) powy?szy spos?b sprawdzania mo?e dzia?a? bardzo wybi?rczo lub rzadko kiedy albo wcale.
Swoj? drog? ciekawe kto to tam wklei? :)

[ Dodano: 2016-07-22 ]
Ukryta wiadomość / Hidden message(aby ją zobaczyć musisz postawić użytkownikowi)
Wiadomość została ukryta, aby ją przeczytać należy się zalogować.


Ostatnio zmieniony przez PrzMas 2015-11-26, 21:12, w całości zmieniany 3 razy  
Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 75 piw(a):
kikalka, Virex_PL, Wafelowski, blejd, Dawid1999, Steve, Prezes123, ziBBo, NitroFuN, RedHed_, mgos307, MISTRZU320, Mac, Michatex, wampiros6, DerZikk, RudzielloPL, Perserga1992, Zamek, hansik96, Kokossek, jestemonlajn, Perwol, IgnatMcfill, Robson04, DaveRasta, Siedemnasty, Destinn, Lilop, Shlasku, asus12, Patrykos009, Barcioo, Buczer, WaterSmoke, ksamsel2, Pixelowy, Gameluner, Eck0, DsJ3, Uriziel, NexuseQ, Marek211, Liskey., zielo150, SOURCE12, EminemsS, bluur, nocax21413, Wujek14, pabloalber84, czikenpl, asdfasdfasdfasd, TenTypMess, xSeLeCTx, Spejson777, MrKacu13, pseudolconfirme, Fr0z3nko, metinek, L4ncy_R4veN, zul123, sfd, Toffiaaak., rxkrxd, abyss.z94, Lexon51, Nieznajomy003, 216typeczek, Maks xds, sanandreasrep, Kazurski, Jellonek, Duo22, bigsmoke_bb
Tagi: wykrywanie :: s0beita
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN » Skrypty do SA-MP Odpowiedz do tematu

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku