Code:
on me:*:JOIN:#channelhere:.timerAV. $+ $chan 0 10 autovoice $chan
on me:*:PART:#ChannelHere:.timerAV. $+ chan off
on @*:TEXT:*:#ChannelHere:{
  if (($nick isreg $chan) && ($len($1-) >= 15)) mode $chan +v $nick 
}
alias autovoice {
  if ($me !isop $1) return
  var %x = $nick($1,0), %idlers
  while (%x) {
    if (($nick($1,%x).idle >= 1200) && ($nick($1,%x) isvoice $1)) {
      var %idlers = %idlers $nick($1,%x)
      if ($numtok(%idlers,32) == $modespl) {
        mode $1 $+(-,$str(v,$numtok(%idlers,32)) %idlers
        var %idlers
      }
    }
    dec %x
  }
  if (%idlers) mode $1 $+(-,$str(v,$numtok(%idlers,32)) %idlers
}


Yes, you will devoice yourself if you're idle too long :tongue: Luckily you're op, so noone will see that + anyways smile


I included something to queue those modes so that you can get one combined
* me sets mode -vvvv idler1 idler2 idler3 idler4
instead of 4 single modes. Makes it less likely to get flooded too...

ps: upgrade mIRC to version 6.16, makes it a lot more fun to script with $v1 and $v2 smile