←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Czym się różnią eventy od logevent?

  • +
  • -
Proziom1 - zdjęcie Proziom1 02.01.2015

Witam,

 

Mam takie nie typowe pytanie.Czym się róźnią eventy od logevent'ów + gdzie mogę znaleźć listę logevent'ów?

 

Co to RegisterHam?


Użytkownik Proziom1 edytował ten post 02.01.2015 16:13
Odpowiedz

  • +
  • -
Proziom1 - zdjęcie Proziom1 02.01.2015

Czym się różnią eventy od logeventów a registerHam ?

Odpowiedz

  • +
  • -
GwynBleidD - zdjęcie GwynBleidD 02.01.2015

Eventy wyłapują określone zdarzenia przewidziane przez twórców HLDS, MetaModa lub AMXX. Logeventy wyłapują dowolne zdarzenia, które silnik gry odnotowuje (lub usiłuje odnotować, jeśli logi są wyłączone) w logach serwera, dzięki temu możemy wyłapać również nieprzewidziane przez w/w twórców zdarzenia, które są odnotowywane w logach.

RegisterHam służy dokładnie do tego samego, co eventy lub logeventy czyli do wyłapywania zdarzeń, jednak moduł Ham specjalizuje się w innych zdarzeniach, niż eventy i logeventy.

Różni się również sama obsługa tych zdarzeń, tj w każdej z tych trzech metod parametry są przekazywane w odmienny sposób
Odpowiedz

  • +
  • -
Proziom1 - zdjęcie Proziom1 02.01.2015

No ok ale powiedz gdzie znajdę te logeventy ? Na przykład chciałbym wyłapać moment podłożenia paki przez jakiegoś gracza z TT ,jaki typ eventu musiałbym zastosować ?

Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 02.01.2015

Podłożenie paki możesz "wyłapać", albo za pomocą rejestracji logeventu (bo w logach jest to odnotowane), albo używając modułu csx. Ogólnie nie ma jednej odpowiedzi na to jak jakieś zdarzenie "złapać", wszystko zależy od tego co chcesz "złapać".
Odpowiedz

  • +
  • -
GwynBleidD - zdjęcie GwynBleidD 02.01.2015

co do logeventów, najwygodniej jest przetrząsnąć logi serwera (te w cstrike/logs), upewnij się jednak najpierw, że masz włączone w cvarach serwera logowanie wszystkiego, co się rusza (lub nie rusza), żeby czegoś nie przegapić :)

Następnie jeśli widzisz, że interesująca Cię rzecz pojawia się w logach, możesz złapać ją logeventem. Jak to zrobić? Tutaj metod jest sporo, jedni po prostu eksperymentują, próbując łapać różne fragmenty wpisu z logów jako różne parametry, ja idę w inną stronę. Rejestruję logevent, który złapie absolutnie wszystko (czyli nie podaję mu żadnych kryteriów) i wszystkie jego parametry wypisuję w czacie. Oczywiście zrobi się nieziemski spam :D Następnie wywołuję na serwerze interesujące mnie zdarzenie i patrzę jakie parametry w logevencie to zdarzenie ze sobą niesie. Na końcu analizuję te parametry i tworzę już odpowiednio sprecyzowany logevent.
Odpowiedz