This is a version 2 of the script .stats but thi one will display your info in the channel. use this remote on youor bot.
here is an example
<@xplorer> .stats
<@Moderating> xplorer's Stats:(38 Line) (102 Words) (473 Letter) (1 Ban) (4 join) (0 Part) (0 Puff) (0 Kicked) (0 Kick)
<@xplorer> .stats BLaCKSuN <@Moderating> BLaCK
SuN's Stats:(48 Line) (185 Words) (835 Letter) (0 Ban) (2 join) (0 Part) (0 Puff) (1 Kicked) (0 Kick)
Enjoy and report any bugs (or suggestions) in here as a comment
#My info: xplorer@live.ca - irc.undernet.org - #mircscripting
on *:start:{ hmake counts 300 }
on *:kick:#:{
hinc counts $+($knick,kicked)$+ 1
hinc counts $+($nick,kicks)$+ 1
}
on *:quit:{
hinc counts $+($nick,quit)$+ 1
}
on *:join:#:{
hinc counts $+($nick,join)$+ 1
}
on *:part:#:{
hinc counts $+($nick,part)$+ 1
}
on *:topic:#:{
hinc counts $+($nick,topic)$+ 1
}
on *:action:*Toke*:#: {
hinc counts $+($nick,puff)$+ 1
describe $chan Hands you a puff <08080808080808080808084D15~~~~
}
on *:action:*:#:{
hinc counts $+($nick,action)$+ 1
}
on *:ban:#:{
hinc counts $+($bnick,banned)$+ 1
hinc counts $+($nick,bans)$+ 1
}
on *:text:*:#:{
if ($1 == .stats) {
if ($2) {
.msg $chan $2 $+ 's Stats:( $+ $hget(counts,$+($2,lines)$+) Line $+ ) ( $+ $hget(counts,$+($2,word)$+) Words $+ ) ( $+ $hget(counts,$+($2,length)$+) Letter $+ ) ( $+ $iif(!$hget(counts,$+($2,bans)$+),0,$hget(counts,$+($2,bans)$+)) Ban $+ ) ( $+ $iif(!$hget(counts,$+($2,join)$+),0,$hget(counts,$+($2,join)$+)) join $+ ) ( $+ $iif(!$hget(counts,$+($2,part)$+),0,$hget(counts,$+($2,Part)$+)) Part $+ ) ( $+ $iif(!$hget(counts,$+($2,puff)$+),0,$hget(counts,$+($2,puff)$+)) Tokes $+ ) ( $+ $iif(!$hget(counts,$+($2,kicked)$+),0,$hget(counts,$+($2,kicked)$+)) Kicked $+ ) ( $+ $iif(!$hget(counts,$+($2,kicks)$+),0,$hget(counts,$+($2,kicks)$+)) Kick $+ )
}
else {
.msg $chan $nick $+ 's Stats:( $+ $hget(counts,$+($nick,lines)$+) Line $+ ) ( $+ $hget(counts,$+($nick,word)$+) Words $+ ) ( $+ $hget(counts,$+($nick,length)$+) Letter $+ ) ( $+ $iif(!$hget(counts,$+($nick,bans)$+),0,$hget(counts,$+($nick,bans)$+)) Ban $+ ) ( $+ $iif(!$hget(counts,$+($nick,join)$+),0,$hget(counts,$+($nick,join)$+)) join $+ ) ( $+ $iif(!$hget(counts,$+($nick,part)$+),0,$hget(counts,$+($nick,Part)$+)) Part $+ ) ( $+ $iif(!$hget(counts,$+($nick,puff)$+),0,$hget(counts,$+($nick,puff)$+)) Tokes $+ ) ( $+ $iif(!$hget(counts,$+($nick,kicked)$+),0,$hget(counts,$+($nick,kicked)$+)) Kicked $+ ) ( $+ $iif(!$hget(counts,$+($nick,kicks)$+),0,$hget(counts,$+($nick,kicks)$+)) Kick $+ )
}
}
else {
hinc counts $+($nick,length)$+ $len($1-)
hinc counts $+($nick,word)$+ $numtok($1-,32)
hinc counts $+($nick,lines)$+ 1
}
}
You can eliminate the repetition of the counter for each event like so:
on *:quit:counter
on *:join:#:counter
on *:part:#:counter
on *:topic:#:counter
on *:action:*:#:counter
alias -l counter {
hinc -m counts $+($nick,$event)$+ 1
}
it's recommended that you add the -m switch just in case people install the script without restarting their mIRC.