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 

Protect to massive change nicks

 
Post new topic   Reply to topic    egghelp.org community Forum Index -> Scripting Help
View previous topic :: View next topic  
Author Message
juanamores
Master


Joined: 15 Mar 2015
Posts: 317

PostPosted: Tue Sep 06, 2016 5:31 am    Post subject: Protect to massive change nicks Reply with quote

How I can protect a channel of massive change nicks ?
They have clones attacked and clones nicks are changed massively.
Already configured the flood-join but want to control massive changes nicks.

EDIT:
I found this SpiKe^^ 's script.
How I can do to work only in one specific channel ?
In my channel is allowed to repeat and use scripts dances (flood) , I do not want that being affected by the script.

I just want to control clones attacks and massive changes nicks, NOT flood by repetition NOR by number of sucesives lines written on.

Code:
# multi-host-nick-flood.tcl v1.6.1 (1Mar2016) by SpiKe^^, closely based on
# repeat.tcl v1.1 (9Apr1999) by slennox <slenny@ozemail.com.au>
# Special Thanks go out to speechles & caesar

## NEW ADDED: This version adds three new settings  (see below) ##


# Nick flood, kick-ban on repeats:seconds #
set mhnk(flood) 3:10

# Nick flood kick-ban reason #
set mhnk(reasn) "Nick Flood!"

# Max number of bans to stack in one mode command #
set mhnk(maxb) 6

# Max number of kicks to stack in one kick command #          <- NEW SETTING <-
# NOTE: many networks allow more than one nick to be kicked per command. #
#       set this at or below the max for your network.
set mhnk(maxk) 3

# Length of time in minutes to ban Nick flooders #
# - set 0 to disable this script removing bans (ex. set mhnk(btime) 0) #
set mhnk(btime) 1

# After a valid Nick flood, script will continue to #
# kick-ban offenders for an additional 'x' seconds #
set mhnk(xpire) 10

# Set the type of ban masks to use #                          <- NEW SETTING <-
#  1 = use host/ip specific bans (ex. *!*@some.host.com) #
#  2 = use wide masked host/ip bans (ex. *!*@*.host.com) #
#      note: setting 2 requires eggdrop 1.6.20 or newer. #
set mhnk(btype) 2

# Set protected host(s) that should not be wide masked #      <- NEW SETTING <-
# - Example:  set mhnk(phost) "*.undernet.org"
#  Note: this setting only applies to ban type 2 above! #
#  Note: set empty to not protect any hosts (ex. set mhnk(phost) "") #
#  Note: space separated if listing more than one protected host #
set mhnk(phost) ""

# Set channel mode(s) on flood detected. #
# - set empty to disable setting channel modes (ex. set mhnk(mode) "") #
set mhnk(mode) "imN"

# Remove these channel modes after how many seconds? #
set mhnk(mrem) 20

# END OF SETTINGS # Don't edit below unless you know what you're doing #

bind nick - * nk_bindnick

proc nk_bindnick {oldnick uhost hand chan nick} {
  global mhnk mhnc mhnq
  set uhost [string tolower $nick!$uhost]
  set chan [string tolower $chan]
  if {[isbotnick $nick]} { return 0 }
  if {[matchattr $hand f|f $chan]} { return 0 }
  set utnow [unixtime]
  set target [lindex $mhnk(flood) 0]
  if {[info exists mhnc($chan)]} {
    set uhlist [lassign $mhnc($chan) cnt ut]
    set utend [expr {$ut + [lindex $mhnk(flood) 1]}]
    set expire [expr {$utend + $mhnk(xpire)}]
    if {$cnt < $target} {
      if {$utnow > $utend} { unset mhnc($chan) }
    } elseif {$utnow > $expire} { unset mhnc($chan) }
  }
  if {![info exists mhnc($chan)]} {
    set mhnc($chan) [list 1 $utnow $uhost]
    return 0
  }
  incr cnt
  if {$cnt <= $target} {
    if {[lsearch $uhlist $uhost] == -1} { lappend uhlist $uhost }
    if {$cnt < $target} {
      set mhnc($chan) [linsert $uhlist 0 $cnt $ut]
    } else {
      set mhnc($chan) [list $cnt $ut]
      if {$mhnk(mode) ne "" && [string is digit -strict $mhnk(mrem)]} {
        putquick "MODE $chan +$mhnk(mode)"
        utimer $mhnk(mrem) [list putquick "MODE $chan -$mhnk(mode)"]
      }
      nk_dobans $chan $uhlist
    }
    return 0
  }
  if {![info exists mhnq($chan)]} {
    utimer 1 [list nk_bque $chan]
    set mhnq($chan) [list $uhost]
  } elseif {[lsearch $mhnq($chan) $uhost] == -1} {
    lappend mhnq($chan) $uhost
  }

  if {[llength $mhnq($chan)] >= $mhnk(maxb)} {
    nk_dobans $chan $mhnq($chan)
    set mhnq($chan) ""
  }

  return 0
}

proc nk_dobans {chan uhlist} {
  global mhnk
  if {![botisop $chan]} return
  set banList ""
  set nickList ""
  foreach ele $uhlist {
    scan $ele {%[^!]!%[^@]@%s} nick user host

    if {$mhnk(btype) == 2} {
      set type 4
      foreach ph $mhnk(phost) {
        if {[string match -nocase $ph $host]} {
          set type 2  ;  break
        }
      }
      set bmask [maskhost $ele $type]
    } else {  set bmask "*!*@$host"  }

    if {[lsearch $banList $bmask] == -1} { lappend banList $bmask }
    if {[lsearch $nickList $nick] == -1} { lappend nickList $nick }
  }
  stack_bans $chan $mhnk(maxb) $banList

  foreach nk $nickList {
    if {[onchan $nk $chan]} {  lappend nkls $nk  } else { continue }
    if {[llength $nkls] == $mhnk(maxk)} {
      putquick "KICK $chan [join $nkls ,] :$mhnk(reasn)"
      unset nkls
    }
  }
  if {[info exists nkls]} {
    putquick "KICK $chan [join $nkls ,] :$mhnk(reasn)"
  }

  if {$mhnk(btime) > 0} {
    set expire [expr {[unixtime] + $mhnk(btime)}]
    lappend mhnk(rmls) [list $expire $chan $banList]
  }
}

proc stack_bans {chan max banlist {opt +} } {
  set len [llength $banlist]
  while {$len > 0} {
    if {$len > $max} {
      set mode [string repeat "b" $max]
      set masks [join [lrange $banlist 0 [expr {$max - 1}]]]
      set banlist [lrange $banlist $max end]
      incr len -$max
    } else {
      set mode [string repeat "b" $len]
      set masks [join $banlist]
      set len 0
    }
    putquick "MODE $chan ${opt}$mode $masks"
  }
}

proc nk_bque {chan} {
  global mhnq
  if {![info exists mhnq($chan)]} { return }
  if {$mhnq($chan) eq ""} { unset mhnq($chan) ; return }
  nk_dobans $chan $mhnq($chan)
  unset mhnq($chan)
}

proc nk_breset {} {
  global mhnc mhnk
  set utnow [unixtime]
  set target [lindex $mhnk(flood) 0]
  foreach {key val} [array get mhnc] {
    lassign $val cnt ut
    set utend [expr {$ut + [lindex $mhnk(flood) 1]}]
    set expire [expr {$utend + $mhnk(xpire)}]
    if {$cnt < $target} {
      if {$utnow > $utend} { unset mhnc($key) }
    } elseif {$utnow > $expire} { unset mhnc($key) }
  }
  if {[info exists mhnk(rmls)]} {
    while {[llength $mhnk(rmls)]} {
      set next [lindex $mhnk(rmls) 0]
      lassign $next expire chan banList
      if {$expire > $utnow} {  break  }
      set mhnk(rmls) [lreplace $mhnk(rmls) 0 0]
      if {![info exists rmAra($chan)]} {  set rmAra($chan) $banList
      } else {  set rmAra($chan) [concat $rmAra($chan) $banList]  }
    }
    foreach {key val} [array get rmAra] {
      set banList ""
      foreach mask $val {
        if {![ischanban $mask $key]} {  continue  }
        lappend banList $mask
      }
      if {$banList eq ""} {  continue  }
      if {![botisop $key]} {
        set mhnk(rmls) [linsert $mhnk(rmls) 0 [list $utnow $key $banList]]
      } else {  stack_bans $key $mhnk(maxb) $banList -  }
    }
    if {![llength $mhnk(rmls)]} {  unset mhnk(rmls)  }
  }
  utimer 30 [list nk_breset]
}

if {![info exists nk_running]} {
  utimer 10 [list nk_breset]
  set nk_running 1
}

set mhnk(flood) [split $mhnk(flood) :]
set mhnk(btime) [expr {$mhnk(btime) * 60}]
set mhnk(phost) [split [string trim $mhnk(phost)]]
if {$mhnk(btime)==0 && [info exists mhnk(rmls)]} {  unset mhnk(rmls)  }

putlog "Loaded multi-host-nick-flood.tcl v1.6.1 by SpiKe^^"

_________________
If you do not understand my ideas is because I can not think in English, I help me with Google Translate. I only speak Spanish. Bear with me. Thanks Smile
Back to top
View user's profile Send private message
caesar
Mint Rubber


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

PostPosted: Tue Sep 06, 2016 8:04 am    Post subject: Reply with quote

In this case you can't use Spike's script.

How many times dose a bot change it's name in the massive nicks changes flood? They change to some random characters or there's a pattern? Copy/paste a small sample of their attack.
_________________
Once the game is over, the king and the pawn go back in the same box.
Back to top
View user's profile Send private message
juanamores
Master


Joined: 15 Mar 2015
Posts: 317

PostPosted: Tue Sep 06, 2016 10:10 am    Post subject: Reply with quote

caesar wrote:
In this case you can't use Spike's script.

How many times dose a bot change it's name in the massive nicks changes flood? They change to some random characters or there's a pattern? Copy/paste a small sample of their attack.


The clones changes their nicks in seconds and they doesn´t follow any random characters neither nor any pattern.

The attack:
Quote:
21:04 ?                         => ¦ jaimon5 es ahora MeninaVenen0
21:04 ?                         => ¦ hgasta es ahora roperitolok
21:04 ?                         => ¦ hamorositat es ahora vivi15
21:04 ?                         => ¦ kimmara es ahora horacio65
21:04 ?                         => ¦ leonardittoo es ahora Petardita
21:04 ?                         => ¦ lulun es ahora windowsxd
21:04 ?                         => ¦ mamasoota es ahora podesal
21:04 ?                         => ¦ walkiriita es ahora hamandda^
21:04 ?                         => ¦ chicaa_solaa es ahora demasita15
21:04 ?                         => ¦ kaosmalign es ahora reseta
21:04 ?                         => ¦ nani418011 es ahora solocamsita
21:04 ?                         => ¦ deniise es ahora cacalito45
21:04 ?                         => ¦ cocasa es ahora ana_lokita53
21:04 ?                         => ¦ soldadito22 es ahora SERE-LEYENDA^
21:04 ?                         => ¦ camilitoo es ahora O_oJo^^
21:04 ?                         => ¦ GOGOVIDEO es ahora VeNe_21
21:04 ?                         => ¦ joselo58 es ahora jaiimito
21:04 ?                         => ¦ quesoods es ahora analuzzia


I have found the other script that puts bans and change the channel mode (example +iRm).
Now, I would like to implement to this script how to control massive nicks changes.
The scripts only should work only in one specific channel.

Code:
#--------------------------------------------------------------------------------------------------------------------#
#                                 ANTI MASS JOIN / JOIN FLOOD PROTECTION SCRIPT BY RANA USMAN                        #
#--------------------------------------------------------------------------------------------------------------------#

#  AUTHOR :  RANA USMAN
## EMAIL  :  coolguy_rusman@yahoo.com , usmanrana33@hotmail.com
## URL    :  www.ranausman.tk , www.airevision.tk
# VERSION :  1
# If you have any suggesstion about my script kindly let me know i will be glad to look forward :)

###############
# DESCRIPTION #
###############
#Assalam O Aleikum n Hiya :) again ok i have written this script cuz i havent found any good mass join protection yet.There
#are different join/part protection available but not a sinlge MASSJOIN / JOIN FLOOD protection.Simply what this script do
#is it will stop the heavy amout of clones joining your channel for flood n for more protection it changes the modes of the
#channel to the Modes specified by you in configuration section.More it will gonna ban the flooding clone's IP n you have
#both options for banning stick ban n Simple chan ban :))

########################
# HOW TO ENABLE SCRIPT #
########################
#PartyLine : (While Your in DCC chat with bot the place where you give commands like .+chan #chan is called partyline)
#In Bots Partline simple give the following command --> .chanset #channelname flood-join joins:seconds
#Example : .chanset #yourchannel flood-join 4:6 <-- bot will detect if 4 clone joins in 6 seconds ::) ( 0:0 to disable )

###########################
#= CONFIGURATION SECTION =#
###########################
## Set the Lock Modes
# Bot will change channel mode to the modes you will specify below in case the bot will detect join flood
# To Disable Mode change set it to ""
set joinlockmodes "iRm"

## Set the banmask type to use in banning the join floods
# Currently BAN Type is set to 1 (*!*@any.domain.com),
# BAN Types are given below;
# 1 - *!*@some.domain.com
# 2 - *!*@*.domain.com
# 3 - *!*ident@some.domain.com
# 4 - *!*ident@*.domain.com
# 5 - *!*ident*@some.domain.com
# 6 - *nick*!*@*.domain.com
# 7 - *nick*!*@some.domain.com
# 8 - nick!ident@some.domain.com
# 9 - nick!ident@*.host.com
set bantype "1"

## Set the time in seconds to Unlock Modes
# The Bot will Unlock the channel after the specified time you will set below
set unlocktime "15"

## Set The Punish Type
# Set it to '1' if you want to add the Ban for joinflood in bots list.By doing it Bot will ban the IP everytime when the
# clone will join the channel even if it is unbanned from channel OR Simply a stick ban
# Set it to '2' for a simple channel Ban :) :: RECOMMENDED ::
set joinpunish "2"

## Set the reason you want to give while kicking
set jreason "Mass Join Flood"

###########################
# CONFIGURATION ENDS HERE #
###########################

#--------------------------------------------------------------------------------------------------------------------#
#  SCRIPT STARTS FROM HERE.YOU CAN MAKE MODIFICATIONS AT UR OWN RISK, I DONT RESTRICT YOU TO NOT TO TOUCH THE CODE!  #
#--------------------------------------------------------------------------------------------------------------------#

bind flud - join joinflood:RanaUsman
proc joinflood:RanaUsman {nick uhost hand type chan} {
global joinlockmodes banmask unlocktime joinpunish jreason botnick
if {![botisop $chan] || [matchattr $hand of]} { return 0 }
set banmask [joinpart:banmask $uhost $nick]
if {($joinpunish == 1)} {
putquick "MODE $chan +$joinlockmodes"
newchanban $chan $banmask $botnick $jreason
putquick "KICK $chan $nick :$jreason"
utimer $unlocktime [list putquick "MODE $chan -$joinlockmodes"]
}
if {($joinpunish == 2)} {
putquick "MODE $chan +$joinlockmodes"
putquick "MODE $chan +b $banmask"
putquick "KICK $chan $nick :$jreason"
utimer $unlocktime [list putquick "MODE $chan -$joinlockmodes"]
 }
}
proc joinpart:banmask {uhost nick} {
 global bantype
  switch -- $bantype {
   1 { set banmask "*!*@[lindex [split $uhost @] 1]" }
   2 { set banmask "*!*@[lindex [split [maskhost $uhost] "@"] 1]" }
   3 { set banmask "*!*$uhost" }
   4 { set banmask "*!*[lindex [split [maskhost $uhost] "!"] 1]" }
   5 { set banmask "*!*[lindex [split $uhost "@"] 0]*@[lindex [split $uhost "@"] 1]" }
   6 { set banmask "*$nick*!*@[lindex [split [maskhost $uhost] "@"] 1]" }
   7 { set banmask "*$nick*!*@[lindex [split $uhost "@"] 1]" }
   8 { set banmask "$nick![lindex [split $uhost "@"] 0]@[lindex [split $uhost @] 1]" }
   9 { set banmask "$nick![lindex [split $uhost "@"] 0]@[lindex [split [maskhost $uhost] "@"] 1]" }
   default { set banmask "*!*@[lindex [split $uhost @] 1]" }
   return $banmask
  }
}
#-------------------------------------------------------------------------------------------------------------------------#
putlog "=- \002ANTI MASS JOIN/JOIN FLOOD PROTECTION BY RANA USMAN (www.ranausman.tk) HAS BEEN  LOADED SUCCESSFULLY \002 -="
#-------------------------------------------------------------------------------------------------------------------------#

_________________
If you do not understand my ideas is because I can not think in English, I help me with Google Translate. I only speak Spanish. Bear with me. Thanks Smile
Back to top
View user's profile Send private message
simo
Owner


Joined: 22 Mar 2015
Posts: 941

PostPosted: Mon Sep 12, 2016 5:20 am    Post subject: Reply with quote

modern ircds have features for that like the +N channel mode preventing nick changes incase of abuse i saw you are running bot on a network running ircu wich doesnt provide such features

but the spike tcl should do the trick tho to detect fast nick changes and set ban and channel modes
Back to top
View user's profile Send private message
juanamores
Master


Joined: 15 Mar 2015
Posts: 317

PostPosted: Mon Sep 12, 2016 9:24 am    Post subject: Reply with quote

simo wrote:
modern ircds have features for that like the +N channel mode preventing nick changes incase of abuse i saw you are running bot on a network running ircu wich doesnt provide such features

On the network that I frequent, there is no way (modes) to prevent nicks changes.
Quote:
miranda.chathispano.com, running version u2.10.H.10.238


simo wrote:
but the spike tcl should do the trick tho to detect fast nick changes and set ban and channel modes

Would you help me adapt this part of the code in the previous script?
_________________
If you do not understand my ideas is because I can not think in English, I help me with Google Translate. I only speak Spanish. Bear with me. Thanks Smile
Back to top
View user's profile Send private message
caesar
Mint Rubber


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

PostPosted: Tue Sep 13, 2016 11:01 am    Post subject: Reply with quote

juanamores is right, I checked the channel modes and there's no mode to prevent nick changes, only option would be to lock the channel with whatever modes he wishes and do some bans.

Btw, you know about ircguard?
_________________
Once the game is over, the king and the pawn go back in the same box.
Back to top
View user's profile Send private message
juanamores
Master


Joined: 15 Mar 2015
Posts: 317

PostPosted: Tue Sep 13, 2016 4:41 pm    Post subject: Reply with quote

caesar wrote:
juanamores is right, I checked the channel modes and there's no mode to prevent nick changes, only option would be to lock the channel with whatever modes he wishes and do some bans.

Btw, you know about ircguard?

Yes, I know ircguard.
But I want to have everything in my bot , I avoid putting bots of third .
_________________
If you do not understand my ideas is because I can not think in English, I help me with Google Translate. I only speak Spanish. Bear with me. Thanks Smile
Back to top
View user's profile Send private message
Arnold_X-P
Master


Joined: 30 Oct 2006
Posts: 221
Location: DALnet - Trinidad - Beni - Bolivia

PostPosted: Wed Sep 14, 2016 2:08 pm    Post subject: Reply with quote

Arnold_X-P wrote:
juanamores perhaps this is for what you are looking
juanamores tal vez esto es lo que usted esta buscando.. funciona muy bien
Code:
#--------------------------------------------------------------------------------------------------------------------#
#                                PROTECTION ANTI CHANGES MASSIVE IN NICKNAMES                                      #
#--------------------------------------------------------------------------------------------------------------------#

#  AUTHOR :  Arnold_X-P BASED ON THE TCL OF RANA USMAN (ANTI MASS JOIN / JOIN FLOOD)
## EMAIL  :  urquizoandrade@hotmail.com  /server irc.dal.net channel #tcls nick's Arnold_X-P & sedition
## URL    :  http://forum.egghelp.org/viewtopic.php?t=20213
# VERSION :  0.5

###############
# DESCRIPTION #
###############
# this tcl will protect its channel against massive changes of nicknames that the attackers use.

########################
# HOW TO ENABLE SCRIPT #
########################
#In Bots Partline simple give the following command --> .chanset #channelname flood-nick nicks:seconds.
   #Example : .chanset #yourchannel flood-nick 4:6 <-- bot will detect if 4 change nicks in channel, in 6 seconds.
######        .chanset #yourchannel flood-nick 0:0 <-- the tcl will be disabled.
   #ejemplo : .chanset #tu-canal flood-nick 4:6 <-- el bot detectara 4 cambios de nicks en tu canal, en un lapso de 6 segundos.
######        .chanset #tu-canal flood-nick 0:0 <-- la tcl estara desactivada.

###########################
#= CONFIGURATION SECTION =#
###########################
## Set the Lock Modes
# Bot will change channel mode to the modes you will specify below in case the bot will detect change massive in nicks.
# To Disable Mode change set it to ""
# estos modos se usan en los nuevos ircds, son efectivos contra ataques.
set changenickslockmodes "NMR"

## Set the banmask type to use in banning, change massive in nicks
# Currently BAN Type is set to 1 (*!*@any.domain.com),
# BAN Types are given below;
  # 1 - *!*@some.domain.com
  # 2 - *!*@*.domain.com
  # 3 - *!*ident@some.domain.com
  # 4 - *!*ident@*.domain.com
  # 5 - *!*ident*@some.domain.com
  # 6 - *nick*!*@*.domain.com
  # 7 - *nick*!*@some.domain.com
  # 8 - nick!ident@some.domain.com
  # 9 - nick!ident@*.host.com
set bantype "1"

## Set the time in seconds to Unlock Modes
# The Bot will Unlock the channel after the specified time you will set below
set unlocktime "35"

## Set The Punish Type
# Set it to '1' if you want to add the Ban for change massive in nicks or bots list. By doing it Bot will ban the IP everytime when the
# clone will join the channel even if it is unbanned from channel OR Simply a stick ban
# Set it to '2' for a simple channel Ban :) :: RECOMMENDED ::
set changenickspunish "2"

## Set the reason you want to give while kicking
set changenicksjreason "Not Changes Massive in NickNames!!! Stop."

###########################
# CONFIGURATION ENDS HERE #
###########################

#--------------------------------------------------------------------------------------------------------------------#
#  SCRIPT STARTS FROM HERE.YOU CAN MAKE MODIFICATIONS AT UR OWN RISK, I DONT RESTRICT YOU TO NOT TO TOUCH THE CODE!  #
#--------------------------------------------------------------------------------------------------------------------#

bind flud - nick changenickflood:RanaUsman

proc changenickflood:RanaUsman {newnick uhost hand type chan } {
global changenickslockmodes banmask unlocktime changenickspunish changenicksjreason botnick
if {![botisop $chan] || [matchattr $hand of]} { return 0 }
set banmask [changenickflood $uhost $newnick]
if {($changenickspunish == 1)} {
putquick "MODE $chan +$changenickslockmodes"
newchanban $chan $banmask $botnick $changenicksjreason
putquick "KICK $chan $newnick :$changenicksjreason"
utimer $unlocktime [list putquick "MODE $chan -$changenickslockmodes"]
}
if {($changenickspunish == 2)} {
putquick "MODE $chan +$changenickslockmodes"
putquick "MODE $chan +b $banmask"
putquick "KICK $chan $newnick :$changenicksjreason"
utimer $unlocktime [list putquick "MODE $chan -$changenickslockmodes"]
 }
}
proc changenickflood {uhost newnick} {
 global bantype
  switch -- $bantype {
   1 { set banmask "*!*@[lindex [split $uhost @] 1]" }
   2 { set banmask "*!*@[lindex [split [maskhost $uhost] "@"] 1]" }
   3 { set banmask "*!*$uhost" }
   4 { set banmask "*!*[lindex [split [maskhost $uhost] "!"] 1]" }
   5 { set banmask "*!*[lindex [split $uhost "@"] 0]*@[lindex [split $uhost "@"] 1]" }
   6 { set banmask "*$newnick*!*@[lindex [split [maskhost $uhost] "@"] 1]" }
   7 { set banmask "*$newnick*!*@[lindex [split $uhost "@"] 1]" }
   8 { set banmask "$newnick![lindex [split $uhost "@"] 0]@[lindex [split $uhost @] 1]" }
   9 { set banmask "$newnick![lindex [split $uhost "@"] 0]@[lindex [split [maskhost $uhost] "@"] 1]" }
   default { set banmask "*!*@[lindex [split $uhost @] 1]" }
   return $banmask
  }
}
#-------------------------------------------------------------------------------------------------------------------------#
putlog "=- \002Protection Anti Changes Massive in NickNames\002 For Arnold_X-P -="
#-------------------------------------------------------------------------------------------------------------------------#

_________________
Very Happy thanks to that they help, that others learn Very Happy


Last edited by Arnold_X-P on Thu Sep 15, 2016 1:11 pm; edited 4 times in total
Back to top
View user's profile Send private message Send e-mail Visit poster's website MSN Messenger
juanamores
Master


Joined: 15 Mar 2015
Posts: 317

PostPosted: Wed Sep 14, 2016 10:49 pm    Post subject: Reply with quote

Arnold_X-P wrote:
juanamores tal vez esto es lo que usted esta buscando.. funciona muy bien

Vale Arnold_X-P, voy a ver como lo uno con el original Mass Join, asi tengo ambas protecciones.
Muchas gracias amigo Smile
_________________
If you do not understand my ideas is because I can not think in English, I help me with Google Translate. I only speak Spanish. Bear with me. Thanks Smile
Back to top
View user's profile Send private message
Arnold_X-P
Master


Joined: 30 Oct 2006
Posts: 221
Location: DALnet - Trinidad - Beni - Bolivia

PostPosted: Wed Sep 14, 2016 11:34 pm    Post subject: Reply with quote

puedes tener ambos en una tcl solo deja un solo putlog
ejemplo:

putlog "=- \002anti mass joins y \002Protection Anti Changes Massive NickNames\002 cargado -="

por algo esta ultima modifique el bind, sets y su proc la cual no entrara en conflicto con la original, funcionan ambas en una solo tcl.
_________________
Very Happy thanks to that they help, that others learn Very Happy
Back to top
View user's profile Send private message Send e-mail Visit poster's website MSN Messenger
juanamores
Master


Joined: 15 Mar 2015
Posts: 317

PostPosted: Thu Sep 15, 2016 1:17 pm    Post subject: Reply with quote

Arnold_X-P wrote:
puedes tener ambos en una tcl solo deja un solo putlog
ejemplo:

putlog "=- \002anti mass joins y \002Protection Anti Changes Massive NickNames\002 cargado -="

por algo esta ultima modifique el bind, sets y su proc la cual no entrara en conflicto con la original, funcionan ambas en una solo tcl.


Perfecto! Gracias Very Happy
Aún no he tenido tiempo de programar, cuando lo tenga voy a revisar eso y si en algún momento hay otro ataque en la Red (cosa muy dificil) por aqui mismo reabriré este hilo para comentarles como me fue con este script.
_________________
If you do not understand my ideas is because I can not think in English, I help me with Google Translate. I only speak Spanish. Bear with me. Thanks Smile
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 -> Scripting Help All times are GMT - 4 Hours
Page 1 of 1

 
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