IRCLine.RU
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Внимание:
  • Чтобы войти на форум, Вам нужно ввести ник и пароль используемые Вами в сети IRCLine.RU
  • Зарегистрировать ник можно только в сети, пользуясь соответствующими сервисными командами
21.09.2021 08:45:31

Войти
5574 Сообщений в 762 Тем от 1004 Пользователей
Последний пользователь: seagull4ik
* Начало Помощь Войти
Форум IRCLine.RU  |  IRC  |  mIRC Скриптинг  |  Готовые скрипты  |  Тема: Статистика на бота « предыдущая тема следующая тема »
Страниц: [1] Печать
Автор Тема: Статистика на бота  (Прочитано 7282 раз)
*
Сообщений: 44
Offline Offline


Просмотр профиля
« : 10.07.2010 20:22:33 »

Скрипт ведёт статистику юзеров канала. Записывает сколько слов, сообщений, вопросов, смайлов, входов и выходов наблюдалось у пользователя за отчётный период и выводит всё это дело по команде !stat
Чтобы загрузить скрипт:
1)Киньте его в корень вашего mIRC бота
2)В любом окне mIRC напишите /load -rs stat.mrc
Код:
on *:text:*:#:{
  if ( $1 == !stat ) { if ( $2 == $null ) { .timer 1 1 msg $chan 12Статистика:7 $nick 10сказал4 $readini stat.ini $nick slov 10слов(а), отправил4 $readini stat.ini $nick say.msg 10сообщений(я),напечатал4 $readini stat.ini $nick sym 10букв, написал4 $readini stat.ini $nick smile 10смайла(ов), 10задал4 $readini stat.ini $nick vop 10вопроса(ов),4 $readini stat.ini $nick jn 10захода(ов) на канал. | halt } }
  var %sym $len($1-) | var %+sym $readini stat.ini $nick sym | var %=sym $calc(%sym + %+sym)
  writeini -n stat.ini $nick sym %=sym
  var %say.msg $readini stat.ini $nick say.msg | var %=say.msg $calc(%say.msg + 1)
  writeini -n stat.ini $nick say.msg %=say.msg
  var %prob $count($1-,$chr(32)) | var %=prob $calc(%prob + 1) | var %+prob $readini stat.ini $nick slov | var %=slov $calc(%=prob + %+prob)
  writeini -n stat.ini $nick slov %=slov
  var %smile $count($1-,$chr(58) $+ $chr(41),$chr(58) $+ $chr(40),$chr(45) $+ $chr(41),$chr(61) $+ $chr(41),$chr(61) $+ $chr(40),$chr(45) $+ $chr(40),$chr(61) $+ $chr(47),$chr(61) $+ $chr(92),$chr(37) $+ $chr(41),$chr(94) $+ $chr(41),$chr(198) $+ $chr(41)) | var %+smile $readini stat.ini $nick smile | var %=smile $calc(%smile + %+smile)
  writeini -n stat.ini $nick smile %=smile
  var %vop $count($1-,?) | var %+vop $readini stat.ini $nick vop | var %=vop $calc(%vop + %+vop)
  writeini -n stat.ini $nick vop %=vop
}
on *:JOIN:#:{
  var %jn 1 | var %+jn $readini stat.ini $nick jn | var %=jn $calc(%jn + %+jn)
  writeini -n stat.ini $nick jn %=jn
}
Записан

Администратор
*****
Сообщений: 677
Offline Offline


Просмотр профиля WWW
« Ответ #1 : 12.07.2010 11:37:39 »

Ведение статистики по нику неэффективно, т.к. у пользователя может быть несколько ников. Достаточно идентифицироваться на ник один раз и идентификация сохранится до отключения от сети независимо от текущего ника. Предлагаю переделать ведение статистики по зарегистрированному идентификатору (username без ~), такая статистика будет абсолютно достоверной, а для username с ~ выводить сообщение, что для незарегистиррованных идентификаторов статистика не ведётся или сбрасывать через некоторое время
Записан

На каждый вопрос должен быть ответ
:angel:
Страниц: [1] Печать 
Форум IRCLine.RU  |  IRC  |  mIRC Скриптинг  |  Готовые скрипты  |  Тема: Статистика на бота « предыдущая тема следующая тема »
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.8 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!