Am on a channel of over 1000ppl at the moment, and if my "other nicks" script hasn't had a problem then your's shouldn't

try using a hashtable, clear out old data, update with new data constantly

Here's an example(I haven't tested it):
Code:
alias hidejoins %hide.channels = $addtok(%hide.channels,$1,44)
alias unhidejoins %hide.channels = $remtok(%hide.channels,$1,0,44)
alias listjoins echo -a * Hiding join/parts on: %hide.channels

on *:TEXT:*:%hide.channels:{
  hadd -mu3600 $+(hc,$cid,:,$chan) $nick spoke
}
on *:ACTION:*:%hide.channels:{
  hadd -mu3600 $+(hd,$cid,:,$chan) $Nick spoke
}
on *:NOTICE:*:%hide.channels:{
  hadd -mu3600 $+(hd,$cid,:,$chan) $nick spoke
}
on ^*:PART:%hide.channels:{
  if ($nick == $me) { if ($hget($+(hd,$cid,:,$chan))) { hfree $v1 } }
  elseif ($hget($+(hd,$cid,:,$chan),$nick)) { hdel $+(hd,$cid,:,$chan) $nick }
  else { haltdef }
}
on *:DISCONNECT:{
  var %x = 1
  while ($hget(%x)) {
    if ($+(hd,$cid,:,*) iswm $v1) { hfree $v2 } 
    else { inc %x }
  }
}
on ^!*:QUIT:{
  var %x = 1, %c, %halt = $true
  while ($gettok(%hide.channels,%x,44)) {
    %c = $v1
    if ($nick ison %c && $hget($+(hd,$cid,:,%c),$Nick)) { 
      hdel $+(hd,$cid,:,%c) $nick 
      %halt = $false
    }
    inc %x
  }
  if (%halt) { haltdef }
}

Last edited by FroggieDaFrog; 20/01/11 08:44 AM.