mIRC Home    About    Download    Register    News    Help

Print Thread
Joined: Jul 2006
Posts: 242
H
HaleyJ Offline OP
Fjord artisan
OP Offline
Fjord artisan
H
Joined: Jul 2006
Posts: 242
Hello.
I have a small script that ops certain people when they enter a channel
I would like to tweak it so that it would only respond to nicks that have identified to nickserv, if you have the time could the reply be simple and also have a small explanation on how the script works. thankyou

Here is my current script.

on op:JOIN:#whatever: / mode $chan +o $nick

Thankyou


Newbie
Joined: Apr 2006
Posts: 400
K
Fjord artisan
Offline
Fjord artisan
K
Joined: Apr 2006
Posts: 400
are you an IRCop on that specific server? idk how to find out if they are identified, using scripts, but, if you are an IRCop, let us know laugh.


-Kurdish_Assass1n
Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
If you also have chanserv, then try checking
/msg chanserv help aop
/msg chanserv help sop

If these options are available, they'll work better than a script

Joined: Jul 2006
Posts: 242
H
HaleyJ Offline OP
Fjord artisan
OP Offline
Fjord artisan
H
Joined: Jul 2006
Posts: 242
Hi
Am not a IRC-OP and we do have chanserv. Is there really no way for mIRC to check if a nick is identified with its nickserv pass? :-( Thanks for all the help though.


Newbie
Joined: Jul 2006
Posts: 242
H
HaleyJ Offline OP
Fjord artisan
OP Offline
Fjord artisan
H
Joined: Jul 2006
Posts: 242
oh
And i dont want to use chanserv, i know its better then a script but i need to know also for other reasons. Say if you have a bot that only certain users can access, and say they are offline a user could easily change to a nick that has access with that bot for a few seconds op himself and change back and stuff like that. But if mIRC could check if he was identified it would be easier. <3


Newbie
Joined: Apr 2006
Posts: 400
K
Fjord artisan
Offline
Fjord artisan
K
Joined: Apr 2006
Posts: 400
I'm not the best script, nor even close to being it, but, I doubt there is a way to find if a nick is identified, in scripting. sorry frown


-Kurdish_Assass1n
Joined: Jul 2006
Posts: 242
H
HaleyJ Offline OP
Fjord artisan
OP Offline
Fjord artisan
H
Joined: Jul 2006
Posts: 242
Ok frown
I also dont script but i thought anything could be done with it. Is there no mode change or something in the nick when it identifies like a +r or something. IDK am just guessing.


Newbie
Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
Subject to nickserv having a status command available, the following has been tested and works (although it was tested with the kick command rather than kill)
Code:
 on *:join:#:{
  $+(.timer,$nick) 1 60 check.nick $nick
}
alias check.nick {
  .enable #nickserv.check
  set %nick $1
  .ns status $1
}
#nickserv.check off
on *:text:*:*:{
  if ($nick == nickserv) &amp;&amp; (%nick isin $1-) &amp;&amp; ($gettok($1-,-1,32) &lt; 2) {
    .kill %nick
  }
  .disable #nickserv.check
}
#nickserv.check end
 


If this does not work on your network, relay the network information and I'll connect and see what needs modifying (if possible). The script worked on 2 of the 4 networks that I'm on, needed a small modification for the 3rd, but the 4th didn't relay the required information from nickserv.

Last edited by RusselB; 02/07/06 12:47 AM.
Joined: Jul 2006
Posts: 242
H
HaleyJ Offline OP
Fjord artisan
OP Offline
Fjord artisan
H
Joined: Jul 2006
Posts: 242
Thanks alot, Amazing stuff


Newbie
Joined: Jul 2006
Posts: 10
O
Pikka bird
Offline
Pikka bird
O
Joined: Jul 2006
Posts: 10
Quote:
Subject to nickserv having a status command available, the following has been tested and works (although it was tested with the kick command rather than kill)
Code:
 on *:join:#:{
  $+(.timer,$nick) 1 60 check.nick $nick
}
alias check.nick {
  .enable #nickserv.check
  set %nick $1
  .ns status $1
}
#nickserv.check off
on *:text:*:*:{
  if ($nick == nickserv) &amp;&amp; (%nick isin $1-) &amp;&amp; ($gettok($1-,-1,32) &lt; 2) {
    .kill %nick
  }
  .disable #nickserv.check
}
#nickserv.check end
 


If this does not work on your network, relay the network information and I'll connect and see what needs modifying (if possible). The script worked on 2 of the 4 networks that I'm on, needed a small modification for the 3rd, but the 4th didn't relay the required information from nickserv.


i would suggest with the code using /msg nickserv status $1 because not all networks allow /ns ... the other option is to use /nickserv which almost every IRCd comes with pre setup for nickserv@services.your.net and most common Services allow u to use nickserv instead of those big networks like DALnet which require NickServ@Services.Dal.Net ...


Code:
 on *:join:#:{
  $+(.timer,$nick) 1 60 check.nick $nick
}
alias check.nick {
  .enable #nickserv.check
  set %nick $1
[color:orange].msg nickserv status $1[/color]
}
#nickserv.check off
on *:text:*:*:{
  if ($nick == nickserv) &amp;&amp; (%nick isin $1-) &amp;&amp; ($gettok($1-,-1,32) &lt; 2) {
    .kill %nick
  }
  .disable #nickserv.check
}
#nickserv.check end


Link Copied to Clipboard