mIRC Home    About    Download    Register    News    Help

Print Thread
Joined: Mar 2013
Posts: 6
L
Nutrimatic drinks dispenser
OP Offline
Nutrimatic drinks dispenser
L
Joined: Mar 2013
Posts: 6
For some reason the script I am noobishly trying to write is not working. The server message "mynick Nickname is already in use." is not triggering this part of my script "on *:NOTICE:*Nickname is already in use*:*:{ if ($network == SwiftIRC) { .msg nickserv recover mynick mypass } }" I have been reading a lot but I can't seem to figure this out. See server window output and script below. Does anyone know why the script is not initiating the recover/release part?

Server window:===================================================================
10 Mar 11:09:31 P * [10053] Software caused connection abort
-
10 Mar 11:09:31 P * Disconnected
-
10 Mar 11:09:49 P * Connecting to irc.swiftirc.net (6669)
-
10 Mar 11:09:55 P -hades.de.eu.SwiftIRC.net- *** Looking up your hostname...
-
10 Mar 11:09:55 P -hades.de.eu.SwiftIRC.net- *** Found your hostname (cached)
-
10 Mar 11:09:55 P -hades.de.eu.SwiftIRC.net- *** Checking ident...
-
10 Mar 11:09:58 P -hades.de.eu.SwiftIRC.net- *** No ident response; username prefixed with ~
-
mynick Nickname is already in use.

mynick Nickname is already in use.
-
10 Mar 11:10:02 P -NickServ- Your nick isn't registered.
-
mynick Nickname is already in use.
-
10 Mar 11:10:15 P * Your nick is now alternatenick
=================================================================


Script============================================================
on *:start:{
.server irc.swiftirc.net:+6697 -i mynick
}

on *:connect:{
if ($network == SwiftIRC) {
/nick mynick
.msg nickserv identify mypass
}
}

on *:NOTICE:*Nickname is already in use*:*:{
if ($network == SwiftIRC) { .msg nickserv recover mynick mypass }
}

on *:NOTICE:*User claiming your nick has been killed*:*:{
if ($network == SwiftIRC) { .msg nickserv release mynick mypass }
}

on *:NOTICE:*Services' hold on your nick has been released*:*:{ /nick mynick }

on *:NOTICE:*nick, type*:*:{
if ($network == SwiftIRC) { .msg nickserv identify mypass }
}

on *:NOTICE:*Your nick isn't registered*:*:{
if ($network == SwiftIRC) { /nick mynick }
}


on *:NOTICE:*Password accepted*:*:{
if ($network == SwiftIRC) { join #myChan mypass }
}

on *:JOIN:#mychan: {
if ($network == SwiftIRC) {
/mode #mychan +k chanpass
}
}

Joined: Oct 2012
Posts: 164
D
Vogon poet
Offline
Vogon poet
D
Joined: Oct 2012
Posts: 164
Originally Posted By: LoneThistle
"on *:NOTICE:*Nickname is already in use*:*:{ if ($network == SwiftIRC) { .msg nickserv recover mynick mypass } }"
That's not a notice, it's raw 433 wink

Joined: Mar 2013
Posts: 6
L
Nutrimatic drinks dispenser
OP Offline
Nutrimatic drinks dispenser
L
Joined: Mar 2013
Posts: 6
Sweet, so I just put,

"on *:Raw 433:*Nickname is already in use*:*:{ if ($network == SwiftIRC) { .msg nickserv recover mynick mypass } }"

?

Joined: Oct 2012
Posts: 164
D
Vogon poet
Offline
Vogon poet
D
Joined: Oct 2012
Posts: 164
No, raw events don't have quite the exact same syntax...
Code:
raw 433:*:{
  if ($network == SwiftIRC) && ($2 == $mnick) {
    .msg nickserv recover mynick mypass
  }
}

That will only send the recover if it is $mnick that's in use.

See /help raw events

Edit:
Or you can do this way
Code:
raw 433:$(* $mnick *):{

Last edited by Deega; 11/03/13 04:49 AM.
Joined: Mar 2013
Posts: 6
L
Nutrimatic drinks dispenser
OP Offline
Nutrimatic drinks dispenser
L
Joined: Mar 2013
Posts: 6
Thank you very much for your help! smile

Joined: Mar 2012
Posts: 13
D
Pikka bird
Offline
Pikka bird
D
Joined: Mar 2012
Posts: 13
You could simply script this method like I do:

on 1:connect: {
echo Network Name: $network
if ($network = NameFromAbove) { /Ghost <Nick1> <Pass1> }
if ($network = Network2) { /Ghost <Nick2> <Pass2> }
}
alias ghost { /NickServ Ghost $1 $2 | /Nick $1 | /NickServ Identify $2 }
alias release { /NickServ Release $1 $2 | /Nick $1 | /NickServ Identify $2 }

Then if you do connect and your nickname is locked by services, simply use /RELEASE <nick> <pass> and it will automatically do what it needs.

Joined: Dec 2002
Posts: 1,541
L
Hoopy frood
Offline
Hoopy frood
L
Joined: Dec 2002
Posts: 1,541
I used a different method, and it certainly is something for you to think about in regards to other ways to do things. I would log onto my main network, if any of my nicknames were in use and NOT me(checked by the notify list), I would auto ghost them. When the nickname dropped off, if it my was primary nickname, I'd change back to it and identify, if not, they would just stay offline and I'd keep my nickname as the primary nickname. The reason I did it this way, was if somebody used my nickname AFTER I logged on, I'd find who was using it, and ghost it and it worked very well. it was quite efficient. of course this was, oh, 7 years ago or so, so things may have changed a bit.


Those who fail history are doomed to repeat it
Joined: Mar 2013
Posts: 6
L
Nutrimatic drinks dispenser
OP Offline
Nutrimatic drinks dispenser
L
Joined: Mar 2013
Posts: 6
I received a pm asking if I ever figured this out. I did thanks to the guys here. Here is an edited part of one of my autojoin scripts that I am posting here hoping that maybe it will help someone else. I put some comments in there explaining what little I can. I am a noob and welcome any suggested changes or criticism from others smile

Code:
##Comments: I am a noob but this method of autojoin has work for me. Maybe it can help you :) I changed the actual channel, bot and nick names##
##Comments: The "-i Nick" is used to specify a certian nick for each network.##
##Comments: The ":+PORT-Number" is used to specify the SSL port to connect too. I highly recommend SSL to keep networks seeing everything you see and type. Usually a server will list the available SSL ports during connect when all of the server info rolls down the server connect screen.##
##Comments: The "-m" is used to open a new window for the server. -m should be used for every network after the first.##

on *:start:{
  .server irc.anonops.com:+6697 -i YourNick
  .server -m irc.p2p-network.net:+7000 -i YourNick
  .server -m irc.iptorrents.com:+7000 -i YourNick
  .server -m irc.p2pirc.org:+7000 -i YourNick
  .server -m irc.blackcats-games.net:+6697 -i YourNick
  .server -m irc.bitspyder.net:+7000 -i YourNick
  .server -m irc.geekshed.net:+6697 -i YourNick
  .server -m irc.lostirc.org:+6697 -i YourNick
  .server -m irc.broadcasthe.net:+6697 -i YourNick
  .server -m irc.what-network.net:+6697 -i YourNick
  .server -m irc.bend.me.uk:+6697 -i YourNick
  .server -m irc.thedvdclub.org:+7000 -i YourNick
}
##Comment: .server -m irc.WhateverYourServerURLIs.org:+Server'sSSLPort -i YourNick##
##Comment: You will need the SSL dll files for mirc. Use Google##


##Comment: The "on *:connect:{" section is used here to tell mirc what to do when connected to each network. I use it to identify my nick with my password. I use a different password for each server. Mirc identifys a server by it's server name. You can see your server names on the server tree at the left of the mirc gui when connected to your networks. You will see "ServerName YourNick"##

on *:connect:{
  if ($network == AnonOps) { 
    .msg nickserv identify YourAnonOpsPass
  }
  if ($network == P2P-NET) { 
    .msg nickserv identify YourP2P-NETPass
  }
  if ($network == P2PIRC) { 
    /nick YourNick
##Comment: Some networks love changing nicks. When I have this problem, I add /nick MyNick to the "on *:connect:{" command to automatically change it back on connect.##
    .msg nickserv identify YourP2PIRCPass
  }
  if ($network == BCnet) { 
    /nick YourNick
    .msg nickserv identify YourBCnetPass
    .msg SomeBot'sName SomeRandomAssignedSintax TheBotPassForInviteToInviteOnlyChan
	
##Comment: Some channels require a bot to invite you to an invite only chan. These are fake examples of how to send an invite command to a bot. Also note that if the invite only chan requires your nick to be registered and identified before joining then send the .msg to the bot on the "on *:NOTICE:*Password accepted*:*:{" part of the script.##
	
    .msg SillySally letmein ThisAreMyPasswordHere
    .msg TyrantBill kissmyass SecretPassword
  }
  if ($network == IPTorrents) { 
    /nick YourNick
    .msg nickserv identify YourIPTorrentsPass
  }
  if ($network == Spyder-Networks) { 
    .msg nickserv identify YourSpyder-NetworksPass
  }
    if ($network == GeekShed) { 
    .msg nickserv identify YourGeekShedPass
  }
  if ($network == LostIRC) { 
    .msg nickserv identify YourLostIRCPass
  }
  if ($network == BroadcasTheNet) { 
    .msg nickserv identify YourBroadcasTheNetPass
  }
  if ($network == What-Network) { 
    .msg nickserv identify YourWhat-NetworkPass
  }
  if ($network == Bend) { 
    .msg nickserv identify YourBendPass
    join #acid-uploads
  }
  if ($network == TheDVDClub.Org) { 
    .msg nickserv identify YourTheDVDClub.OrgPass
  }
  if ($network == WhateverYourServerNameIs) { 
    .msg nickserv identify WhateverYourServerNameIsPass
  }
}

##
##Comment: For me, Ghost works better on some networks, recover works better on others. raw 433: is issued when the server already has someone connected using your nick, or when the server hasn't flushed the nick you were using when you disconnected. Use raw 433:*:{ DoStuffHere when you want to handle your nick being in use automatically.##
##

raw 433:*:{ 
  if ($network == AnonOps) { .msg nickserv recover YourNick Yourpass }
  if ($network == P2P-NET) { .msg nickserv ghost YourNick Yourpass }
  if ($network == P2PIRC) { .msg nickserv ghost YourNick Yourpass }
  if ($network == BCnet) { .msg nickserv ghost YourNick Yourpass }
  if ($network == IPTorrents) { .msg nickserv ghost YourNick Yourpass }
  if ($network == Spyder-Networks) { .msg nickserv ghost YourNick Yourpass }
  if ($network == GeekShed) { .msg nickserv ghost YourNick Yourpass }
  if ($network == LostIRC) { .msg nickserv ghost YourNick Yourpass }
  if ($network == BroadcasTheNet) { .msg nickserv ghost YourNick Yourpass }
  if ($network == What-Network) { .msg nickserv ghost YourNick Yourpass }
  if ($network == Bend) { .msg nickserv ghost YourNick Yourpass }
  if ($network == TheDVDClub.Org) { .msg nickserv ghost YourNick Yourpass }
}


##Comment: After a successfull ghost or recover a notice will show up in the server window. Copy and paste all or part of that notice between the stars on *:NOTICE:*paste here the notice that shows on your particular server*:*:{ See the two example notices below that were use in my particular case##

on *:NOTICE:*Whatever your server said after ghost/recover*:*:{
  if ($network == YourNetworkname) { .msg nickserv release YourNick YourPass }
}

##Comment: These were used for AnonOps.##
on *:NOTICE:*User claiming your nick has been killed*:*:{
  if ($network == AnonOps) { .msg nickserv release YourNick RegisteredPassword }
}

##Comment: This changes my nick back once it has been released##
on *:NOTICE:*Services' hold on your nick has been released*:*: {
  if ($network == AnonOps) { /nick YourNick }
}

##Comment: I changed channel names and bot names out of respect for other networks.##
on *:NOTICE:*Password accepted*:*:{
  if ($network == AnonOps) { join #YourChan ChanPass }
  if ($network == P2PIRC) { join #chan1 | join #chan2 | join #chan3 | join #chan4 }
  if ($network == IPTorrents) { join #chan1 | join #chan2 | join #chan3 }
  if ($network == P2P-NET) { .msg IChangedTheBotsNameToThis invite InvitePass | .msg AnotherInviteBot letmein MyNick InvitePass | .msg AndYetAnotherInviteBot invite MyNick MyPass | join #AnotherChan | join #AnotherChan2 | join #AnotherChan3 ChanPass | .msg AnotherInviteBot invite MyInviteCode | join #Chan5 ChanPass }
  if ($network == Spyder-Networks) { join #AnotherChan }
  if ($network == GeekShed) { join #SomeChan ChanPass }
  if ($network == LostIRC) { .msg InviteBot'sName !invite MyNick MyPass | join #AnotherChan }
  if ($network == BroadcasTheNet) { .msg InviteBot IDENTIFY MyNick MyPass }
  if ($network == Bend) { join #Channel | join #Channel2 }
  if ($network == What-Network) { .msg InviteBot enter #Chan1,#Chan2,#Chan3 MyNick MyPass }
  if ($network == TheDVDClub.org) { .msg InviteBotName inviteme MyNick MyPass }
}

on *:JOIN:#YourOwnCreatedAndRegisteredChannelHere-OrAChannelYouHaveOpOn: {
  if ($network == TheServerNameYourChannelIsOn) {
    ##Coment## Mode +K Sets Channel password below.##
	/mode #YourChannel +k YourChanPass
	/mode #YourChannel +OtherModesSetByDifferentCaseSensitiveLetters
  }
}

##I used these in the instance where "on *:connect:{" didn't always initiate the identify for these particular servers##
on *:NOTICE:*nick, type*:*:{
  if ($network == AnonOps) .msg nickserv identify Pass
  if ($network == P2P-NET) .msg nickserv identify Pass
}

##Comment: P2P-Net kept changing my nick and then displaying the notice "Your nick isn't registered" when the server connected back, so I set this bit to change my nick back to MyNick on this notice##

on *:NOTICE:*Your nick isn't registered*:*:{
  if ($network == P2P-NET) { /nick LoneThistle }
}

##Comment: This "on *:INVITE:#:{" method joins all chans invited too.##

on *:INVITE:#:{
  if ($nick == SillySally) { join $chan }
  if ($nick == TyrantBill) { join $chan }
}

##Comment: This "on *:INVITE:#:{" method joins only the chans you specify once you are invited too them.##

on *:INVITE:#:{
  if ($nick == SillySally) { join #SomeChan | join #SomeChan2 | join #SomeChan3 | join #SomeChan4 }
  if ($nick == TyrantBill) { join #SomeOtherChan | join #SomeOtherChan2 | join #SomeOtherChan3 }
}

Joined: Aug 2012
Posts: 59
Babel fish
Offline
Babel fish
Joined: Aug 2012
Posts: 59
Thanks


Find Gamers, my player finder for tabletop RPGers and Wargamers.
Joined: Feb 2011
Posts: 448
K
Pan-dimensional mouse
Offline
Pan-dimensional mouse
K
Joined: Feb 2011
Posts: 448
Code:
##
##Comment: For me, Ghost works better on some networks, recover works better on others. raw 433: is issued when the server already has someone connected using your nick, or when the server hasn't flushed the nick you were using when you disconnected. Use raw 433:*:{ DoStuffHere when you want to handle your nick being in use automatically.##
##

You do know comment's in mIRC are suppose to be like this:
Code:

; This is what a comment looks like. 

/*
or it can look like this.
*/

Don't use #

See: /help Comments

Joined: Mar 2013
Posts: 6
L
Nutrimatic drinks dispenser
OP Offline
Nutrimatic drinks dispenser
L
Joined: Mar 2013
Posts: 6
Thanks for the info. Fixed the comments.

Code:
/*
Comments: I am a noob but this method of autojoin has work for me. Maybe it can help you :) I changed the actual channel, bot and nick names. The "-i Nick" is used to specify a certian nick for each network. The ":+PORT-Number" is used to specify the SSL port to connect too. I highly recommend SSL to keep ISPs/networks from seeing everything you see and type. Usually a server will list the available SSL ports during connect when all of the server info rolls down the server connect screen. The "-m" is used to open a new window for the server. -m should be used for every network  after the first.
*/


on *:start:{
  .server irc.anonops.com:+6697 -i YourNick
  .server -m irc.p2p-network.net:+7000 -i YourNick
  .server -m irc.iptorrents.com:+7000 -i YourNick
  .server -m irc.p2pirc.org:+7000 -i YourNick
  .server -m irc.blackcats-games.net:+6697 -i YourNick
  .server -m irc.bitspyder.net:+7000 -i YourNick
  .server -m irc.geekshed.net:+6697 -i YourNick
  .server -m irc.lostirc.org:+6697 -i YourNick
  .server -m irc.broadcasthe.net:+6697 -i YourNick
  .server -m irc.what-network.net:+6697 -i YourNick
  .server -m irc.bend.me.uk:+6697 -i YourNick
  .server -m irc.thedvdclub.org:+7000 -i YourNick
}


/*
Comment: .server -m irc.WhateverYourServerURLIs.org:+Server'sSSLPort -i YourNickComment: You will need the SSL dll files for mirc. Use Google
*/

/*
Comment: The "on *:connect:{" section is used here to tell mirc what to do when connected to each network. I use it to identify my nick with my password. I use a different password for each server. Mirc identifys a server by it's server name. You can see your server names on the server tree at the left of the mirc gui when connected to your networks. You will see "ServerName YourNick"
*/


on *:connect:{
  if ($network == AnonOps) { 
    .msg nickserv identify YourAnonOpsPass
  }
  if ($network == P2P-NET) { 
    .msg nickserv identify YourP2P-NETPass
  }
  if ($network == P2PIRC) { 
    /nick YourNick
/*
Comment: Some networks love changing my nicks. When I have this problem, I add /nick MyNick to the "on *:connect:{" command to automatically change it back on connect. 
*/
    .msg nickserv identify YourP2PIRCPass
  }
  if ($network == BCnet) { 
    /nick YourNick
    .msg nickserv identify YourBCnetPass
    .msg SomeBot'sName SomeRandomAssignedSintax TheBotPassForInviteToInviteOnlyChan
	
/*
Comment: Some channels require a bot to invite you to an invite only chan. These are fake examples of how to send an invite command to a bot. Also note that if the invite only chan requires your nick to be registered and identified before joining then send the .msg to the bot on the "on *:NOTICE:*Password accepted*:*:{" part of the script.
*/
	
    .msg SillySally letmein ThisAreMyPasswordHere
    .msg TyrantBill kissmyass SecretPassword
  }
  if ($network == IPTorrents) { 
    /nick YourNick
    .msg nickserv identify YourIPTorrentsPass
  }
  if ($network == Spyder-Networks) { 
    .msg nickserv identify YourSpyder-NetworksPass
  }
    if ($network == GeekShed) { 
    .msg nickserv identify YourGeekShedPass
  }
  if ($network == LostIRC) { 
    .msg nickserv identify YourLostIRCPass
  }
  if ($network == BroadcasTheNet) { 
    .msg nickserv identify YourBroadcasTheNetPass
  }
  if ($network == What-Network) { 
    .msg nickserv identify YourWhat-NetworkPass
  }
  if ($network == Bend) { 
    .msg nickserv identify YourBendPass
    join #acid-uploads
  }
  if ($network == TheDVDClub.Org) { 
    .msg nickserv identify YourTheDVDClub.OrgPass
  }
  if ($network == WhateverYourServerNameIs) { 
    .msg nickserv identify WhateverYourServerNameIsPass
  }
}


/* 
Comment: For me, Ghost works better on some networks, recover works better on others. raw 433: is issued when the server already has someone connected using your nick, or when the server hasn't flushed the nick you were using when you disconnected. Use raw 433:*:{ DoStuffHere when you want to handle your nick being in use automatically.
*/
 

raw 433:*:{ 
  if ($network == AnonOps) { .msg nickserv recover YourNick Yourpass }
  if ($network == P2P-NET) { .msg nickserv ghost YourNick Yourpass }
  if ($network == P2PIRC) { .msg nickserv ghost YourNick Yourpass }
  if ($network == BCnet) { .msg nickserv ghost YourNick Yourpass }
  if ($network == IPTorrents) { .msg nickserv ghost YourNick Yourpass }
  if ($network == Spyder-Networks) { .msg nickserv ghost YourNick Yourpass }
  if ($network == GeekShed) { .msg nickserv ghost YourNick Yourpass }
  if ($network == LostIRC) { .msg nickserv ghost YourNick Yourpass }
  if ($network == BroadcasTheNet) { .msg nickserv ghost YourNick Yourpass }
  if ($network == What-Network) { .msg nickserv ghost YourNick Yourpass }
  if ($network == Bend) { .msg nickserv ghost YourNick Yourpass }
  if ($network == TheDVDClub.Org) { .msg nickserv ghost YourNick Yourpass }
}


/* 
Comment: After a successfull ghost or recover a notice will show up in the server window. Copy and paste all or part of that notice between the stars on *:NOTICE:*paste here the notice that shows on your particular server*:*:{ See the two example notices below that were use in my particular case 
*/


on *:NOTICE:*Whatever your server said after ghost/recover*:*:{
  if ($network == YourNetworkname) { .msg nickserv release YourNick YourPass }
}

/*
Comment: These were used for AnonOps.
on *:NOTICE:*User claiming your nick has been killed*:*:{
  if ($network == AnonOps) { .msg nickserv release YourNick RegisteredPassword }
} 
*/


/* 
Comment: This changes my nick back once it has been released
on *:NOTICE:*Services' hold on your nick has been released*:*: {
  if ($network == AnonOps) { /nick YourNick }
}
*/


/*
Comment: I changed channel names and bot names out of respect for other networks.
*/

on *:NOTICE:*Password accepted*:*:{
  if ($network == AnonOps) { join #YourChan ChanPass }
  if ($network == P2PIRC) { join #chan1 | join #chan2 | join #chan3 | join #chan4 }
  if ($network == IPTorrents) { join #chan1 | join #chan2 | join #chan3 }
  if ($network == P2P-NET) { .msg IChangedTheBotsNameToThis invite InvitePass | .msg AnotherInviteBot letmein MyNick InvitePass | .msg AndYetAnotherInviteBot invite MyNick MyPass | join #AnotherChan | join #AnotherChan2 | join #AnotherChan3 ChanPass | .msg AnotherInviteBot invite MyInviteCode | join #Chan5 ChanPass }
  if ($network == Spyder-Networks) { join #AnotherChan }
  if ($network == GeekShed) { join #SomeChan ChanPass }
  if ($network == LostIRC) { .msg InviteBot'sName !invite MyNick MyPass | join #AnotherChan }
  if ($network == BroadcasTheNet) { .msg InviteBot IDENTIFY MyNick MyPass }
  if ($network == Bend) { join #Channel | join #Channel2 }
  if ($network == What-Network) { .msg InviteBot enter #Chan1,#Chan2,#Chan3 MyNick MyPass }
  if ($network == TheDVDClub.org) { .msg InviteBotName inviteme MyNick MyPass }
}

on *:JOIN:#YourOwnCreatedAndRegisteredChannelHere-OrAChannelYouHaveOpOn: {
  if ($network == TheServerNameYourChannelIsOn) {
/* 
Coment: Mode +K Sets Channel password below.
*/
	/mode #YourChannel +k YourChanPass
	/mode #YourChannel +OtherModesSetByDifferentCaseSensitiveLetters
  }
}


/*
I used these in the instance where "on *:connect:{" didn't always initiate the identify for these particular servers
*/

 
on *:NOTICE:*nick, type*:*:{
  if ($network == AnonOps) .msg nickserv identify Pass
  if ($network == P2P-NET) .msg nickserv identify Pass
}

/*
Comment: P2P-Net kept changing my nick and then displaying the notice "Your nick isn't registered" when the server connected back, so I set this bit to change my nick back to MyNick on this notice
*/

on *:NOTICE:*Your nick isn't registered*:*:{
  if ($network == P2P-NET) { /nick LoneThistle }
}


/* 
Comment: This "on *:INVITE:#:{" method joins all chans invited too.
*/


on *:INVITE:#:{
  if ($nick == SillySally) { join $chan }
  if ($nick == TyrantBill) { join $chan }
}


/*
Comment: This "on *:INVITE:#:{" method joins only the chans you specify once you are invited too them.
*/

on *:INVITE:#:{
  if ($nick == SillySally) { join #SomeChan | join #SomeChan2 | join #SomeChan3 | join #SomeChan4 }
  if ($nick == TyrantBill) { join #SomeOtherChan | join #SomeOtherChan2 | join #SomeOtherChan3 }
}


Link Copied to Clipboard