Kompendium wiedzy o quizach: lag, split, "penalty points"

Lag (inaczej latencja lub opóźnienie) jest niekorzystnym zjawiskiem nielubianym przez graczy w quizbota, a przede wszystkim przez uczestników premier quizowych. Jest to opóźnienie pomiędzy chwilą wysłania wiadomości np. odpowiedzi na pytanie przez zawodnika, a odebraniem jej i reakcją na nią przez skrypt. Powodów zaistnienia lagów może być kilka.

IRC jest siecią wzajemnie połączonych ze sobą za pomocą Internetu serwerów. Każdy komunikat wysłany przez użytkownika trafia najpierw do serwera, poprzez który połączył się on z IRC-em, a następnie rozsyłany jest do każdego z serwerów, z których korzystają obecni na kanale pozostali użytkownicy. Często po drodze występują także regionalne węzły, tzw. huby, pod które podpięte są wszystkie serwery z danego kraju. Jest to dość długa ścieżka, która sama z siebie generuje opóźnienia związane z połączeniami (często międzynarodowymi) oraz samym przetwarzaniem komunikatów. Standardowo utrzymują się one w granicach do jednej sekundy, zazwyczaj jest to kilkadziesiąt do kilkuset milisekund. Dlatego też na kanałach quizowych panują zwykle zasady, by quizbot lub osoba przeprowadzająca quiz łączyła się z regionalnym serwerem kraju, z którego pochodzi większość osób. Ponadto sami gracze powinni w miarę możliwości łączyć się z IRC-em poprzez ten sam serwer lub z geograficznie najbliższym (pomóc może polecenie „/whois” wyświetlające używany adres serwera oraz polecenie „/map” pokazujące drzewko połączeń serwerów).

Zaobserwowanie szybko narastającego opóźnienia lub „przytkania”, czyli nagłego braku napływu nowych wiadomości może zwiastować nadchodzący „split”, który jest zerwaniem połączenia pomiędzy serwerami i rozdzieleniem segmentów sieci IRC. Splity zwykle trwają od kilku do kilkunastu minut, choć w przypadku przerw serwisowych serwerów potrwać mogą nawet kilka godzin. Spowodowane mogą być także atakami typu DDoS. W przypadku skryptów quizowych limitujących czas na odpowiedź, takich jak: „Milionerzy”, „Familiada” czy „AntyGoogler” prowadzić to może do popsucia rozgrywki (quiz trwa dalej, ale brak jest graczy), o ile nie zostanie użyte polecenie pauzujące grę na czas splitu. Z tego powodu zalecane jest właśnie korzystanie przez wszystkich z tego samego serwera podczas quizów.

O ile na lag związany z IRC-em użytkownicy nie mają (teoretycznie) wpływu, o tyle może on być też spowodowany nadmiernym przeciążeniem łącza (np. programy P2P, intensywne korzystanie z Internetu) lub rzadziej komputera (np. gry, odtwarzanie filmów, archiwizowanie danych) osoby przeprowadzającej quiz. Stąd też zwykle zasadą jest, by osoba ta nie wykorzystywała w trakcie quizu komputera do innych celów. Dotyczy to tak samo serwera, na którym stać może quizbot. W których to przypadku dodatkowym problemem może być nieoptymalny kod lub przetwarzanie rankingów z wieloma tysiącami graczy.

W sieci IRCnet istnieje dodatkowo specjalny algorytm wprowadzający „penalty points” (punkty karne), którego działanie przypomina zachowaniem lagi. Został on wprowadzony m.in. w celu zwalczania tzw. floodów, czyli znacznych ilości tekstu wysyłanych na kanały przez złośliwych użytkowników w celu wprowadzania zamieszania. Jego działanie polega na przyznawaniu określonej liczby punktów karnych za każdy rodzaj komunikatu wysyłanego do serwera. Pula punktów każdej z osób redukowana jest co sekundę. Po przekroczeniu pewnego progu serwer zapamiętuje, aczkolwiek przestaje przesyłać dalej kolejne komunikaty od użytkownika, dopóki nie zredukują się jego punkty karne lub ilość przesłanych danych zapełni bufor i użytkownik zostanie rozłączony z siecią. Dla pozostałych osób wygląda to jak tradycyjny lag i często jest też jego główną zaobserwowaną przyczyną. Skrypty quizowe, które wysyłają często i dużo wiadomości na kanał jak np. „Familiada” mogą ulegać opóźnieniom właśnie z tego powodu. Problemem mogą być także niektóre polecenia kanałowe jak na przykład polecenie wyświetlające skrócony ranking, które o ile nie zostały odpowiednio zabezpieczone mogą być nadużywane lub złośliwie wykorzystywane do lagowania puszczającego quiz. Należy mieć tu na uwadze to, że z punktu widzenia wysyłającego wszystkie komunikaty widziane są jako wysłane natychmiast, więc po jego stronie przykładowo kolejne pytanie mogło się już wyświetlić i czas na odpowiedź płynie, ale inni jeszcze go nie widzą.

U nas też są lagi, jak wszędzie. ;) Ale mamy też ciekawe premiery quizowe, quizbota z masą pytań oraz miłych i rozmownych quizowiczy. Wpadnij na kanał #QuizPL w sieci IRCnet i baw się razem z nami.

www.quizpl.net/kompendium

#kompendium #quiz #irc #ircnet
Shared publiclyView activity