mIRC Homepage

drone bot

Posted By: Garou

drone bot - 21/08/06 06:06 AM

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?
Posted By: RusselB

Re: drone bot - 21/08/06 06:21 AM

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
 
Posted By: Garou

Re: drone bot - 21/08/06 06:38 AM

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
Posted By: RusselB

Re: drone bot - 21/08/06 06:50 AM

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.
Posted By: Garou

Re: drone bot - 21/08/06 07:02 AM

Thx alost I didnt know that.
Posted By: Garou

Re: drone bot - 21/08/06 01:09 PM

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
Posted By: RusselB

Re: drone bot - 21/08/06 03:22 PM

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.
Posted By: Garou

Re: drone bot - 21/08/06 03:36 PM

Yes i did thx but is it possible to send the whois in a private @window then?
Posted By: FNar

Re: drone bot - 21/08/06 03:48 PM

It's possible, using raws, to send the whois results to the bit bucket (make them not show anywhere).
Posted By: Garou

Re: drone bot - 21/08/06 03:50 PM

Anywhere but in the channel :P
Or maybe the trigger should be on whois not on join?
Posted By: KingTomato

Re: drone bot - 21/08/06 04:09 PM

Options DIalog (alt+o) -> IRC Category on left -> "Show in active:" on right, uncheck whois.
Posted By: Garou

Re: drone bot - 21/08/06 04:16 PM

The whois still show in the channel. The only way is to remove %chan from variable but then it wont whois at all.
Posted By: RusselB

Re: drone bot - 21/08/06 09:45 PM

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.
Posted By: Garou

Re: drone bot - 22/08/06 01:56 PM

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
}
Posted By: RusselB

Re: drone bot - 22/08/06 10:08 PM

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.
© 2020 mIRC Discussion Forums