mIRC Home    About    Download    Register    News    Help

Print Thread
#171424 24/02/07 08:13 AM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
Can someone please make a auto greet kick with time ban and with kick message?

Garou #171426 24/02/07 08:53 AM
Joined: Aug 2004
Posts: 7,168
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,168
This isn't realistically possible, as some auto-greets are sent to the person via pm, or notice, and some are sent to the channel.

Also, there's no way of knowing (for sure) if the greeting was automatic or if the person typed it in or has an alias that they can call up which does the greeting.

Garou #171431 24/02/07 10:02 AM
Joined: Jan 2007
Posts: 1,155
D
Hoopy frood
Offline
Hoopy frood
D
Joined: Jan 2007
Posts: 1,155
I don't fully understand what you want to kick on. Maybe if you explain it more we can come up with a better idea how to do what you want.

DJ_Sol #171475 24/02/07 07:13 PM
Joined: Aug 2006
Posts: 469
G
Garou Offline OP
Fjord artisan
OP Offline
Fjord artisan
G
Joined: Aug 2006
Posts: 469
Some send autogreet msg to users on login and its anything from hi to spam. Ok thx we just have to manualy kick then. Thx.

Garou #171477 24/02/07 07:16 PM
Joined: Oct 2004
Posts: 8,061
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Oct 2004
Posts: 8,061
Well... it depends.

You can have it watch for on NOTICE and on TEXT events when you join the channel and either automatically kick/ban the people if it happens within X seconds of joining. That method can end up kicking/banning legitimate people. Or, you can watch those same events for specific text when you join and if it contains that specific text, then you kick/ban them. That method would be safer, but it requires that you figure out all of the possible messages that you'd consider bad.

Riamus2 #171483 24/02/07 08:48 PM
Joined: Jan 2007
Posts: 1,155
D
Hoopy frood
Offline
Hoopy frood
D
Joined: Jan 2007
Posts: 1,155
I guess if you really wanted you could ...

Code:
on !*:join:#:/set -u3 %joinchk $true

on *:text:*:#:{
if (!%joinchk) return
if ($1-4 == %joinspam [ $+ [ $nick ] ]) {
kick and ban them
unset %joinspam [ $+ [ $nick ] ]
halt
}
set %joinspam [ $+ [ $nick ] ] $1-4
}


This is just an idea. I personally wouldnt use a variable. I can imagine your variable list getting very full, very quickly.

EDIT: Basically, on join if nick is not me, set a variable for 3 seconds. If this variable is on and someone says something, script will log the first 4 words they say.

On the next join, if they say the exact same for words then they will get kicked and banned.

Last edited by DJ_Sol; 24/02/07 08:52 PM.
DJ_Sol #171488 24/02/07 09:18 PM
Joined: Oct 2004
Posts: 8,061
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Oct 2004
Posts: 8,061
Not a bad method and I agree about the variables being an issue. I might suggest using a hash table for that.

Also, you want to change the on TEXT event to not use #, but to use ? instead. On join spam is PM or NOTICE and not in the channel itself or else it would be easily noticed.

Riamus2 #171489 24/02/07 09:24 PM
Joined: Jan 2007
Posts: 1,155
D
Hoopy frood
Offline
Hoopy frood
D
Joined: Jan 2007
Posts: 1,155
Oh I envisioned it wrong then. I thought he is sitting in his room full of LOTS of people, for this code to be neccesary, otherwise I would just say, "Oi!!! You, stop spamming!!"
So he is owner and someone joins and someone else in the room spams them. Next person joins, same person spams them too.

You can't see their whisper. If it was a whisper spam Id just kick em.

on me:join:#:/set -u3 %mejoin [ $+ [ $chan ] ] $true
on *:text:*:?:{
if (!%mejoin [ $+ [ $comchan($nick,1) ] ]) halt
ban and kick $nick for spamming!!!
}

Last edited by DJ_Sol; 24/02/07 09:27 PM.
DJ_Sol #171493 24/02/07 09:31 PM
Joined: Oct 2004
Posts: 8,061
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Oct 2004
Posts: 8,061
That really won't help. It is entirely possible for someone to PM you "hi" within 3 seconds. You'd have to check what was said (or at least the $len) for it to be helpful, I think. You can estimate that people can type up to perhaps 10-15 characters within 3 seconds.

Also, your use of $comchan wouldn't work if you were in multiple channels with the person.

Riamus2 #171495 24/02/07 09:36 PM
Joined: Jan 2007
Posts: 1,155
D
Hoopy frood
Offline
Hoopy frood
D
Joined: Jan 2007
Posts: 1,155
yeah I dont like comchan, but for the sake of the vast array of networks we all use I chose it in the example.

I think on join, if you get a pm within 3 seconds from the exact moment you joined a channel it is a script response. Dont forget to calculate the time it takes to open a whisper window, type and hit enter. I think you would really have to be trying to beat a script to do this. Or you can decrease the timer length.


Link Copied to Clipboard