Strona 1 z 1

Skrypt quizowy dla irssi: iQuiz - opis i instrukcja obsługi

PostNapisane: środa, 14 września 2016, 20:20
napisany przez wilk
iQuiz
~ skrypt quizowy dla irssi ~
aktualna wersja: v170819, autor: wilk


Skrypt iQuiz jest skryptem quizowym dla irssi zainspirowanym klasycznymi skryptami takimi jak Dizzy (autor: Dizzy), Mieszacz i Familiada (obu autor: snajperx) dla mIRCa i powstał z braku ich właściwego odpowiednika dla irssi. Zawiera też różne dodatki, o które wzbogaciłem powyższe skrypty na przestrzeni lat. Ponadto wspiera on nowe, unikatowe rodzaje quizów jak Multi (Familiada bez drużyn — jak w Quizbocie) i Pomieszany (połączenie Dizzy i Mieszacza). Oferuje także ogromne możliwości konfiguracyjne niedostępne w żadnym innym skrypcie, jednak pisany jest tak, by działał i był obsługiwany równie łatwo, co każdy inny skrypt quizowy. Oczywiście akceptuje on także pliki z pytaniami w formacie w.w. quizów. Skrypt rozwijany jest od 2010 roku, a poniższy opis i instrukcja obsługi dotyczy zawsze aktualnej jego wersji.

Skrypt do pobrania (lub z repozytorium irssi)

Temat z informacjami o zmianach w skrypcie: changelog

Dodatkowe pomoce: Poradnik dla autorów quizów ~~ Instrukcja dla puszczających quizy



Praktyczny przykład użycia:

Przykładowe użycie skryptu jest już opisane w naszym poradniku, ale dla kompletności instrukcji zamieszczamy je i tutaj. Wpierw umieść skrypt w katalogu skryptów swojego irssi („~/.irssi/scripts”) wraz z plikiem z pytaniami, a następnie zaznajom się z jego obsługą:

  • Wgranie skryptu: /script load quiz.pl

  • Przeprowadzenie rozgrywki:

    1. Skrypt domyślnie uruchamia quizy typu Dizzy lub poprzednio puszczany rodzaj quizu. Polecenie /qon #QuizPL pytania.txt wczyta pytania z pliku i uruchomi quiz na kanale (nazwę kanału możesz pominąć, jeśli jest otwarty).

      Jeśli chcemy wybrać inny rodzaj quizu, to należy podać jako trzeci parametr jego nazwę (od tej pory możesz puszczać kolejne quizy tego samego typu używając skróconego polecenia podanego wcześniej):

      /qon #QuizPL pytania.txt Dizzy — quiz typu Dizzy
      /qon #QuizPL pytania.txt Mieszacz — quiz typu Mieszacz
      /qon #QuizPL pytania.txt Pomieszany — quiz typu Pomieszany
      /qon #QuizPL pytania.txt Familiada — quiz typu Familiada
      /qon #QuizPL pytania.txt Multi — quiz typu Multi (Familiada bez drużyn)

      W przypadku Familiady jest możliwość podania liczby drużyn jako kolejny parametr po nazwie quizu (od 2 do 5 drużyn, domyślnie są to 2 drużyny) np.:

      /qon #QuizPL pytania.txt Familiada 3 — quiz typu Familiada z trzema drużynami

      Alternatywnie można użyć także polecenia /qtype do wyboru rodzaju quizu, lecz jego używamy przed wywołaniem /qon.

    2. Jeśli wybrano quiz typu Familiada (drużynowa), to gracze mają teraz czas na wchodzenie do drużyn (polecenia kanałowe: !join 1, !join 2 itd.).

      • Aby wyświetlić graczom listę drużyn użyj polecenia: /qstats
      • Aby uruchomić Familiadę użyj ponownie polecenia: /qon
    3. Teraz gracze grają w quiz… :)

    4. Gdy quiz dobiegnie końca, wyświetl punktację graczy poleceniem: /qstats

    5. Na koniec quiz wyłączysz poleceniem: /qoff
  • Więcej poleceń wraz z ich opisem otrzymasz po wpisaniu: /quiz lub /help quiz

  • Usunięcie skryptu z irssi: /script unload quiz

    • Polecenia kanałowe dla graczy: !przyp, !podp, !ile, !ile nick

    • Polecenia kanałowe dla graczy (Familiada): !przyp, !ile, !ile nick, !join 1, !join 2 itd.

    • Polecenia kanałowe dla graczy (Multi): !przyp, !ile, !ile nick


Polecenia dla quizmastera:

Są to polecenia, z których skorzystać może osoba przeprowadzająca rozgrywkę quizową.

  • /quiz, /help quiz — wyświetlenie pomocy wbudowanej w skrypt i bieżącej konfiguracji,

  • /qtype — polecenie służące do wyboru aktywnego rodzaju quizu – wyboru należy dokonać przed uruchomieniem quizu (wczytaniem pliku z pytaniami),

    W chwili obecnej dostępne jest pięć trybów quizowych:

      1 — quiz typu Dizzy
      2 — quiz typu Mieszacz
      3 — quiz typu Familiada
      4 — quiz typu Multi (Familiada bez drużyn)
      5 — quiz typu Pomieszany
    Polecenia tego można używać na trzy sposoby:

    • wpisując je kilkukrotnie skrypt przełącza się na kolejny rodzaj quizu
    • podając wyżej podany numer wybieramy konkretny rodzaj quizu np. /qtype 5
    • podając wyżej podaną nazwę wybieramy konkretny rodzaj quizu np. /qtype mieszacz (wystarczają 3 pierwsze literki nazwy)
    W zależności od wybranego rodzaju quizu polecenie /quiz wyświetli tylko adekwatne dla niego dostępne polecenia i ustawienia.

  • /qteams ile — wybór liczby drużyn i należy go dokonać przed uruchomieniem quizu, można wybrać od 2 do 5 drużyn (tylko Familiada),

  • /qon kanał plik — wczytanie pliku z pytaniami i rozpoczęcie quizu,

    Jako parametry polecenia podajemy nazwę kanału i ścieżkę do pliku z pytaniami (jest tylko tryb autoquizu): /qon #kanał plik.txt. Jeśli mamy otwarte okno z kanałem, to jego nazwę możemy nawet opuścić, podając samą ścieżkę: /qon plik.txt.

    W poleceniu możemy od razu podać też rodzaj quizu, który zamierzamy puścić, w sposób identyczny jak przy /qtype, czyli poprzez jego nazwę lub numer np. /qon #kanał plik.txt dizzy lub /qon #kanał plik.txt 1. Od tego czasu każdy kolejny quiz także będzie tego rodzaju.

    Jeśli zamierzamy puścić Familiadę, to jako kolejny argument możemy ewentualnie również podać liczbę drużyn (2-5) np. /qon #kanał plik.txt familiada 4. Jeśli podamy liczbę drużyn (2-5) przy quizie Multi, to skrypt przełączy się na Familiadę. Jeśli podamy przy Familiadzie liczbę drużyn równą 0 lub 1, to skrypt przełączy się na Multi.

    Jeśli wybranym rodzajem quizu jest Familiada, to po uruchomieniu jej powyższym poleceniem skrypt nie startuje od razu z pytaniami. Przechodzi on w tryb oczekiwania i w tym czasie gracze mogę wchodzić spokojnie do drużyn. Gdy jesteśmy już gotowi, to aby faktycznie rozpocząć zadawanie pytań należy wydać ponownie polecenie /qon (bez parametrów).

    Skrypt akceptuje pliki w formacie Dizzy (także bez prefiksów „pyt ”/„odp ”), Mieszacza (także bez numeracji linii) oraz Familiady. W przypadku quizu typu Pomieszany używany jest format Dizzy, a dla Multi format Familiady. Pliki z pytaniami są do pewnego stopnia poprawiane podczas wczytywania (np. błędna numeracja linii, „pty”/„opd”, spacje wokół „×”, nadmiarowe spacje lub tabulatory). Jedyną funkcjonalną różnicą w stosunku do oryginalnych skryptów jest to, że identyczne odpowiedzi w Familiadzie/Multi nie są obsługiwane.

  • /qdelay sekundy — ustawienie opóźnienia między pytaniami,

  • /qtime sekundy — ustawienie czasu trwania rundy (tylko Familiada/Multi),

  • /qhint — wymuszone wyświetlenie kolejnej podpowiedzi, nawet jeśli nie można jej już uzyskać poleceniem kanałowym !przyp z uwagi na limity podpowiedzi (nie w Familiadzie/Multi),

  • /qremind — wymuszone wyświetlenie przypomnienia pytania i ewentualne przemieszanie liter w Mieszaczu/Pomieszanym,

  • /qskip — pominięcie pytania i przejście do następnego,

  • /qpause — zapauzowanie/odpauzowanie quizu, wpisanie podczas trwania pytania spowoduje pauzę dopiero po udzieleniu odpowiedzi przez graczy (w tym czasie można też anulować pauzę),

  • /qignore — dodanie lub usunięcie gracza z listy ignorowanych (ignorowanie po „ident@host”),

  • /qstats, /qstats ile — wyświetlenie rankingu graczy,

    Jeśli podano parametr, to wyświetla tylko tylu graczy, np. 3 osoby, aby nie robić floodu podczas quizu i nie powodować lagów. W przypadku Familiady polecenie /qstats 0 podczas trwania quizu wyświetli wyłącznie listę drużyn, zaś w trybie oczekiwania pomiędzy startem, a rozpoczęciem zadawania pytań parametr „0” można pominąć.

    Polecenia tego możemy użyć nawet jeśli zakończyliśmy quiz poleceniem /qoff, gdyż punkty są kasowane przy starcie (chyba że używamy quiz_keep_scores).

    Jeśli polecenie wywołano bez parametru (czyli zwykle na koniec quizu), to wyświetlone zostaną także dwie linijki z piątką najlepszych graczy pod względem czasu i znaków/sekundę.

  • /qoff — zakończenie lub przerwanie quizu i wyświetlenie czasu jego trwania,

  • /qreload — ponowne wczytanie pliku z pytaniami np. w razie wykrycia poważnej literówki (w przypadku problemów z poprawnym wczytaniem pliku quiz zostanie przerwany),

  • /qinit — zresetowanie ustawień skryptu do wartości początkowych (jeśli namieszaliśmy).


Polecenia kanałowe dostępne dla graczy:

Z poleceń tych mogą skorzystać gracze podczas trwania quizu. Nie wszystkie polecenia są dostępne dla każdego rodzaju quizu. Polecenia do przypominania pytania i wyświetlania podpowiedzi chronione są przed nadużywaniem (floodem).

  • !join 1, !join 2 itd. — wejście przez zawodnika do drużyny lub jej zmiana (tylko Familiada),

  • !podp — wyświetlenie podpowiedzi (niedostępne w Familiadzie/Multi),

  • !przyp, !pyt — przypomnienie pytania (i ewentualne przemieszanie liter w Mieszaczu/Pomieszanym),

  • !ile, !ile nick — wyświetlenie punktacji naszej lub podanego nicka.


Ustawienia skryptu:

Listę ustawień (zależną od wybranego rodzaju quizu) wraz z bieżącymi ich wartościami możemy wyświetlić poleceniem /quiz lub /help quiz. Ustawienia są do pewnego stopnia chronione przed używaniem ich „głupich” wartości. Zmiany ustawień dokonujemy poleceniem /set. W nawiasie podane są początkowe wartości, w nawiasie kwadratowym podany może być zakres poprawnych wartości.

Ponadto osoba puszczająca quiz może za pomocą polecenia /format dokonać pełnej zmiany komunikatów, które pojawiają się na ekranie, w celu zmiany np. kolorystyki, ich treści, przetłumaczenia na inny język itp. Wszelkie zmiany tak dokonywane są natychmiast widoczne.

  • quiz_type (1) [1-5] — rodzaj quizu, który zostanie uruchomiony, dostępne jest pięć trybów quizowych:

      1 — quiz typu Dizzy
      2 — quiz typu Mieszacz
      3 — quiz typu Familiada
      4 — quiz typu Multi (Familiada bez drużyn)
      5 — quiz typu Pomieszany
    W zależności od wybranego rodzaju quizu polecenie /quiz wyświetli adekwatne dla niego dostępne polecenia i ustawienia.

  • quiz_teams (2) [2-5] — liczba drużyn (tylko Familiada)
  • quiz_delay (10) — opóźnienie pomiędzy pytaniami (sekundy)
  • quiz_delay_long (20) — opóźnienie pomiędzy pytaniami (sekundy; tylko Familiada/Multi)
  • quiz_timeout (90) — czas trwania rundy w sekundach (sekundy; tylko Familiada/Multi)
  • quiz_max_hints (0) — limitowanie ilości podpowiedzi (nie dla Familiady/Multi):

    • quiz_max_hints = 0 — brak limitu (ilekroć gracze wpiszą !podp, to pojawi się podpowiedź, o ile nie zablokowana przez quiz_cmd_hint)
    • quiz_max_hints > 0 — maksymalna liczba podpowiedzi, potem nie będą się już pojawiać, ale polecenie quizmastera /qhint wymusi wyświetlenie kolejnej
    • quiz_max_hints < 0 — podobnie jak wyżej, ale limitem jest podana liczba znaków, które mają pozostać ukryte w podpowiedzi (jeśli chcemy, by zawsze pozostawało do 2 nieodsłoniętych znaków, to podajemy -2; uwaga: chodzi o najdłuższy z wyrazów!)
  • quiz_hint_alpha (.) — znak wstawiany w podpowiedziach w miejsce literek
  • quiz_hint_digit (.) — znak wstawiany w podpowiedziach w miejsce cyferek
  • quiz_words_case (0) [0-3] — styl prezentowania literek wyrazów (tylko Mieszacz/Pomieszany)

      0 — literki pozostają bez zmian (tak jak w pliku)
      1 — zmienia na małe literki np. „laym erowr”
      2 — zmienia na DUŻE literki np. „LAYM EROWR”
      3 — pierwsze litery wyrazów są zmieniane na Kapitaliki przed ich pomieszaniem np. „layM eRowr”
  • quiz_autohinter (nie) — czy skrypt ma wyświetlać automatyczne podpowiedzi? użycie na kanale !podp resetuje timer
  • quiz_hints_interval (10) — co ile sekund kolejna automatyczna podpowiedź?
  • quiz_anticheat_delay (3) — ochrona przed nadużywaniem !podp/!przyp (sekundy; 0: wyłączone)
  • quiz_first_anticheat_delay (7) — blokada !podp/!przyp tuż po wyświetleniu pytania, by gracze za szybko ich nie użyli (sekundy; 0: wyłączone)
  • quiz_points_per_answer (1) — punkty przyznawane za odpowiedź
  • quiz_bonus_answer (nie) — czy akceptować także drugą najszybszą odpowiedź?
  • quiz_points_per_bonus (1) — punkty przyznawane za drugą najszybszą odpowiedź
  • quiz_min_points (1) — punkty minimalne (tylko Familiada/Multi)
  • quiz_max_points (50) — punkty maksymalne (tylko Familiada/Multi)
  • quiz_scoring_mode (4) [1-7] - metoda punktowania odpowiedzi (tylko Familiada/Multi)

    Progresywny sposób punktowania odpowiedzi jest kompatybilny z tym w oryginalnym skrypcie, przy czym iQuiz nie posiada limitu obsługiwanych odpowiedzi. Sposób ten polega na tym, że pierwsza odpowiedź jest najbardziej punktowana (tam 50), a dla kolejnych punktacja maleje (tam co 5, aż do 5 punktów za ostatnią, bo maksymalnie może być 10 odpowiedzi w oryginalnej Familiadzie). iQuiz zachowuje ten porządek, aczkolwiek wprowadza nowe modele punktowania do wyboru:

      1 — [ppa] — każda odpowiedź warta jest tyle samo: quiz_points_per_answer, niezależnie od ich ilości
      2 — [ppa++] — punktacja zmienia się zgodnie z pozycją odpowiedzi co quiz_points_per_answer punktów, przykładowo:

      • quiz_points_per_answer = 1, przy 5 odpowiedziach będą one punktowane kolejno: 5, 4, 3, 2, 1
      • quiz_points_per_answer = 3, przy 5 odpowiedziach będą one punktowane kolejno: 15, 12, 9, 6, 3
      3 — [ppa++:max] — identycznie jak tryb „2”, lecz obowiązuje górna granica w postaci quiz_max_points punktów, przykładowo:

      • quiz_points_per_answer = 3, quiz_max_points = 10, przy 5 odpowiedziach będą one punktowane kolejno: 10, 10, 9, 6, 3
      4 — [min++ppa] — podobne jak tryb „2”, ale punktacja startuje od quiz_min_points i zwiększa się co quiz_points_per_answer, przykładowo:

      • quiz_min_points = 5, quiz_points_per_answer = 2, przy 5 odpowiedziach będą one punktowane kolejno: 13, 11, 9, 7, 5
      • quiz_min_points = 1, quiz_points_per_answer = 1, przy 5 odpowiedziach będą one punktowane kolejno: 5, 4, 3, 2, 1 (w tym trybie i przy takich ustawieniach pracuje domyślnie iQuiz)
      5 — [min++ppa:max] — identycznie jak tryb „4”, lecz obowiązuje górna granica w postaci quiz_max_points punktów, przykładowo:

      • quiz_min_points = 5, quiz_max_points = 10, quiz_points_per_answer = 2, przy 5 odpowiedziach będą one punktowane kolejno: 10, 10, 9, 7, 5
      6 — [max--ppa:min] — podobne jak tryb „3”, ale punktacja startuje od quiz_max_points i zmniejsza się co quiz_points_per_answer, jednak z uwagi na nieograniczoną ilość odpowiedzi punktacja musi być modyfikowana tak, by nie zeszła poniżej jednego punktu i tutaj za limit dolny używane jest quiz_min_points, przykładowo:

      • quiz_max_points = 10, quiz_min_points = 1, quiz_points_per_answer = 2, przy 5 odpowiedziach będą one punktowane kolejno: 10, 8, 6, 4, 2
      • quiz_max_points = 6, quiz_min_points = 1, quiz_points_per_answer = 2, przy 5 odpowiedziach będą one punktowane kolejno: 6, 4, 2, 1, 1
      • quiz_max_points = 50, quiz_min_points = 5, quiz_points_per_answer = 5, przy 5 odpowiedziach będą one punktowane kolejno: 50, 45, 40, 35, 30 (przy takich ustawieniach pracuje oryginalna Familiada do wersji 0.7, nie używa jedynie wartości minimalnej, bo może być do 10 odpowiedzi maksymalnie)
      7 — [max->min] — punktacja niezależnie od ilości odpowiedzi zawiera się między quiz_max_points a quiz_min_points, zaś odpowiedzi środkowe punktowane są proporcjonalnie, przykładowo:
      • quiz_min_points = 1, quiz_max_points = 12, przy 5 odpowiedziach będą one punktowane kolejno: 12, 9, 7, 4, 1
      • quiz_min_points = 5, quiz_max_points = 50, przy 5 odpowiedziach będą one punktowane kolejno: 50, 39, 28, 16, 5 (przy takich ustawieniach pracuje oryginalna Familiada od wersji 0.7)
    Pamiętajcie proszę (bo wielu autorów quizów to ignoruje) — kolejność odpowiedzi ma znaczenie! Początkowe odpowiedzi są punktowane najwyżej.

  • quiz_ranking_type (3) [1-3] — sposobu prezentowania rankingu graczy (Wikipedia):

      1 — zwykły „1234” – pod uwagę brany jest czas zdobycia punktów: kto później zremisował, ten będzie niżej (zwykle używane w premierach quizowych)

        1. piotrek - 10 punktów
        2. adam - 7 punktów
        3. stefan - 7 punktów
        4. jacek - 5 punktów
      2 — zwarty „1223” – remisy razem, ale nie przeskakujemy pozycji (używana w wynikach na forum)

        1. piotrek - 10 punktów
        2. adam - 7 punktów
        2. stefan - 7 punktów
        3. jacek - 5 punktów
      3 — turniejowy „1224” – remisy razem, ale przeskakujemy pozycję o ilość remisujących (używana w nowych Milionerach i domyślnie w iQuizie)

        1. piotrek - 10 punktów
        2. adam - 7 punktów
        2. stefan - 7 punktów
        4. jacek - 5 punktów
  • quiz_antigoogler (tak) — czy używać antygooglera do ochrony pytań przed kopiowaniem ich do np. Google?

    Antygoogler jest niewidoczny dla graczy, ale bardzo utrudnia wyszukiwanie treści pytań w wyszukiwarkach. Powoduje on jednak wydłużanie pytań, co przy dłuższej ich treści może prowadzić do ich ucinania lub dzielenia na kilka linii. Sposób jego działania jest zoptymalizowany tak, aby długie pytania były równie ładnie dzielone na ekranie monitora, co zwykłe wypowiedzi.

  • quiz_asciize (tak) — czy zamieniać polskie znaki diakrytyczne (np. „ą”, „ę”) na litery ASCII (np. „a”, „e”) przez sprawdzeniem odpowiedzi graczy?
  • quiz_split_long_lines (tak) — czy dzielić długie pytania na kilka linii?

    Choć to bardzo niewskazane, to czasem autorzy układają długą treść pytań, a dodatkowo antygoogler ją także wydłuża. Limit znaków na IRC-u na linię jest stały (512) i po jego przekroczeniu wiadomości są ucinane. Aby temu zapobiec powyższe ustawienie pozwala na podzielenie zbyt długich pytań, także tych z antygooglerem, tak aby nie powstawały brzydkie wizualne artefakty. Nowsze wersje irssi potrafią robić to same (podobnie jak mIRC), ale one tylko łamią wypowiedzi, bez zwracania uwagi na kolory, przez co powstawać mogą usterki w wyświetlanych pytaniach.

  • quiz_show_first_hint (nie) — czy pokazywać pierwszą podpowiedź razem z pytaniem? (nie dla Familiady/Multi)
  • quiz_first_hint_dots (nie) — czy pierwsza podpowiedź to tylko same kropki? (nie dla Familiady/Multi)
  • quiz_random_hints (tak) — czy litery w podpowiedzi odsłaniane mają być losowo? albo od lewej do prawej jak w Dizzy (nie dla Familiady/Multi)
  • quiz_nonrandom_first_hint (tak) — czy w pierwszej podpowiedzi odsłonić zawsze pierwsze litery każdego z wyrazów zamiast losowych? (nie dla Familiady/Multi)
  • quiz_words_mode (tak) — czy mieszając pozostawić podział na wyrazy? (tylko Mieszacz, bo Pomieszany zawsze dzieli na wyrazy)

    • tak — litery każdego z wyrazów mieszane są osobno
    • nie — litery wszystkich wyrazów pomieszane są razem
  • quiz_smart_mix (tak) — czy podczas mieszania kotwiczyć niektóre znaki? (tylko Pomieszany)

    Tryb ten pozwala na „przyspawanie” w miejscu cyfr oraz znaków specjalnych takich jak
    ()",.;:?!
    i nie będą one zmieniały położenia w trakcie mieszania literek. Dzięki temu np. daty czy cudzysłowy tytułów pozostaną w miejscu, choć może to ułatwić odgadywanie. Myślniki czy apostrofy będą jednak „pływały”. Znaki te można ustawić w quiz_smart_mix_chars.

    Niezależnie od tego ustawienia skrypt stara się zawsze, by rozsypanka literek w miarę możliwości nie tworzyła oryginalnego słowa. Przy czym dwuliterówki mieszane są tylko raz, by nie były zawsze odwrócone.

  • quiz_smart_mix_chars (\d()",.;:?!) — znaki uznawane za kotwiczone przy quiz_smart_mix (składnia wyrażeń regularnych)
  • quiz_mix_on_remind (tak) — czy mieszać ponownie literki przy każdym !przyp? (tylko Mieszacz/Pomieszany)
  • quiz_strict_match (tak) — czy odpowiedzi na sztywno? albo używać dopasowania (nie dla Familiady/Multi)

    • tak — odpowiedź musi być dosłowna: odpowiedź gracza „wielki drewniany most” nie zostanie uznana, jeśli odpowiedzią na pytanie jest „drewniany”
    • nie — odpowiedź jest dopasowywana: odpowiedź gracza „wielki drewniany most” zostanie zaliczona, jeśli odpowiedzią na pytanie jest „drewniany” (tak jak w Dizzy)
  • quiz_join_anytime (tak) — czy gracze mogą dołączać i zmieniać drużynę w dowolnej chwili? (tylko Familiada)

    • tak — gracze mogą wchodzić do drużyn i je zmieniać w dowolnej chwili
    • nie — gracze mogą wchodzić do drużyn i je zmieniać wyłącznie w czasie od uruchomienia quizu do chwili rozpoczęcia zadawania pytań
  • quiz_team_play (tak) — czy grać mogą tylko gracze z drużyn? (tylko Familiada)

    • tak — odpowiedzi zaliczane są tylko członkom drużyn
    • nie — odpowiadać może dowolna osoba i skrypt działa podobnie jak Multi, ale z drużynami
  • quiz_transfer_points (nie) — czy wraz ze zmianą drużyny przez gracza transferować jego punkty zdobyte na koncie całej drużyny? (tylko Familiada)
  • quiz_limiter (nie) — czy limitować graczy do 50%+1 punktów? (nie dla Familiady/Multi)

    Opcja ta ogranicza nieliczne przypadki, w których wyjątkowo dobry gracz mógłby zdominować quiz zgarniając wszystkie odpowiedzi dla siebie i zniechęcić tym innych graczy do zabawy. Po jej włączeniu może on zdobyć tylko decydującą przewagę, a jego kolejne odpowiedzi są ignorowane. Korzystając z tej opcji wypada o tym uprzedzić wcześniej graczy, by nie było nieporozumień.

  • quiz_keep_scores (nie) — czy zachowywać punkty graczy pomiędzy kolejnymi quizami?

    Opcja ta pozwala przeprowadzić serię różnych quizów np. turniej, zaś punkty graczy będą sumowane ze wszystkich quizów.

  • quiz_keep_teams (tak) — czy wraz z zachowywaniem punktów pomiędzy kolejnymi quizami także pamiętać kto grał w której drużynie? w przeciwnym razie zostaną odpisani z drużyn
  • quiz_cmd_hint (tak) — czy polecenie !podp jest dostępne dla graczy?
  • quiz_cmd_remind (tak) — czy polecenie !przyp jest dostępne dla graczy?
  • quiz_lang (pl) — wybór wersji językowej skryptu, obecnie dostępne są „pl” i „en”


Wewnętrzne ustawienia skryptu:

Skrypt udostępnia także zaawansowane lub eksperymentalne wewnętrzne ustawienia, które możemy zmodyfikować tylko poprzez edycję kodu skryptu. Niektóre z tych ustawień mogą być tymczasowe, np. tylko w danej wersji. Poniżej objaśniona jest ich istotniejsza część.

  • $_start_delay (5000) — po uruchomieniu (/qon) skrypt oczekuje tyle milisekund przed wyświetleniem pierwszego pytania (milisekundy) - daje czas na przygotowanie się do odpowiadania
  • $_bonus_delay (1000) — czas oczekiwania na bonusową, drugą najszybszą odpowiedź (milisekundy)
  • $_max_teams (5) — podstawowa mIRC-owa Familiada oferuje tylko 2 drużyny, iQuiz może pozwolić na założenie dowolnej ilości drużyn, ale ustawienie to limituje ich liczbę do rozsądnych granic, choć praktycznie i tak zwykle tylko dwie drużyny są używane
  • $_shuffle_watchdog (10) — ile razy maksymalnie próbować ponownie mieszać wyraz, aby nie wyszedł taki sam jak początkowy
  • $_shuffle_threshold (3) — wyrazy krótsze niż ta wartość są mieszane tylko raz (by nie wyglądało dziwnie, że dwuliterówki są zawsze odwrócone)
  • $_randomized_antigoogler (nie) — czy używać antygooglera z urozmaiconymi kodami kolorów?

    Parametr ten jednak domyślnie wyłączyłem. Utrudnia on „zdejmowanie” antygooglera dodając rozmaite wariacje, ale wydłuża znacznie długość pytania. Przewaga wad tego rozwiązania (za długie pytania) nad faktyczną ilością quizowych oszuścików powoduje, że jest domyślnie wyłączone.

  • $_smarter_antigoogler (tak) — czy używać „inteligentniejszego” antygooglera? polega on na przepuszczaniu niektórych spacji, by pytanie dobrze „łamało” się na ekranie
  • $_smarter_antigoogler_chunk (2) — co ile podstawionych antygooglerów pozostawić przerwę?
  • $_protect_urls (tak) — czy wyłączać antygoogler (o ile włączony), gdy wykryty zostanie link w treści pytania (dzięki temu można go kliknąć w niektórych klientach IRC)?
  • $_round_warn_time (10) — na ile sekund przed końcem czasu w Familiadzie/Multi wyświetlić powiadomienie? (sekundy; 0: wyłączone)
  • $_round_warn_coeff (1.5) — aby niepotrzebnie nie wyświetlać ostrzeżenia przy krótkich czasach zbliżonych do powyższej wartości, to quiz_timeout > $_round_warn_time * $_round_warn_coeff
  • $_qstats_ranks (nie) — sposób traktowania parametru dla /qstats:

    • nie — parametr to ilość graczy
    • tak — parametr to miejsce rankingowe (czyli zależy od przyjętego modelu – „1224” itd.)
  • $_qstats_records (5) — ilość rekordzistów czasu i zn/s w listach na końcu /qstats
  • $_no_hints_spam (tak) — czy blokować pokazywanie w pełni odsłoniętych podpowiedzi? jest to szczególnie przydatne, gdy używamy automatycznych podpowiedzi

    • nie — każde użycie !podp oraz automat zawsze wyświetlą podpowiedź, nawet jeśli jest już odsłonięta
    • tak — po odsłonięciu w pełni odpowiedzi (w podpowiedzi) kolejne już nie będą się pojawiały (ale polecenie /qhint zawsze zadziała)
  • $_flex_separator (/) — separator odmian (fleksji) w formatach typu „punkt/punktow/punkty”
  • $_team_separator (, ) — separator nicków na liście drużyn


Jeśli brakuje Ci jakiejkolwiek funkcji w skrypcie lub też zauważysz błędne jego działanie - napisz o tym na forum kanałowym lub wyślij mi wiadomość.