egghelp.org community Forum Index
[ egghelp.org home | forum home ]
egghelp.org community
Discussion of eggdrop bots, shell accounts and tcl scripts.
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

clone kicker
Goto page 1, 2  Next
 
Post new topic   Reply to topic    egghelp.org community Forum Index -> Script Requests
View previous topic :: View next topic  
Author Message
simo
Master


Joined: 22 Mar 2015
Posts: 330

PostPosted: Wed Mar 13, 2019 12:04 pm    Post subject: clone kicker Reply with quote

i was fidling with this tcl made by spike caesar wich in the case of multiple clones joining ending up storing same nicks over and over even after they are kicked out

Quote:

17:04:07   Join :   Carlin   ~Seal@same.host.net
17:04:07   Join :   Roman   ~Francis@same.host.net
17:04:07   Join :   Hardison   ~Joe@same.host.net
17:04:07   Join :   Burkett   ~Felix@same.host.net
17:04:07   Join :   Mauro   ~Muhammad@same.host.net
17:04:07   Join :   Ghislaine   ~Matthews@same.host.net
17:04:07   Join :   Butterfield   ~Forman@same.host.net
17:04:07   Join :   Morley   ~Heck@same.host.net
17:04:07   Join :   Clary   ~Cassey@same.host.net
17:04:07   Join :   Moya   ~Banuelos@same.host.net
17:04:07 (@TCL-Tester) : +b *!*@same.host.net
17:04:07 @TCL-Tester Sets Mode on #tcl-test to: +b *!*@same.host.net
17:04:07 (10 Users) Are Banned Burkett Butterfield Carlin Clary Ghislaine Hardison Mauro Morley Moya Roman
17:04:07 (@TCL-Tester) : Carlin,Roman,Hardison Clones Are Not Allowed 120 Sec Ban ...!!!
17:04:08 Carlin Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
17:04:08 Roman Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
17:04:08 Hardison Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
17:04:08 (@TCL-Tester) : +b *!*@same.host.net
17:04:08 (@TCL-Tester) : Carlin,Roman,Hardison,Burkett Clones Are Not Allowed 120 Sec Ban ...!!!
17:04:08 Burkett Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
17:04:08 (@TCL-Tester) : +b *!*@same.host.net
17:04:09 (@TCL-Tester) : Carlin,Roman,Hardison,Burkett,Mauro Clones Are Not Allowed 120 Sec Ban ...!!!
17:04:10 Mauro Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
17:04:11 (@TCL-Tester) : +b *!*@same.host.net
17:04:13 (@TCL-Tester) : Carlin,Roman,Hardison,Burkett,Mauro,Ghislaine Clones Are Not Allowed 120 Sec Ban ...!!!
17:04:14 Ghislaine Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
17:04:15 (@TCL-Tester) : +b *!*@same.host.net
17:04:17 (@TCL-Tester) : Carlin,Roman,Hardison,Burkett,Mauro,Ghislaine,Butterfield Clones Are Not Allowed 120 Sec Ban ...!!!
17:04:18 Butterfield Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
17:04:19 (@TCL-Tester) : +b *!*@same.host.net
17:04:21 (@TCL-Tester) : Carlin,Roman,Hardison,Burkett,Mauro,Ghislaine,Butterfield,Morley Clones Are Not Allowed 120 Sec Ban ...!!!
17:04:22 Morley Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
17:04:23 (@TCL-Tester) : +b *!*@same.host.net
17:04:25 (@TCL-Tester) : Carlin,Roman,Hardison,Burkett,Mauro,Ghislaine,Butterfield,Morley,Clary Clones Are Not Allowed 120 Sec Ban ...!!!
17:04:26 Clary Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
17:04:27 (@TCL-Tester) : +b *!*@same.host.net
17:04:29 (@TCL-Tester) : Carlin,Roman,Hardison,Burkett,Mauro,Ghislaine,Butterfield,Morley,Clary,Moya Clones Are Not Allowed 120 Sec Ban ...!!!
17:04:30 Moya Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )



ideally it would remove each kicked nick out of the stored nicks and kick with stacked kicks / bans in manner of kick nick,nick,nick,nick,nick, wich in many ircds results in quicker kicks as some ircds provide the multi kick per kick command ( dalnet 4 , unreal4 4 , inspircd 20 )

it would also help to halt quicker the joining of clones to lock channel with +RM and unset with timer after max clone threshold, then to start kicking and setting modes after having channel locked wich would give eggdrop time to prioritize and possibly prevent disconnect with excess flood message

stacking banmasks in the case of multiple joins per clone IP would be effiecient as well rather than setting each seperate

used this code with debug msg to channel

Code:

## DeClone v0.3 ##

# Set the next line as the kick msg you want to say
set clone_msg "10Clones Are Not Allowed 120 Sec Ban ...!!!"
# Set the next line as the number of clones to scan for
set clone_max 3
# Set the next line as the channels you want to run in (* = allchannels)
set clone_chans "#tcl-test"

# Set ban time (in seconds)
set clone_bantime 120

# Exempt +o users from this script ??
#  0 = No, do not exempt users with +o
#  1 = Yes, exempt users with +o
#  2 = Yes, also exempt users with +v
set clone_exemptops 1

# Set exempt users by standard "nick!user@host" mask ??
# If you do not have any mask to exempt: set clone_exemptmask {}
set clone_exemptmask {
*!*@DALnet
*!*@*.users.quakenet.org
*!*@*.irccloud.com
}
###########  End Settings  ###########

bind join - * join_clone

proc join_clone {nick uhost hand chan} {
 global clone_msg clone_max clone_chans clone_exemptops
 if {$clone_chans ne "*" && [lsearch -nocase $clone_chans $chan] == -1} { return }
 if {[isbotnick $nick] || ![botisop $chan] || [matchattr $hand bm|m $chan]} { return }
 if {[llength $::clone_exemptmask]} {
   foreach mask $::clone_exemptmask {
     if {[string match -nocase $mask $nick!$uhost]} {  return  }
   }
 }
 set host [lindex [split $uhost @] 1]
 set clonelist ""

 foreach user [chanlist $chan] {
   if {[string equal -nocase [lindex [split [getchanhost $user $chan] @] 1] $host]} {
     set hn [nick2hand $user $chan]
     if {$clone_exemptops>0 && ([isop $user $chan] || [matchattr $hn o|o $chan])} {
       return
     }
     if {$clone_exemptops>1 && ([isvoice $user $chan] || [matchattr $hn v|v $chan])} {
       return
     }
     lappend clonelist $user
   }
 }

 if {[set count [llength $clonelist]] >= $clone_max} {
   set max 20
  putquick "privmsg $chan +b *!*@$host"
   putquick "MODE $chan +b *!*@$host"
   while {$count > 0} {           ;# Thanks caesar #
     if {$count > $max} {
       set users [join [lrange $clonelist 0 [expr {$max - 1}]] ","]
       set clonelist [lrange $clonelist $max end]
       incr count -$max
     } else {
       set users [join $clonelist ","]
       set count 0
     }
     putquick "privmsg $chan $users :$clone_msg"
     putquick "KICK $chan $users :$clone_msg"
   }
   utimer $::clone_bantime [list putserv "MODE $chan -b *!*@$host"]
 }

}
 




thanx
Back to top
View user's profile Send private message
caesar
Mint Rubber


Joined: 14 Oct 2001
Posts: 3583
Location: Mint Factory

PostPosted: Wed Mar 13, 2019 1:42 pm    Post subject: Reply with quote

Code:

namespace eval DeClone {

   # Set the next line as the kick msg you want to say
   set clone(msg) "10Clones Are Not Allowed 120 Sec Ban ...!!!"

   # Set the next line as the number of clones to scan for
   set clone(max) 3
   # Set the next line as the channels you want to run in (* = allchannels)
   set clone(chans) "#SuKooN"

   # Set ban time (in seconds)
   set clone(bantime) 120

   # Exempt +o users from this script ??
   #  0 = No, do not exempt users with +o
   #  1 = Yes, exempt users with +o
   #  2 = Yes, also exempt users with +v
   set clone(exemptops) 1

   # Set exempt users by standard "nick!user@host" mask ??
   # If you do not have any mask to exempt: set clone_exemptmask {}
   set clone(exemptmask) { *!*@DALnet *!*@*.users.quakenet.org *!*@*.irccloud.com  }

   ###########  End Settings  ###########
   
   bind join - * [namespace current]::check
   
   proc checknick {nick} {
      set skip [list "S" "Q" "X" "ChanServ"]
      set test [expr {[lsearch -nocase $skip $nick] > -1 ? "1" : "0"}]
   }
   
   proc checkMask {nuh} {
      variable clone
      set match 0
      foreach mask $clone(exemptmask) {
         if {[string match -nocase $mask $nuh]} {
            incr match
            break
         }
      }
      set match
   }
   
   proc stackBans {chan banlist} {
      set max 25
      set count [llength $banlist]
      while {$count > 0} {
         if {$count> $max} {
            set mode [string repeat "b" $max]
                set masks [join [lrange $banlist 0 [expr {$max - 1}]]]
                set banlist [lrange $banlist $max end]
                incr count -$max
                incr total $max
         } else {
            set mode [string repeat "b" $count]
            set masks [join $banlist]
            incr total $count
            set count 0
         }
         puthelp "MODE $chan +$mode $masks"
      }
   }
   
   proc stackKicks {chan kicklist reason} {
      set max 25
      set count [llength $kicklist]
      while {$count > 0} {
         if {$count > $max} {
            set users [join [lrange $kicklist 0 [expr {$max - 1}]] ","]
            set kicklist [lrange $kicklist $max end]
            incr count -$max
         } else {
            set users [join $kicklist ","]
            set count 0
         }
         puthelp "KICK $chan $users :$reason"
      }
   }

   proc timedLift {chan bans} {
      variable clone
      foreach ban [split $bans] {
         utimer $clone(bantime) [list puthelp "MODE $chan -b $ban"]
      }
   }
   
   proc check {nick uhost hand chan} {
      variable clone
      if {[isbotnick $nick] || ![botisop $chan] || [matchattr $hand bm|m $chan]} return
      if {[checkMask $nick!$uhost]} return
      
      foreach user [chanlist $chan] {
         if {[isbotnick $nick] || [checknick $user]} continue
         set uh [getchanhost $user $chan]
         if {[checkMask $user!$uh]} continue
         
         if {$clone(exemptops)} {
            set hn [nick2hand $user $chan]
            if {[isop $user $chan] || [isvoice $user $chan] || [matchattr $hn +o+v|+o+v $chan]} continue
         }
         
         scan $uh {%[^@]@%s} u h
         lappend clones($h) $user
      }
      
      set total 0
      foreach ele [array names clones] { incr total [llength $clones($ele)]}
      
      if {$total < $clone(max)} return
      
      foreach host [array names clones] {
         lappend bans *!*@$host
         lappend members $clones($host)
      }
      
      stackBans $chan $bans
      stackKicks $chan $members $clone(msg)
      timedLift $chan $bans
   }
}

Give this untested code a try and reply back. I'm tiered cos just got from work so could have missed something. Rolling Eyes

Honestly I would not rely on timedLift and use a crontab on every 1 minute or something and lift bans that are 120 second (or whatever you want to set) old and remove them than have a lot bunch of timers nobody is keeping track of.

PS: I'm not 100% sure the [matchattr $hn +o+v|+o+v $chan] will work like if user has either o or v flag in channel or in global so.. if doesn't work then split it in:
Code:

[matchattr $hn +o|+o $chan] || [matchattr $hn +v|+v $chan]


Edit: Fixed first round of errors.
Edit: Fixed second round of errors. Rolling Eyes
_________________
I tawt I taw a puddy tat!


Last edited by caesar on Fri Mar 15, 2019 1:52 am; edited 2 times in total
Back to top
View user's profile Send private message
simo
Master


Joined: 22 Mar 2015
Posts: 330

PostPosted: Wed Mar 13, 2019 2:34 pm    Post subject: Reply with quote

gettin these errors

Quote:

Tcl error [::DeClone::check]: can't read "hn": no such variable
Tcl error [::DeClone::check]: can't read "len": no such variable
Back to top
View user's profile Send private message
caesar
Mint Rubber


Joined: 14 Oct 2001
Posts: 3583
Location: Mint Factory

PostPosted: Thu Mar 14, 2019 1:57 am    Post subject: Reply with quote

Before:
Code:

if {[isop $user $chan] || [isvoice $user $chan] || [matchattr $hn +o+v|+o+v $chan]} continue

add:
Code:

set hn [nick2hand $user $chan]

and replace:
Code:

if {$len > $max} {

with:
Code:

if {$count > $max} {

I copy/pasted some pieces of code and forgot to either add some parts or change variables. Smile
_________________
I tawt I taw a puddy tat!
Back to top
View user's profile Send private message
simo
Master


Joined: 22 Mar 2015
Posts: 330

PostPosted: Thu Mar 14, 2019 5:16 pm    Post subject: Reply with quote

gettin this error :

Quote:

Tcl error [::DeClone::check]: can't read "max": no such variable


i also noticed u used the same variable max for both ban and kick stacking is that by design ?
Back to top
View user's profile Send private message
caesar
Mint Rubber


Joined: 14 Oct 2001
Posts: 3583
Location: Mint Factory

PostPosted: Fri Mar 15, 2019 1:51 am    Post subject: Reply with quote

Ah, it's missing a max in the stackBans process. Add a set max 25 or whatever you want in it.

The 25 is meant to be how many kicks or bans to set per line. change it accordingly.
_________________
I tawt I taw a puddy tat!
Back to top
View user's profile Send private message
simo
Master


Joined: 22 Mar 2015
Posts: 330

PostPosted: Fri Mar 15, 2019 5:47 am    Post subject: Reply with quote

after editing it it seems to kick randomly without even beeing same clones from same IP

Quote:

11:12:35   Join :   Beltran   ~Goetz@322.211.113.22
11:12:35   Join :   Stoll   ~Randell@136.90.195.111
11:12:35   Join :   Minnick   ~Cunningham@54.42.128.146
11:12:35   Join :   Fortner   ~Elston@213.21.221.23
11:12:35   Join :   Stuckey   ~Junie@117.146.47.92
11:12:35   Join :   Rosser   ~Cousins@47.75.198.39
11:12:35   Join :   Krause   ~Barrios@23.64.173.107
11:12:35 Cochran Kicked from #tcl-test By @TCL-Tester <> ( 10Clones Are Not Allowed 120 Sec Ban ...!!! )
11:12:35 Grace Kicked from #tcl-test By @TCL-Tester <> ( 10Clones Are Not Allowed 120 Sec Ban ...!!! )
11:12:35   Join :   Pitts   ~Shepard@Cloaked-t67.031.44.45.IP
11:12:35   Join :   Briones   ~Ordonez@Cloaked-nii.543.22.30.IP
11:12:35   Join :   Lankford   ~Kemp@RifSytes-804.812.30.82.IP
11:12:35   Join :   Mello   ~France@133.22.233.333
11:12:35   Join :   Cortez   ~Haywood@Cloaked-v16.931.72.13.IP
11:12:35   Join :   Luciano   ~Baker@Cloaked-ya4.487.02.20.IP
11:12:35   Join :   Giordano   ~Scroggins@75.17.21.139
11:12:35   Join :   Seaton   ~Madelyn@Cloaked-9r5.344.78.51.IP
11:12:35   Join :   Russ   ~Downey@RifSytes-4nt.304.92.95.IP
11:12:35   Join :   Sigler   ~Gurley@Cloaked-y5n.837.43.00.IP
11:12:35   Join :   Hyatt   ~Kerr@97.41.130.148
11:12:35   Join :   Austin   ~Martindale@33.112.312.12
11:12:35   Join :   Louis   ~Danuta@Cloaked-u30.770.10.25.IP
11:12:35   Join :   Andrews   ~Hanlon@86.124.172.87
11:12:35 @TCL-Tester Sets Mode on #tcl-test to: +b *!*@Cloaked-k02.715.81.07.IP
11:12:35 (1 User) is Banned Diamond
11:12:35 Diamond Kicked from #tcl-test By @TCL-Tester <> ( 10Clones Are Not Allowed 120 Sec Ban ...!!! )
11:12:35 @TCL-Tester Sets Mode on #tcl-test to: +b *!*@53.63.147.92
11:12:35 (1 User) is Banned Gates
11:12:35 Gates Kicked from #tcl-test By @TCL-Tester <> ( 10Clones Are Not Allowed 120 Sec Ban ...!!! )
11:12:35 @TCL-Tester Sets Mode on #tcl-test to: +b *!*@333.223.23.333
11:12:35 (1 User) is Banned Aldrich
11:12:35 Aldrich Kicked from #tcl-test By @TCL-Tester <> ( 10Clones Are Not Allowed 120 Sec Ban ...!!! )
11:12:35 @TCL-Tester Sets Mode on #tcl-test to: +b *!*@58.123.168.28
11:12:35 (1 User) is Banned Tiffany
11:12:35 Tiffany Kicked from #tcl-test By @TCL-Tester <> ( 10Clones Are Not Allowed 120 Sec Ban ...!!! )
Back to top
View user's profile Send private message
caesar
Mint Rubber


Joined: 14 Oct 2001
Posts: 3583
Location: Mint Factory

PostPosted: Fri Mar 15, 2019 7:11 am    Post subject: Reply with quote

Ah, yeah, I see where i screwed up. My bad. Try this updated code instead:
Code:

namespace eval DeClone {

   # Set the next line as the kick msg you want to say
   set clone(msg) "10Clones Are Not Allowed 120 Sec Ban ...!!!"

   # Set the next line as the number of clones to scan for
   set clone(max) 3

   # Set the next line as the channels you want to run in (* = allchannels)
   set clone(chans) "#SuKooN"

   # Set ban time (in seconds)
   set clone(bantime) 120

   # Exempt +o users from this script ??
   #  0 = No, do not exempt users with +o
   #  1 = Yes, exempt users with +o
   #  2 = Yes, also exempt users with +v
   set clone(exemptops) 1

   # Set exempt users by standard "nick!user@host" mask ??
   # If you do not have any mask to exempt: set clone_exemptmask {}
   set clone(exemptmask) { *!*@DALnet *!*@*.users.quakenet.org *!*@*.irccloud.com  }

   ###########  End Settings  ###########
   
   bind join - * [namespace current]::check
   
   proc checknick {nick} {
      set skip [list "S" "Q" "X" "ChanServ"]
      set test [expr {[lsearch -nocase $skip $nick] > -1 ? "1" : "0"}]
   }
   
   proc checkMask {nuh} {
      variable clone
      set match 0
      foreach mask $clone(exemptmask) {
         if {[string match -nocase $mask $nuh]} {
            incr match
            break
         }
      }
      set match
   }
   
   proc stackBans {chan banlist} {
      set max 25
      set count [llength $banlist]
      while {$count > 0} {
         if {$count> $max} {
            set mode [string repeat "b" $max]
            set masks [join [lrange $banlist 0 [expr {$max - 1}]]]
            set banlist [lrange $banlist $max end]
            incr count -$max
            incr total $max
         } else {
            set mode [string repeat "b" $count]
            set masks [join $banlist]
            incr total $count
            set count 0
         }
         puthelp "MODE $chan +$mode $masks"
      }
   }
   
   proc stackKicks {chan kicklist reason} {
      set max 25
      set count [llength $kicklist]
      while {$count > 0} {
         if {$count > $max} {
            set users [join [lrange $kicklist 0 [expr {$max - 1}]] ","]
            set kicklist [lrange $kicklist $max end]
            incr count -$max
         } else {
            set users [join $kicklist ","]
            set count 0
         }
         puthelp "KICK $chan $users :$reason"
      }
   }

   proc timedLift {chan bans} {
      variable clone
      foreach ban [split $bans] {
         utimer $clone(bantime) [list puthelp "MODE $chan -b $ban"]
      }
   }
   
   proc check {nick uhost hand chan} {
      variable clone
      if {[isbotnick $nick] || ![botisop $chan] || [matchattr $hand bm|m $chan]} return
      if {[checkMask $nick!$uhost]} return
     
      foreach user [chanlist $chan] {
         if {[isbotnick $nick] || [checknick $user]} continue

         if {$clone(exemptops)} {
            set hn [nick2hand $user $chan]
            if {[isop $user $chan] || [isvoice $user $chan] || [matchattr $hn +o+v|+o+v $chan]} continue
         }

         set uh [getchanhost $user $chan]
         if {[checkMask $user!$uh]} continue
         scan $uh {%[^@]@%s} u h
         lappend clones($h) $user
      }
     
      set found 0
      foreach host [array names clones] {
         if {[llength $clones($host)] >= $clone(max)} {
            lappend bans *!*@$host
            lappend members $clones($host)
            incr found
         }
      }
      
      if {found} {
         stackBans $chan $bans
         stackKicks $chan $members $clone(msg)
         timedLift $chan $bans
      }
   }
}

_________________
I tawt I taw a puddy tat!
Back to top
View user's profile Send private message
simo
Master


Joined: 22 Mar 2015
Posts: 330

PostPosted: Fri Mar 15, 2019 7:37 am    Post subject: Reply with quote

now gettin this error

Quote:

12:36:53 <TCL-Tester> [12:35:31] Tcl error [::DeClone::check]: invalid bareword "found"
12:36:53 <TCL-Tester> in expression "found";
12:36:53 <TCL-Tester> should be "$found" or "{found}" or "found(...)" or ...
Back to top
View user's profile Send private message
caesar
Mint Rubber


Joined: 14 Oct 2001
Posts: 3583
Location: Mint Factory

PostPosted: Fri Mar 15, 2019 8:06 am    Post subject: Reply with quote

Typo Rolling Eyes

Replace:
Code:

if {found} {

with:
Code:

if {$found} {

_________________
I tawt I taw a puddy tat!
Back to top
View user's profile Send private message
simo
Master


Joined: 22 Mar 2015
Posts: 330

PostPosted: Fri Mar 15, 2019 8:13 am    Post subject: Reply with quote

it kicks 1 clone only
Quote:

13:23:41 Join : Brinkman ~Dean@testing.clones.net
13:23:41 Join : Britton ~Rodrigue@testing.clones.net
13:23:41 Join : Shackelford ~Skaggs@testing.clones.net
13:23:41 Join : Sumpter ~Berg@testing.clones.net
13:23:41 Join : Kong ~Southern@testing.clones.net
13:23:41 Join : Harkins ~Cantwell@testing.clones.net
13:23:41 Join : Becker ~Mckinnon@testing.clones.net
13:23:41 Join : Montanez ~Sulema@testing.clones.net
13:23:41 Join : Laila ~Emmons@testing.clones.net
13:23:41 Join : Debora ~Kyle@testing.clones.net
13:23:41 Join : Breen ~Finnegan@testing.clones.net
13:23:41 Join : Flood ~Barnhart@testing.clones.net
13:23:41 Join : Curley ~Diehl@testing.clones.net
13:23:41 @TCL-Tester Sets Mode on #tcl-test to: +b *!*@testing.clones.net
13:23:41 (18 Users) Are Banned Becker Breen Brinkman Britton Curley Cushman Debora Dotson Flood Harkins Hays Huber Kong Laila Montanez Shackelford Stewart Sumpter
13:23:41 Dotson Kicked from #tcl-test By @TCL-Tester <> ( Cushman Stewart Clones Are Not Allowed 120 Sec Ban ...!!! )'


Last edited by simo on Fri Mar 15, 2019 8:28 am; edited 1 time in total
Back to top
View user's profile Send private message
caesar
Mint Rubber


Joined: 14 Oct 2001
Posts: 3583
Location: Mint Factory

PostPosted: Fri Mar 15, 2019 9:48 am    Post subject: Reply with quote

That's because of lappend. Embarassed
Replace:
Code:

lappend bans *!*@$host
lappend members $clones($host)

with:
Code:

append bans *!*@$host
append members $clones($host)

Another option would be to create the two lists before appending anything to them.

After set found 0 we add:
Code:

set members {}
set bans {}

and leave the rest as is. I prefer changing from lappend to append, meaning first option. Smile
_________________
I tawt I taw a puddy tat!
Back to top
View user's profile Send private message
simo
Master


Joined: 22 Mar 2015
Posts: 330

PostPosted: Fri Mar 15, 2019 4:02 pm    Post subject: Reply with quote

now it seems to kick first 5 - 10 clones and after that it slows down taking it ages to kick the rest of the remaining clones

while on this specific server it should kick 20 per single kick command without any issues


it also keeps banning same ip over and over again and it doesnt seem to remove the already kicked nick from the list of stored nicks

Quote:

21:19:14   Join :   Horne   ~Butler@testing.clones.net
21:19:14   Join :   Sanders   ~Brand@testing.clones.net
21:19:14   Join :   Jernigan   ~Monnie@testing.clones.net
21:19:14   Join :   Alves   ~Burnett@testing.clones.net
21:19:14   Join :   Purnell   ~Queenie@testing.clones.net
21:19:14   Join :   Custer   ~Crandall@testing.clones.net
21:19:14   Join :   Shorter   ~Silver@testing.clones.net
21:19:14   Join :   Faber   ~Yun@testing.clones.net
21:19:14   Join :   Kidwell   ~Hannah@testing.clones.net
21:19:14   Join :   Pullen   ~Mireles@testing.clones.net
21:19:14   Join :   Cowan   ~Brunner@testing.clones.net
21:19:14   Join :   Camarillo   ~Felicita@testing.clones.net
21:19:14   Join :   Kilpatrick   ~Britany@testing.clones.net
21:19:14   Join :   Leone   ~Laquanda@testing.clones.net
21:19:14   Join :   Hidalgo   ~Stillwell@testing.clones.net
21:19:14   Join :   Adkins   ~Bickford@testing.clones.net
21:19:14   Join :   Crider   ~Mcghee@testing.clones.net
21:19:14   Join :   Prado   ~Dyson@testing.clones.net
21:19:14   Join :   Broussard   ~Kendall@testing.clones.net
21:19:14   Join :   Dale   ~Caitlyn@testing.clones.net
21:19:14   Join :   Luce   ~Conrad@testing.clones.net
21:19:14 @TCL-Tester Sets Mode on #tcl-test to: +b *!*@testing.clones.net
21:19:14 (21 Users) Are Banned Adkins Alves Broussard Camarillo Cowan Crider Custer Dale Faber Hidalgo Horne Jernigan Kidwell Kilpatrick Leone Luce Prado Pullen Purnell Sanders Shorter
21:19:14 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:14 Horne Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:14 Sanders Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:14 Jernigan Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:14 (@TCL-Tester) : Horne,Sanders,Jernigan Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:14 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:14 Alves Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:14 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:14 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:14 Purnell Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:16 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:18 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:19 Custer Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:20 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:22 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:23 Shorter Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:24 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:26 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:27 Faber Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:28 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:30 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:31 Kidwell Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:32 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:34 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:35 Pullen Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:36 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:38 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:39 Cowan Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:40 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:42 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:43 Camarillo Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:44 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:46 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:47 Kilpatrick Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:48 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo,Kilpatrick Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:50 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:51 Leone Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:52 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo,Kilpatrick,Leone Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:54 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:55 Hidalgo Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:19:56 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo,Kilpatrick,Leone,Hidalgo Clones Are Not Allowed 120 Sec Ban ...!!!
21:19:58 (@TCL-Tester) : +b *!*@testing.clones.net
21:19:59 Adkins Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:20:00 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo,Kilpatrick,Leone,Hidalgo,Adkins Clones Are Not Allowed 120 Sec Ban ...!!!
21:20:02 (@TCL-Tester) : +b *!*@testing.clones.net
21:20:03 Crider Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:20:04 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo,Kilpatrick,Leone,Hidalgo,Adkins,Crider Clones Are Not Allowed 120 Sec Ban ...!!!
21:20:06 (@TCL-Tester) : +b *!*@testing.clones.net
21:20:07 Prado Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:20:08 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo,Kilpatrick,Leone,Hidalgo,Adkins,Crider,Prado Clones Are Not Allowed 120 Sec Ban ...!!!
21:20:10 (@TCL-Tester) : +b *!*@testing.clones.net
21:20:11 Broussard Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:20:12 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo,Kilpatrick,Leone,Hidalgo,Adkins,Crider,Prado,Broussard Clones Are Not Allowed 120 Sec Ban ...!!!
21:20:14 (@TCL-Tester) : +b *!*@testing.clones.net
21:20:15 Dale Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:20:16 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo,Kilpatrick,Leone,Hidalgo,Adkins,Crider,Prado,Broussard,Dale Clones Are Not Allowed 120 Sec Ban ...!!!
21:20:18 (@TCL-Tester) : +b *!*@testing.clones.net
21:20:20 (@TCL-Tester) : Horne,Sanders,Jernigan,Alves,Purnell,Custer,Shorter,Faber,Kidwell,Pullen,Cowan,Camarillo,Kilpatrick,Leone,Hidalgo,Adkins,Crider,Prado,Broussard,Dale Clones Are Not Allowed 120 Sec Ban ...!!!
21:20:21 Luce Kicked from #tcl-test By @TCL-Tester <> ( Clones Are Not Allowed 120 Sec Ban ...!!! )
21:20:22 (@TCL-Tester) : Luce Clones Are Not Allowed 120 Sec Ban ...!!!
21:20:23 @TCL-Tester Sets Mode on #tcl-test to: -b *!*@testing.clones.net


Last edited by simo on Fri Mar 15, 2019 6:45 pm; edited 1 time in total
Back to top
View user's profile Send private message
simo
Master


Joined: 22 Mar 2015
Posts: 330

PostPosted: Fri Mar 15, 2019 6:29 pm    Post subject: Reply with quote

also ideally you would set temp lock channel with like +MR the moment clones are detected just incase to give the bot some space to work with to start doing things after channel is locked, set lock modes ones tho not have it set over and over the same lock modes

theoretically you could say to use anti mass join tcl for that only in the case of clones being joined 1 per like 10 sec the anti mass joins tcl wouldnt detect them as mass join flood and this clone kicker tcl would
Back to top
View user's profile Send private message
simo
Master


Joined: 22 Mar 2015
Posts: 330

PostPosted: Sun Mar 17, 2019 6:28 pm    Post subject: Reply with quote

something like this would be ideal
Quote:

23:22:33   Join :   Skaggs   ~Rosario@testing.clones.net
23:22:33   Join :   Barclay   ~Coulter@testing.clones.net
23:22:33   Join :   Massie   ~Overby@testing.clones.net
23:22:33   Join :   Mead   ~Smothers@testing.clones.net
23:22:33   Join :   Crowell   ~Boyce@testing.clones.net
23:22:33   Join :   Boatwright   ~Nelson@testing.clones.net
23:22:33   Join :   Clemons   ~Yuri@testing.clones.net
23:22:33   Join :   Dallas   ~Scruggs@testing.clones.net
23:22:33   Join :   Overstreet   ~Bobbitt@testing.clones.net
23:22:33   Join :   Fitzsimmons   ~Beatty@testing.clones.net
23:22:33   Join :   Boren   ~Bowlin@testing.clones.net
23:22:33   Join :   Block   ~Mcneill@testing.clones.net
23:22:33   Join :   Hargrove   ~Joan@testing.clones.net
23:22:33   Join :   Schaeffer   ~Yung@testing.clones.net
23:22:33   Join :   Negrete   ~Colwell@testing.clones.net
23:22:33   Join :   Lauer   ~Hundley@testing.clones.net
23:22:33   Join :   Jansen   ~Saucedo@testing.clones.net
23:22:33   Join :   Fulton   ~Clarinda@testing.clones.net
23:22:33   Join :   Beal   ~Olive@testing.clones.net
23:22:33   Join :   Mclendon   ~Goldstein@testing.clones.net
23:22:33   Join :   Swank   ~Arriaga@testing.clones.net
23:22:33   Join :   Myrtis   ~Redmon@testing.clones.net
23:22:33   Join :   Orourke   ~Durden@testing.clones.net
23:22:33   Join :   Cheung   ~Spears@testing.clones.net
23:22:33   Join :   Mcvay   ~Motley@testing.clones.net
23:22:33   Join :   Hughey   ~Tommye@testing.clones.net
23:22:33   Join :   Sales   ~Pointer@testing.clones.net
23:22:33   Join :   Lefebvre   ~Lovett@testing.clones.net
23:22:33   Join :   Hensley   ~Parham@testing.clones.net
23:22:33   Join :   Dahl   ~Funderburk@testing.clones.net
23:22:33 @simo Sets Mode on #tcl-test to: +RM
23:22:33 @simo Sets Mode on #tcl-test to: +b *!*@*.clones.net
23:22:33 (30 Users) Are Banned Barclay Beal Block Boatwright Boren Cheung Clemons Crowell Dahl Dallas Fitzsimmons Fulton Hargrove Hensley Hughey Jansen Lauer Lefebvre Massie Mclendon Mcvay Mead Myrtis Negrete Orourke Overstreet Sales Schaeffer Skaggs Swank
23:22:34 Barclay Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Skaggs Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Massie Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Mead Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Crowell Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Boatwright Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Clemons Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Dallas Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Overstreet Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Fitzsimmons Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Boren Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Block Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Hargrove Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Schaeffer Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Negrete Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Lauer Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Jansen Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Fulton Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Beal Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Mclendon Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Swank Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Myrtis Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Orourke Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Cheung Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Mcvay Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Hughey Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Sales Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Lefebvre Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Hensley Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:34 Dahl Kicked from #tcl-test By @simo <> ( Clone flood detected )
23:22:54 @simo Sets Mode on #tcl-test to: -MR


this is a msl code that does the same exact thing it detects clones then locks channel first after thats determined to be done then start banning and kicking to give it a chance to keep track of stored nicks and kicked nicks not to repeat the same kicks of same nicks over and over and also to make sure the lock channel is modes are set 1 time and removed after timed duration i usually use 20 sec
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    egghelp.org community Forum Index -> Script Requests All times are GMT - 4 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Forum hosting provided by Reverse.net

Powered by phpBB © 2001, 2005 phpBB Group
subGreen style by ktauber