mIRC Home    About    Download    Register    News    Help

Print Thread
#156998 21/08/06 06:06 AM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
Is it possible to detect a drone bot on join like when the user is in 8 channel + and he does not have voice or op access in any of those channels?

#156999 21/08/06 06:21 AM
Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
I'm going to presume that you don't want the user staying in your channel if they meet your qualifications as a drone bot.
Based on that, this should handle your requirements
Code:
 on @!*:join:#:{
  set %chan $chan
  .enable #drone.bot
  .whois $nick
}
#drone.bot off
raw 319:*:{
  if $numtok($3-,32) > 8 && !$istok(@ +,$3-,32) {
    .ban -k %chan $2 Drone Bot
  }
  halt
}
raw 318:*:{
  .disable #drone.bot
  haltdef
}
#drone.bot end
 

#157000 21/08/06 06:38 AM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
I use a check in dialog for on/off and my script already do a silence whois so if this ok?

on @!*:join:#:{
if ( %drone == off ) || ( %drone == $null ) || ($nick isop #) || (%options.exempt == on) { return }
raw 319:*:{
if $numtok($3-,32) > 8 && !$istok(@ +,$3-,32) {
.ban -k %chan $2 14Drone Bot Detected
}
halt

#157001 21/08/06 06:50 AM
Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
Close
Code:
 on @!*:join:#:{
if (%drone == off) || !%drone || (%options.exempt == on) { return }
else set %chan $chan
}
raw 319:*:{
if $numtok($3-,32) > 8 && !$istok(@ +,$3-,32) {
.ban -k %chan $2 14Drone Bot Detected
}
halt
}
 


Using !%drone is the same as %drone == $null
Checking $nick isop # in an on join event is useless, since all nicks are regular users at the time of joining. It is impossible for a nick to join a channel and already have ops status, so I removed that comparison.

#157002 21/08/06 07:02 AM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
Thx alost I didnt know that.

#157003 21/08/06 01:09 PM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
Can this work without this part because it does a whois in the channel and I dont want to see the whois.
else set %chan $chan

Last edited by Garou; 21/08/06 01:56 PM.
#157004 21/08/06 03:22 PM
Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
No. If you don't want to see the whois, use my original script in a different remote. The problem you're running into is the fact that you tried to incorporate part of my code with part of another code you already have, without understanding how to do so.

There is no way (that I know of) to do your request without having that set line.

#157005 21/08/06 03:36 PM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
Yes i did thx but is it possible to send the whois in a private @window then?

#157006 21/08/06 03:48 PM
Joined: Mar 2004
Posts: 210
F
Fjord artisan
Offline
Fjord artisan
F
Joined: Mar 2004
Posts: 210
It's possible, using raws, to send the whois results to the bit bucket (make them not show anywhere).

#157007 21/08/06 03:50 PM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
Anywhere but in the channel :P
Or maybe the trigger should be on whois not on join?

Last edited by Garou; 21/08/06 04:04 PM.
#157008 21/08/06 04:09 PM
Joined: Jan 2003
Posts: 3,012
Hoopy frood
Offline
Hoopy frood
Joined: Jan 2003
Posts: 3,012
Options DIalog (alt+o) -> IRC Category on left -> "Show in active:" on right, uncheck whois.


-KingTomato
#157009 21/08/06 04:16 PM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
The whois still show in the channel. The only way is to remove %chan from variable but then it wont whois at all.

#157010 21/08/06 09:45 PM
Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
I don't really like to do this, but if you'll post the code you were using before the changes that were made in order to incorporate the code that I wrote, then I'll go through the code and re-write it as necessary.

It looks to me like you've got a conflict in the code somewhere, since you stated that you had a silent whois running previous to the incorporation of my code, and now the whois is no longer silent.

#157011 22/08/06 01:56 PM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
The silence whois is integrated in my script so I cant show you the codes. This is wat i am using now. This codes adds %chan in the variable thats why I see the whois in the channel.

on @!*:join:#:{
if (%drone == off) || !%drone || (%options.exempt == on) { return }
else set %chan $chan
}
raw 319:*:{
if $numtok($3-,32) > 9 && !$istok(@ +,$3-,32) {
.ban -k %chan $chan $2 2 14Drone Bot Detected
}
halt
}

#157012 22/08/06 10:08 PM
Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
You can't use $chan inside the raw event, since it will return $null

Since you can't show me the script that you're currently using for the silent whois, there's only one possibility that I'm aware of as a solution.

Put my code into it's own remote, and let it stand alone. This will allow the two scripts to run independent of each other.

The code that you have posted here WILL NOT WORK

Also, there was no need to start a new topic regarding this problem.


Link Copied to Clipboard