I use this for uptime (credit to Nillen, I just changed minor things). You can delete the first 3 lines if you don't want flood protection. Usage: "!uptime" or "!uptime <Streamer Name>"
on *:text:!uptime*:#:{
if ((%flooduptime) || ($($+(%,flooduptime.,$nick),2))) { return }
set -u5 %flooduptime On
set -u10 %flooduptime. $+ $nick On
if (!$2) { set %target $remove($chan,$chr(35))
else set %target $iif($2,$2,$mid(#,2-))
set %channel #
uptime
}
alias uptime {
sockclose uptime
sockopen uptime nightdev.com 80
}
on *:sockopen:uptime:{
if ($sockerr) { sockclose $sockname | halt }
sockwrite -n $sockname GET /hosted/uptime.php?channel= $+ %target HTTP/1.1
sockwrite -n $sockname Host: www.nightdev.com
sockwrite -n $sockname $crlf
}
on *:sockread:uptime:{
if ($sockerr) { sockclose $sockname | halt }
var %data
sockread %data
tokenize 32 %data
if ($1 isnum) && ($2) { msg %channel %target has been online for $1- }
elseif (%data == The channel is not live.) msg %channel %target is currently not online.
}
on *:sockclose:uptime:{
unset %channel
unset %target
}
Twitch emotes are just plain text in mIRC, so no need for anything crazy. There are probably better ways of doing it, but this is what I came up with. It times people out for using 5 or more emotes. I only listed a few of the emotes, you will need to add the rest
on *:LOAD:{
/set %Bannword Kappa FrankerZ DansGame
}
ON @*:TEXT:*:#: {
if ($nick !isop #) {
set %Badword. [ $+ [ $nick ] ] 0
var %i = 0
while (%i < $numtok(%Bannword,32)) {
inc %i
var %current.word = $gettok(%Bannword,%i,32)
if ($regex($1-,/ $+ %current.word $+ /g) > 0 ) {
%Badword. [ $+ [ $nick ] ] = %Badword. [ $+ [ $nick ] ] + $regex($1-,/ $+ %current.word $+ /g)
if ( %Badword. [ $+ [ $nick ] ] >= 5 ) {
msg # Stop spamming emotes, $nick $+ !
msg # .timeout $nick 120
unset %Badword. [ $+ [ $nick ] ]
return
}
}
}
unset %Badword. [ $+ [ $nick ] ]
}