Victorina

From JaWiki (Jabber/XMPP wiki)
Jump to: navigation, search
Victorina
Информация
Сайт: http://jrudevels.org/index.php?pg=downloads.php&dir=Victorina
Язык: PHP
Библиотека: XMPPHP
Лицензия: GPL
Разработчик: JID: BFoot@Jabber.Tushino.com
Характеристики

Предупреждение: данная программа больше не поддерживается авторами и, скорее всего, не будет правильно функционировать на Вашей системе, где установлена относительно свежая версия PHP. Но попробовать запустить, наверное, стоит.

Бот (по прозвищу Дуралей) для проведения викторин в конференциях. Достаточно занимательное занятие, база вопросов прилагается.

Тем, кто пользовался когда-нибудь IRC, объяснять, что такое Викторина, не надо. Они или играли в неё, или хотя бы видели. Ещё её порой называют «буктопухой» (или «буквопухой»; от названия канала в руссиш-стайл — «BuKToPUHA»).

Для остальных небольшое пояснение: в чате последовательно появляются вопросы. Типа, «Дирижёр военного духового оркестра».

Цель играющего — опередив других, вбить слово «капельмейстер» и нажать Enter. Кто на большее количество вопросов ответил, тот и выиграл.

Игровой процесс

Игра сама ведет статистику (идентификация простая - на основе ника), сообщает кто какое место занимает. Помимо это сообщает всякую другую информацию, типа: кто быстрее всех отвечает (по времени), у кого больше подряд отвеченных вопросов (в щутерах вроде называется killling spree). Еще можно упомянуть о различных командах, которые можно отсылать боту или прямо в комнате писать. Вот теперь все то же самое что раньше для IRC, но для Jabber. И если для IRC обычно требовалось использовать загадочный язык Tcl, то тут привычный широким массам PHP.

Автора базы вопросов упомянуть нет возможности, к сожалению. База попала к нам без указания авторов. Она достаточно большая, но при этом откровенно идиотских вопросов (чем, порой, грешат викторины) не так много. В принципе ничего не мешает использовать свои базы вопросов. Для хранения вопросов использован текстовый файл с простой структурой.

Работающую викторину можно посмотреть тут: xmpp:victorina@conference.jabber.tushino.com (нужен установленный и настроенный Jabber-клиент). Может не работать на данный момент.

Доступные команды:

 !help 
помощь;
 !hint 
вывод подсказки на текущий вопрос викторины;
 !хинт 
синоним !hint;
 !list 
список игроков, которые зарегистрированы в базе игры
 !stat 
ваша статистика или игрока, указанного вами.

Для администратора сервера

С чем должен быть собран PHP: mhash, sockets, xml, pcntl, posix, iconv.

Запуск бота из консоли:

php -q bot.php

Остановка из Jabber: сообщение !kill со специального адреса (Jabber ID). JID'ы задаются в секции «admin settings» файла config.tt.php.