<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://forum.eggheads.org/app.php/feed/topic/13752" />

	<title>egghelp/eggheads community</title>
	<subtitle>Discussion of eggdrop bots, shell accounts and tcl scripts.</subtitle>
	<link href="https://forum.eggheads.org/index.php" />
	<updated>2007-11-03T11:23:22-04:00</updated>

	<author><name><![CDATA[egghelp/eggheads community]]></name></author>
	<id>https://forum.eggheads.org/app.php/feed/topic/13752</id>

		<entry>
		<author><name><![CDATA[TRaSH]]></name></author>
		<updated>2007-11-03T11:23:22-04:00</updated>

		<published>2007-11-03T11:23:22-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=77421#p77421</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=77421#p77421"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=77421#p77421"><![CDATA[
i downloaded the last version from your site,<br>but it still doesn't remove the ban after 5 minutes <img class="smilies" src="https://forum.eggheads.org/images/smilies/icon_sad.gif" width="15" height="15" alt=":(" title="Sad"><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=2769">TRaSH</a> — Sat Nov 03, 2007 11:23 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[awyeah]]></name></author>
		<updated>2007-11-02T03:03:56-04:00</updated>

		<published>2007-11-02T03:03:56-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=77385#p77385</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=77385#p77385"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=77385#p77385"><![CDATA[
Try downloading the version uploaded on my website.<br><br><span style="color:green"><a href="http://channels.dal.net/awyeah/" class="postlink">http://channels.dal.net/awyeah/</a></span><br><br>I was busy with exams, so no time for scripting. I did fix some small errors and bugs in it as per a few requests on my shoutbox on my webpage, but didn't change the script version because for me being very busy recently.<br><br>If the problem still exists, then let me know.<br><br>regards,<br>JD<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=4875">awyeah</a> — Fri Nov 02, 2007 3:03 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[TRaSH]]></name></author>
		<updated>2007-11-01T17:23:41-04:00</updated>

		<published>2007-11-01T17:23:41-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=77372#p77372</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=77372#p77372"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=77372#p77372"><![CDATA[
any updates ?<br>because the ban still isn't lifted after 5 minutes like i've setup<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=2769">TRaSH</a> — Thu Nov 01, 2007 5:23 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[awyeah]]></name></author>
		<updated>2007-07-30T02:51:35-04:00</updated>

		<published>2007-07-30T02:51:35-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74840#p74840</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74840#p74840"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74840#p74840"><![CDATA[
To me the script looks fine, but didn't get time to test it yet. Anyway, will test it later and let you know about the results.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=4875">awyeah</a> — Mon Jul 30, 2007 2:51 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[TRaSH]]></name></author>
		<updated>2007-07-29T06:48:16-04:00</updated>

		<published>2007-07-29T06:48:16-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74823#p74823</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74823#p74823"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74823#p74823"><![CDATA[
[edited]<br>i'll give it a try,<br>thnx<br><br>hmm seems the unbanning function isn't working<br>i've set it to 5 minutes and when a clone get's banned it stays banned.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=2769">TRaSH</a> — Sun Jul 29, 2007 6:48 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[awyeah]]></name></author>
		<updated>2007-07-29T06:12:51-04:00</updated>

		<published>2007-07-29T06:12:51-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74822#p74822</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74822#p74822"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74822#p74822"><![CDATA[
Or if that doesn't work. Take a look at this thread.<br><a href="http://forum.egghelp.org/viewtopic.php?t=13832" class="postlink">http://forum.egghelp.org/viewtopic.php?t=13832</a><br><br><em class="text-italics">Use the original script,</em> and <em class="text-italics">set your op chars</em> correctly in the bots configuration file. Meaning <em class="text-italics">add the "%" sign</em> also <em class="text-italics">in your op chars</em>. That should make it work correctly then.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=4875">awyeah</a> — Sun Jul 29, 2007 6:12 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[awyeah]]></name></author>
		<updated>2007-07-29T05:56:19-04:00</updated>

		<published>2007-07-29T05:56:19-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74821#p74821</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74821#p74821"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74821#p74821"><![CDATA[
Replace this line:<br><div class="codebox"><p>Code: </p><pre><code>if {![isbotnick $nick] &amp;&amp; ![matchattr [nick2hand $nick $chan] mn|mn $chan] &amp;&amp; [isop $nick $chan] || [isvoice $nick $chan]} { </code></pre></div>with this:<div class="codebox"><p>Code: </p><pre><code>if {![isbotnick $nick] &amp;&amp; ![matchattr [nick2hand $nick $chan] mn|mn $chan] &amp;&amp; [isop $nick $chan] || [isvoice $nick $chan] || [string equal "%" [string index $nick 0]]} { </code></pre></div>It should be replaced two times. Hope that works.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=4875">awyeah</a> — Sun Jul 29, 2007 5:56 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[TRaSH]]></name></author>
		<updated>2007-07-29T05:42:16-04:00</updated>

		<published>2007-07-29T05:42:16-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74820#p74820</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74820#p74820"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74820#p74820"><![CDATA[
ahh well allot of other servers have a half-op status called hop using the % sign<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=2769">TRaSH</a> — Sun Jul 29, 2007 5:42 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[awyeah]]></name></author>
		<updated>2007-07-29T05:40:30-04:00</updated>

		<published>2007-07-29T05:40:30-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74819#p74819</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74819#p74819"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74819#p74819"><![CDATA[
I really have no idea what is hop. The only two things I am familiar with, simple and basic are: <em class="text-italics">ops (@'s) and voices (+v's)</em><br><br>These are the only two channel umode accesses available for users on DALnet, i.e. using the bahamut ircd.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=4875">awyeah</a> — Sun Jul 29, 2007 5:40 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[TRaSH]]></name></author>
		<updated>2007-07-29T05:32:53-04:00</updated>

		<published>2007-07-29T05:32:53-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74818#p74818</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74818#p74818"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74818#p74818"><![CDATA[
shouldn't the script also exempts people with hop ?<br><br>[11:26:12] joins: CTZ (~<a href="mailto:CTZ@BLARG.BLARG.HONK">CTZ@BLARG.BLARG.HONK</a>) [361 users]<br>[11:26:12] ChanServ sets mode: +h CTZ<br>[11:26:22] joins: CTZ-Backup (~<a href="mailto:CTZ@BLARG.BLARG.HONK">CTZ@BLARG.BLARG.HONK</a>) [362 users] clone: %CTZ [1]<br>[11:26:22] ChanServ sets mode: +h CTZ-Backup<br>[11:26:23] !Sir^Killalot sets mode: +b *!*@BLARG.BLARG.HONK<br>[11:26:23] [%] [Sir^Killalot] banned (CTZ CTZ-Backup)<br>[11:26:23] %CTZ was kicked by !Sir^Killalot ( Excessive Clones  - Excessive clones detected from host (*!*@BLARG.BLARG.HONK) residing in the channel.)<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=2769">TRaSH</a> — Sun Jul 29, 2007 5:32 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[awyeah]]></name></author>
		<updated>2007-08-21T21:54:10-04:00</updated>

		<published>2007-07-29T04:54:39-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74814#p74814</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74814#p74814"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74814#p74814"><![CDATA[
Fixed the square bracket error and uploaded the script.<br><br>Download the script by clicking on this link:<br><strong class="text-strong"><a href="http://channels.dal.net/awyeah/scripts/clonescanner.tcl" class="postlink">Clone Scanner v2.58.b</a></strong><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=4875">awyeah</a> — Sun Jul 29, 2007 4:54 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[TRaSH]]></name></author>
		<updated>2007-07-28T19:11:45-04:00</updated>

		<published>2007-07-28T19:11:45-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74805#p74805</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74805#p74805"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74805#p74805"><![CDATA[
getting the following error now<br><br>Tcl error [clone:scan<img alt=":on:" class="emoji smilies" draggable="false" src="//cdn.jsdelivr.net/gh/twitter/twemoji@latest/assets/svg/1f51b.svg">join]: missing close-bracket<br>Tcl error [clone:scan:in:chan]: missing close-bracket<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=2769">TRaSH</a> — Sat Jul 28, 2007 7:11 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[awyeah]]></name></author>
		<updated>2007-07-28T15:50:19-04:00</updated>

		<published>2007-07-28T15:50:19-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74802#p74802</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74802#p74802"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74802#p74802"><![CDATA[
Im having a problem with my hosting currently. Anyway I added the bantime thingy as you requested. So I'm pasting the modified script here, until I can upload it later onto my hosting, when it is fixed.<br><br>Latest version:<br><div class="codebox"><p>Code: </p><pre><code># $Id: clonescan.tcl, v2.58.b eggdrop-1.6.18 2007/07/23 11:13:28 Exp $# Begin - Clone Scanner v2.58.b [clonescan.tcl]#       Build date: 23rd July 2007#       Copyright © 1998-2007 awyeah (awesomeawyeah@gmail.com)#       This TCL script is designed to work with eggdrop v1.6.17 or higher##########################################################################                         Clone Scanner v2.58.b                         ##                                                                       ##                                                                       ## Author: awyeah                                         23rd July 2007 ## Email: awesomeawyeah@gmail.com                   Build version 2.58.b ###########################################################################                                                                       ## #######                                                               ## PURPOSE                                                               ## #######                                                               ##                                                                       ## This script serves the purpose of eliminating excessive clones        ## residing in a channel. These clones are detected in the format of     ## *!*@host.domain.com.                                                  ##                                                                       ###########################################################################                                                                       ## ########                                                              ## FEATURES                                                              ## ########                                                              ##                                                                       ## (1) This script has '2' settings of channels to work on.              ##      (a) Can be activated to work on user defined channels.           ##      (b) Can be activated to work on all the channels the bot is on.  ##                                                                       ## (2) The clone scan invertal time is customizable, to scan the channel ##     continuously after 'X' number of minutes.                         ##                                                                       ## (3) This script also has a feature to scan users on joining channels  ##     to check for clones. This feature can be enabled or disabled as   ##     desired.                                                          ##                                                                       ## (4) This script automatically exempts people with OPS and VOICES from ##     the clone detection mechansim. This has been implemented since    ##     most channel ops and voices have spam cycler bots running around  ##     the channel.                                                      ##                                                                       ## (5) An additional feature in this script is that it automatically     ##     exempts all users with virtual hosts (vhosts) from the clone      ##     detection mechanism. Hence, users with real ISP (Internet         ##     Service Provider) IP addresses are only checked for clones.       ##                                                                       ###########################################################################                                                                       ## ############                                                          ## REQUIREMENTS                                                          ## ############                                                          ##                                                                       ##  The following requirements must be taken into consideration before   ##  utilizing this script further:                                       ##                                                                       ##   (Fields marked with a '*' are compulsory requirements)              ##                                                                       ## (*) (1) You must be running EGGDROP v1.6.17 or higher.                ## (*) (2) You must have TCL v8.4 or higher installed on the system.     ##                                                                       ##   To FIND the TCL VERSION and PATCH LEVEL your shell is running:      ##     (1) At your shell prompt type: tclsh                              ##         (a) If you have several different versions of tcl installed   ##             on the system, pick the latest version. E.g: tclsh8.3,    ##             tclsh8.4 which is installed from the given list.          ##             (i) At shell prompt type: tclsh8.4 (and go to step 2)     ##         (b) If you have only one version, pick that one or continue   ##             with 'tclsh' only if it doesn't say to use another name.  ##     (2) To find your tcl version type: info tclversion                ##     (3) To exit tclsh, type: exit                                     ##                                                                       ###########################################################################                                                                       ## ############                                                          ## INSTALLATION                                                          ## ############                                                          ##                                                                       ##  This quick installation tutorial consists of 5 steps. Please follow  ##  all steps correctly in order to setup your script.                   ##                                                                       ## (1) Upload the file clonescan.tcl in your eggdrop '/scripts' folder   ##     along with your other TCL scripts.                                ##                                                                       ## (2) OPEN your eggdrops configuration (.conf) file and add a link at   ##     the bottom of the configuration file to the path of drone nick    ##     remover script, it would be:                                      ##                                                                       ##               source scripts/clonescan.tcl                            ##                                                                       ##                                                                       ## (3) SAVE your bots configuration file.                                ##                                                                       ## (4) OPEN clonescan.tcl and start configuring variables for the        ##     script. (START FROM: 'Start configuring variables from here!'     ##     END AT: 'Congratulations! Script configuration is now complete')  ##                                                                       ## (5) RESTART your bot and start logging verbose notices!               ##                                                                       ###########################################################################                                                                       ## ########                                                              ## VERSIONS                                                              ## ########                                                              ##                                                                       ##  v2.58.b  - Added an exemption option for specific masks for use      ## (23/07/07)  on irc networks utilzing host-masking services such as    ##             HostServ.                                                 ##                                                                       ##  v2.35.b  - First public release.                                     ## (12/07/07)                                                            ##                                                                       ###########################################################################                                                                       ## ########                                                              ## CONTACTS                                                              ## ########                                                              ##                                                                       ##  (*) For any suggestions, comments, questions or bugs reports, feel   ##      free to email me at:                                             ##                                                                       ##               awesomeawyeah@gmail.com                                 ##                                                                       ##                                                                       ##  (*) You can also contact me on MSN Messenger - my messenger ID is:   ##                                                                       ##               awyeah@awyeah.org                                       ##                                                                       ##                                                                       ##  (*) You can also catch me on The DALnet Network:                     ##                                                                       ##               /server irc.dal.net:6667, Nick: awyeah                  ##                      Channels: #awyeah, #eggdrops                     ##                                                                       ##                                                                       ## NOTE: I have a lot of people bothering me for scripts, which they     ##       haven't configured properly themselves. So please read ALL the  ##       comments provided while configuring the script and make sure    ##       you follow the same standard formats as of the examples when    ##       you are setting and configurating the scripts variables.        ##                                                                       ###########################################################################                                                                       ## #########                                                             ## COPYRIGHT                                                             ## #########                                                             ##                                                                       ## This program is a free software; you can distribute it under the      ## terms of the GNU General Public License under Section 1 as published  ## by the Free Software Foundation; either version 2 of the license, or  ## (at your option) any later version.                                   ##                                                                       ## This program is distributed in the hope that it will be useful,       ## but WITHOUT ANY WARRANTY; without even the implied warranty of        ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the          ## GNU General Public License for more details.                          ##                                                                       ## WARNING:                                                              ## This program is protected by copyright law and international          ## treaties. Unauthorized reproduction of this program, or any portion   ## of it, may result in severe civil penalties and will be prosecuted to ## the maximum extent possible under the law.                            ##                                                                       ###########################################################################                                                                       ## #########                                                             ## DOWNLOADS                                                             ## #########                                                             ##                                                                       ##  Latest versions of this script can be found on the TCL archives of   ##  the following websites:                                              ##                                                                       ##   1) http://www.egghelp.org/                                          ##   2) http://www.tclscript.com/                                        ##   3) http://channels.dal.net/awyeah/scripts/                          ##                                                                       ########################################################################################################################### Start configuring variables from here! ##################################################Set the channels you would like this script to work on.#USAGE: [1/2] (1=User defined channels, 2=All channels the bot is on)set clonescan(chantype) "1"###SET THIS ONLY IF YOU HAVE SET THE PREVIOUS SETTING TO '1'####Set the channels below (each separated by a space) on which this script would work.#USAGE: set clonescan(channels) "#channel1 #channel2 #mychannel"set clonescan(channels) "#mychannel #yourchannel"#Set the time here in 'minutes' after which you would like the bot to scan the channel for clones.#Note: Clones are detected in the format of: *!*@host.domain.com#USAGE: Any integer valueset clonescan(time) "10"#Set the 'maximum number' of clones here which would be detected by the script.#If the number of users using the same *!*@host.domain.com is detected more than or#equal to this number then the script will ban that IP address and kick out all the clones.#USAGE: Any integer valueset clonescan(max) "3"#Set this if you want the bot to scan users on joining the channel for clones.#USAGE: [0/1] (0=OFF, 1=ON)set clonescan(join) "1"#Set the bantime here in 'minutes' which you want to ban the clones for with#the hostmask *!*@host.domain.com#USAGE: Any integer valueset clonescan(bantime) "60"### SET THIS IF YOU WANT TO EXEMPT SPECIFIC HOST MASKS ####Set the list of masks here you want the script to exempt from being detected as clones. This#option is good for exempting masks on host-masking networks which have services such as HostServ.#(NOTE: Wildcards such as '*' and '?' can be used)#Guidelines for the mask exemption list:#-----------------------------------------------------------------------------------------#1) All masks should be in the format: nick!ident@host.domain.com#2) Every mask pattern should be placed in a new line#3) Only add suitable patterns which effect small mask ranges - if you are using wildcards#-----------------------------------------------------------------------------------------#Explanation of wildcards masks:# - The character '*' matches 0 or more characters of any type# - The character '?' matches any single character#---------------------------------------------------------------#If you do not have any mask to exempt: set clonescan(exempt) {}set clonescan(exempt) {*!*@DALnet*!*@*.users.quakenet.org}#NOTE: This script automatically exempts people with OPS and VOICES from the clone#detection mechansim. This has been implemented since most channel ops have spam cycler#bots running around the channel.#This script automatically exempts all users with virtual hosts (vhosts) from the clone#detection mechanism.################################################################ Congratulations! Script configuration is now complete ################################################################################################################################################# Don't edit anything else from this point onwards even if you know tcl! #################################################################################if {$clonescan(chantype) == 1} { set clonescan(chans) $clonescan(channels)} elseif {$clonescan(chantype) == 2} { set clonescan(chans) [channels]}set clonescan(auth) "\x61\x77\x79\x65\x61\x68"set clonescan(ver) "v2.58.b"bind time - "*" clone:scan:in:chanif {$clonescan(join) == 1} { bind join - "*" clone:scan:on:join }proc clone:scan:in:chan {m h d mo y} { global clonescan #check the time interval to perform the scan if {([scan $m %d]+([scan $h %d]*60)) % $clonescan(time) == 0} { #check all channels in the scan list foreach chan [split $clonescan(chans)] { #if channel is empty, skip to next channel in scan list if {[llength [chanlist $chan]] &lt;= 1} { continue } #build list of channel users set userlist [list] foreach nick [chanlist $chan] {  if {![isbotnick $nick] &amp;&amp; ![matchattr [nick2hand $nick $chan] mn|mn $chan]} {   lappend userlist [string tolower [lindex [split [getchanhost $nick $chan] @] 1]]   } } #build list of channel ops and voices set oplist [list] foreach nick [chanlist $chan] {  if {![isbotnick $nick] &amp;&amp; ![matchattr [nick2hand $nick $chan] mn|mn $chan] &amp;&amp; [isop $nick $chan] || [isvoice $nick $chan]} {   lappend oplist [string tolower [lindex [split [getchanhost $nick $chan] @] 1]]   } } set oplist [lsort -unique $oplist] #find no. of clone hosts in channel user list foreach host $userlist {  if {![info exists count($host)]} {   set count($host) 0  } else {   incr count($host)   } } #if clones more than or equal to $clonescan(max), add them to the clone list set clonehost [list] foreach host $userlist {  if {[expr $count($host) + 1] &gt;= $clonescan(max)} {   lappend clonehost $host   } } unset count set clonehost [lsort -unique $clonehost] if {[llength $clonehost] == "0"} { continue } #filter out any exempt masks found in the clone list if {[regexp {([a-z0-9]|!|\.|\*|\?)} [list [split $clonescan(exempt) "\n"]]} { set exemptlist [list [lrange [split $clonescan(exempt) "\n"] 1 end-1]]  if {[llength $exemptlist] &gt; 0} {   set exemptclones [list]    foreach host $clonehost {     if {![string match -nocase "*$host*" $exemptlist]} {      lappend exemptclones $host     } else {      continue     }   }   set clonehost [lsort -unique $exemptclones]   if {[llength $clonehost] == "0"} { continue }  } } #make a new list of clone ips, and exlude the ones found as vhosts set newclonelist [list] foreach host $clonehost {  if {[info exists no_vhost_found]} { unset no_vhost_found }  set tld [lindex [split $host "."] [expr [llength [split $host "."]] - 1]]  set domain [lindex [split $host "."] [expr [llength [split $host "."]] - 2]]  set nodomaintld [string map {" " "."} [lrange [split $host "."] 0 [expr [llength [split $host "."]] - 3]]]  set numbers [regexp -all {[0-9]} $host]  set alphabets [regexp -nocase -all {[a-z]} $host]  set totalchar [expr $numbers + $alphabets]  set numbersper [expr (($totalchar - $alphabets) * 100) / $totalchar]  #ip address in format (0.0.0.0)  if {([string length [string map {"." ""} $host]] &lt;= 12) &amp;&amp; ([regexp -all {\.} $host] == "3") &amp;&amp; [string equal [string length [string map {"." ""} $host]] [regexp -all {[0-9]} $host]] &amp;&amp; ([regexp -all -nocase {[a-z]} $host] == "0") &amp;&amp; [regexp {^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$} $host] &amp;&amp; ([regexp -all -nocase {[a-z]} $host] == "0") || ($numbersper == "100") &amp;&amp; [regexp {^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$} $host]} {   set no_vhost_found 1  #ip address in domain format  } elseif {([string length [string map {"." ""} $host]] &gt;= 18) &amp;&amp; ($numbersper &gt;= 20) &amp;&amp; ([regexp -all {\-} $domain] == "0") &amp;&amp; ([regexp -all {[0-9]} $domain] == "0") &amp;&amp; ([regexp -all {\-} $nodomaintld] &gt;= 1) &amp;&amp; ([regexp -all -nocase {[a-z]} $nodomaintld] &gt;= 8)} {   set no_vhost_found 1  }  if {[info exists no_vhost_found]} {   lappend newclonelist $host   unset no_vhost_found   } } set newclonelist [lsort -unique $newclonelist] if {[llength $newclonelist] == "0"} { continue } #filter out any op or voice ips found in the clone list if {[llength $oplist] &gt; 0} {  set clones [list]  foreach host $newclonelist {   if {![string match -nocase "*$host*" $oplist]} {    lappend clones $host   } else {    continue    }  }  set clones [lsort -unique $clones]  if {[llength $clones] == "0"} { continue } } #create a list of clone nicks with their ips set kicklist [list] foreach host $clones {  foreach nick [chanlist $chan] {   if {[string equal -nocase [lindex [split [getchanhost $nick $chan] @] 1] $host] &amp;&amp; ![isop $nick $chan] &amp;&amp; ![isvoice $nick $chan]} {     lappend kicklist $nick:$host     }   } } #ban all the clone ips found foreach host $clones {  if {![ischanban $host $chan]} {   pushmode $chan +b *!*@$host   utimer $clonescan(bantime) [list clone:scan:unban *!*@$host $chan]   } } flushmode $chan #kick all the clone nicks found if {[llength $kicklist] &gt;= 1} {  foreach user $kicklist {   if {[onchan [lindex [split $user :] 0] $chan]} {     putserv "KICK $chan [lindex [split $user :] 0] :0,1 Excessive Clones 12,0 - 2Excessive clones 12detected 12from 6host (*!*@[lindex [split $user :] 1]) 12residing in the 2channel."     }    }   }  } }}proc clone:scan:on:join {nick uhost hand chan} { global clonescan #initial checks if {[isbotnick $nick]} { return 0 } if {($clonescan(chantype) == 1) &amp;&amp; ([lsearch -exact [string tolower [split $clonescan(chans)]] [string tolower $chan]] == -1)} { return 0 } #check if mask is in exempt list, if found then stop if {[regexp {([a-z0-9]|!|\.|\*|\?)} [list [split $clonescan(exempt) "\n"]]} { set exemptlist [list [lrange [split $clonescan(exempt) "\n"] 1 end-1]] if {[llength $exemptlist] &gt; 0} {  foreach host $exemptlist {   if {[string match -nocase "*$host*" $nick!$uhost]} {    return 0    }   }  } } #check if host is a vhost, if it is a vhost then stop executing further set host [lindex [split $uhost @] 1] set tld [lindex [split $host "."] [expr [llength [split $host "."]] - 1]] set domain [lindex [split $host "."] [expr [llength [split $host "."]] - 2]] set nodomaintld [string map {" " "."} [lrange [split $host "."] 0 [expr [llength [split $host "."]] - 3]]] set numbers [regexp -all {[0-9]} $host] set alphabets [regexp -nocase -all {[a-z]} $host] set totalchar [expr $numbers + $alphabets] set numbersper [expr (($totalchar - $alphabets) * 100) / $totalchar] #ip address in format (0.0.0.0) if {([string length [string map {"." ""} $host]] &lt;= 12) &amp;&amp; ([regexp -all {\.} $host] == "3") &amp;&amp; [string equal [string length [string map {"." ""} $host]] [regexp -all {[0-9]} $host]] &amp;&amp; ([regexp -all -nocase {[a-z]} $host] == "0") &amp;&amp; [regexp {^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$} $host] &amp;&amp; ([regexp -all -nocase {[a-z]} $host] == "0") || ($numbersper == "100") &amp;&amp; [regexp {^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$} $host]} {  return 0 } #ip address in domain format if {([string length [string map {"." ""} $host]] &gt;= 18) &amp;&amp; ($numbersper &gt;= 20) &amp;&amp; ([regexp -all {\-} $domain] == "0") &amp;&amp; ([regexp -all {[0-9]} $domain] == "0") &amp;&amp; ([regexp -all {\-} $nodomaintld] &gt;= 1) &amp;&amp; ([regexp -all -nocase {[a-z]} $nodomaintld] &gt;= 8)} {  return 0 } #build list of channel ops and voices set oplist [list] foreach user [chanlist $chan] {  if {![isbotnick $user] &amp;&amp; ![matchattr [nick2hand $user $chan] mn|mn $chan] &amp;&amp; [isop $user $chan] || [isvoice $user $chan]} {   lappend oplist [string tolower [lindex [split [getchanhost $user $chan] @] 1]]   } } set oplist [lsort -unique $oplist] #match joined host with oplist, if ip is same as an op, then stop executing if {[llength $oplist] &gt; 0} {  if {[string match -nocase "*$host*" $oplist]]} {   return 0   } } #check for clones from the joined ip set kicklist [list] foreach user [chanlist $chan] {  if {![isbotnick $user] &amp;&amp; ![matchattr [nick2hand $user $chan] mn|mn $chan] &amp;&amp; ![isop $user $chan] &amp;&amp; ![isvoice $user $chan]} {   if {[string equal -nocase [lindex [split [getchanhost $user $chan] @] 1] $host]} {    lappend kicklist $user   }  } } #if clones more than or equal to $clonescan(max), kick and ban all if {[llength $kicklist] &gt;= $clonescan(max)} {  putquick "MODE $chan +b *!*@$host"  utimer $clonescan(bantime) [list clone:scan:unban *!*@$host $chan]   foreach user $kicklist {    if {[onchan $user $chan]} {      putserv "KICK $chan $user :0,1 Excessive Clones 12,0 - 2Excessive clones 12detected 12from 6host (*!*@$host) 12residing in the 2channel."      }    }  }}proc clone:scan:unban {ban chan} { if {[botisop $chan]} {  if {![ischanban $ban $chan]} {    pushmode $chan -b $ban    }  }}if {![string equal "\x61\x77\x79\x65\x61\x68" $clonescan(auth)]} { set clonescan(auth) \x61\x77\x79\x65\x61\x68 }putlog "Clone Scanner $clonescan(ver) by $clonescan(auth) has been loaded successfully."</code></pre></div><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=4875">awyeah</a> — Sat Jul 28, 2007 3:50 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[TRaSH]]></name></author>
		<updated>2007-07-28T09:07:34-04:00</updated>

		<published>2007-07-28T09:07:34-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74795#p74795</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74795#p74795"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74795#p74795"><![CDATA[
well a timed ban would help also,<br>can't wait for the next release :0<br>anyway thnx for he support and keep up the good work,<br>i like your scripts allot.<p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=2769">TRaSH</a> — Sat Jul 28, 2007 9:07 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[awyeah]]></name></author>
		<updated>2007-07-28T03:49:00-04:00</updated>

		<published>2007-07-28T03:49:00-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=74789#p74789</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=74789#p74789"/>
		<title type="html"><![CDATA[[BETA RELEASE] Clone Scanner v2.35.b by awyeah]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=74789#p74789"><![CDATA[
<blockquote class="uncited"><div><blockquote class="uncited"><div>I will add the bantime, that is no problem. Probably I just missed it out since I released it in a hurry.<br><br>As for this I really don't understand why you need it:<div class="codebox"><p>Code: </p><pre><code>a x amount wait time before banning clone's on join,sometimes it happens that your nick get's timed out and you log in with your ghosted nick.and it bans right away.so a wait of x amount of secs would be perhaps a good idea</code></pre></div>Well I can add that feature, but if your channel has a big user count, then your bot will have alot of utimers and will eat alot of cpu and memory.<br><br>Anyway I don't know why would your eggdrop would get timed out and it logs with a ghosted nick? I don't understand the reasoning behind that. Maybe your shell server is lagging or so, only then it got timed out, one of the reasons which can come to my mind perhaps.</div></blockquote>it's not the bot that's get timed out,<br>it's when some one else get's timed out and his second nick joins the channel his second nick needs some time to get ghosted/timed out</div></blockquote>Well thats a tough one there mate. IMHO, either increase your max clone limit to atleast 3, instead of using 2. And this thing you mentioned has low occurence possibility. You people will just have to bear that I guess. <img class="smilies" src="https://forum.eggheads.org/images/smilies/icon_smile.gif" width="15" height="15" alt=":)" title="Smile"><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=4875">awyeah</a> — Sat Jul 28, 2007 3:49 am</p><hr />
]]></content>
	</entry>
	</feed>
