netsplit detector

By |[Arkham]| on Jun 11, 2009

description: netsplit detector.
action: msg all channel that u were on.. announcing the split server.

this simple snippet work based on user`s quit messages. when it see quit message with the network name on 1st and 2nd text of the quit message this snippets will triggered. the user must be on the same channel that you were on so the snippets can "see" the quit message.
i add some colour text on the announcer msg. but it will auto strip into regular text depends on the channel mode.. since there is mode +c ( no colour) on some network.

on *:quit:{
  if ($network isin $1) && ($network isin $2) {
    var %c $chan(0)
     while (%c) {
      var %m 14,1 °15 S14erver 15S14plit 15D14etected 15B14etween: $1 15A14nd $2 14°
      msg $chan(%c) $iif(c isincs $chan(%c).mode, $strip(%m) , %m ) 
      dec %c
    }
  }
}

Comments

Sign in to comment.
LostTruths   -  Aug 31, 2010

i saw on undernet someone had a netsplit detector that picked up the split and auto jumped servers...was wondering if anyone could write a code to do so. if so someone send me a msg or if you hang out on undernet just hop by #GraveYard or look me up my nick is LostTruths

 Respond  
k0ji   -  Jun 16, 2009

@ |[Arkham]| : ok i try. terima kasih :D

 Respond  
|[Arkham]|   -  Jun 13, 2009

@k0ji: usually i use a separate group for this snippets.. so it only announcing once in a period of times.. here the example

#split on
on *:quit:{
  if ($network isin $1) && ($network isin $2) {
    var %c $chan(0)
     while (%c) {
      var %m 14,1 °15 S14erver 15S14plit 15D14etected 15B14etween: $1 15A14nd $2 14°
      msg $chan(%c) $iif(c isincs $chan(%c).mode, $strip(%m) , %m ) 
      dec %c
    }
    .disable #split | .timersplit 1 90 .enable #split
  }
}
#split end

as we see above i put a timer 90 sec interval. so this snippets only announcing split to all chans in 90 sec interval

 Respond  
k0ji   -  Jun 13, 2009

when detect split my bot flooding channel with msg split detect..

 Respond  
PuNkTuReD   -  Jun 13, 2009

oh ok sorry i misunderstood. lol.

 Respond  
|[Arkham]|   -  Jun 12, 2009

PunkTuReD: thats what im talking about.. since /amsg didnt specify target channell then we must use /msg in looping

 Respond  
PuNkTuReD   -  Jun 12, 2009

if u do wanna msg all why not use a loop, then you can still check channel modes.

 Respond  
|[Arkham]|   -  Jun 12, 2009

thanks but /.amsg didnt specify a target channel.. so the snippets cant checking the target channel mode.

 Respond  
WorldDMT   -  Jun 12, 2009

i'm WorldDMT not GMT :p

but u can also use amsg

 Respond  
|[Arkham]|   -  Jun 11, 2009

the idea is set -u0 but i think using local var is good idea too.. the "isincs" operator were a good idea too.. just figure it out here.. thank WorldGMT, ill fix it..

 Respond  
WorldDMT   -  Jun 11, 2009

hi

about set -u %m is set -uN but u can use var

var %m 14,1 °15 S14erver 15S .....

about "$iif(c isin $chan(%c).mode, $strip(%m) , %m )" must be isincs mabe chan is mode C

$iif(c isincs $chan(%c).mode,$strip(%m),%m)

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.