How can I install a script?
First, you need to download the script. When I say a script, I refer to: Addons, Bots, and Full Scripts. Yes, mIRC bots are still actually special mIRC Scripts. Most scripts come in zipped form, if its not in a zip form (i.e. its in an EXE form) then I would not trust it. EXE's could contain viruses. Anyway, once the script is downloaded:
- Open the zip file using WinZip. Look for a 'readme.txt' or 'install.txt' or 'setup.txt' or any other similar file which might contain setup instructions
- Read the instructions. Instructions are vital to the success of a script. If the script does not have instructions, don't use it - it is a worthless script. I mean, the person obviously didn't put in much effort if they couldn't be stuffed writing even the simplest of help.
- Read the instructions
- Read the instructions
- Unzip the script using WinZip. Unzipping to your mIRC folder is a good idea normally, however the instructions usually also tell you where you should put the script.
- The instructions should also tell you what files to load, and what commands to type to load them. Usually the files you want to load are the ones with the extension MRC. These are remote files. To load a remote file, /load -rs <filename.mrc>
- The script should now be loaded. Enjoy =)
If the script does not appear to work, try read the instructions again to make sure you typed the right commands, put the files in the right places. Also, remember that a script without instructions is not worth using.
As a last resort, you could email the author of the script, but quite frankly if the script is _that_ hard to install you should probably find a better (which is usually easier to use) script.
*************************************************************************************************************
What is a ping and why is it important to me?
The ping you always here people talking about is the time it takes for a message from one computer to be sent to another on the internet. To ping someone, type /ctcp nickname ping .After one or two seconds - or even as long as two minutes, you will get a reply in your status window. It should look something like this:
[FakeNikc PING reply]: 2 seconds
Of course the Ping will not always be the same as above. Using the above example, we can tell that it takes 2 seconds for a message to goto FakeNick from me. This is considered good. If the ping reply was something like 20 seconds, you or the nick may want to change to the same server as the other person is on - thus reducing the ping reply. If someone has a large ping reply, such as 20 seconds, are considered "lagged". This basically means that it will take a long time for them to see what you say.
If you are talking to one person in particular, lets say his nick is Bobbie, and you ping him. You get a reply of 27 seconds. What can you do? You can change to his server for starters. Type /whois nickname to find what server he is on. Then type /server the.server.he.is.on .This should, but not always, reduce the lag.
If you feel confident, you can use the /links command to find out how many hops away a server is from yours. By hops, we mean links. It's like saying how many intersections does the message need to go to before the message you sent gets to the person on that server. To get a list of servers and how far away they are from the server you are on, type /links.
The number in the ()'s tells you how many hops away the server is. (0) means you are on that server. (1) means that the server is only one hop, or one intersection, away from yours. If most of the people you chat with are using a server that is many hops away (e.g. (4) or (5)), then perhaps you should join one of their servers to reduce the distance between each other.
*************************************************************************************************************
How can I make an autogreet?
An autogreet is a notice or message that is sent by you when someone joins your channel. Also, consider first using the channel's topic as a place to put your autogreet
Please be aware that if you use an autogreet to advertise, spam, or invite users on a channel other than your own, you will most likely be kicked.
The following piece of code goes in your remotes (Press ALT and R to access the remote editor)
on @*:JOIN:#Your_Channel: {
.notice $nick Welcome to my channel =)
.notice $nick The rules are: smile and be peaceful! Have a good one =)
}
Note that I used two .notice commands, so two notices will appear. You can have more, or you can only have one if you want. Also, because I prefixed the notice command with a . (period) it will not show the notice in YOUR window, but it will still show up on the other persons side.
Now what if I want to say how many times you have joined my channel?
Thats easy too, all we need to do is use a variable to keep count of the number of visitors:
on @*:JOIN:#Your_Channel: {
inc %joins. [ $+ [ $chan ] ]
.notice $nick Welcome to my channel, you are visitor number %joins. [ $+ [ $chan ] ]
}
*************************************************************************************************************
How can I colour a nickname on the nicklist?
mIRC has a command, /cline that can, among things, colour nicknames on the nicklist. The format for /cline is:
/cline colour-number window nickname/line number
Lets say we want to colour the nickname Connector on #channel brown (which is number 15 in mIRC). You would type the following:
/cline 5 #helpdesk Connector
But what if I want to colour the n'th nickname on #channel?
Simple: Just type /cline colour-number #channel n'th-nickname
e.g. /cline 2 #channel 1
This would colour the first nickname on #helpdesk blue (2).
Note: The /cline command has been surparsed by the /cnick command, so mIRC will give priority to /cnick over /cline, in case you are wondering why /cline doesn't work like it should some times.
A lot of people have asked how can I colour all nicknames on a channel, all at once. The answer: use /cnick or an alias.
/CNick? Whats /CNick?
/cnick lets you set the colour of a person based on their nickname, operator status, notify status, or even userlevel. Its format is:
/cnick -raniovp [nick[!user@host]] [color] [modes] [levels]
So to make all ops dark blue, you could /cnick * 2 @
The * means all nicknames, the 2 is the colour, and @ limits it to all nicknames who are ops
So to make all voices a light blue, we could /cnick * 10 @
The other solution is to use a custom alias to do all the work for you (longer, slower, ugh)
alias colour.chan {
var %cc.total.ops = $nick($1,0,o)
; See how many ops are in the channel
var %cc.total.voice = $nick($1,0,v,o)
; See how many voices are in the channel
var %cc.ops.current = 0
var %cc.voice.current = 0
:ops
inc %cc.ops.current 1
; Select the n'th op nick
cline 2 $1 $nick($1,%cc.ops.current,o)
if (%cc.ops.current < %cc.total.ops) { goto ops }
; If i've done all the ops, then the above if statement will
; let me move on to the voices
:voice
inc %cc.voice.current 1
; Select the n'th voice nick
cline 11 $1 $nick($1,%cc.voice.current,v,o)
if (%cc.voice.current < %cc.total.voice ) { goto voice }
; If i've done all the voices, then the above if statement
; will let me continue alias.
}
This alias should be used in conjunction with an on JOIN event like:
on me:*:JOIN:#: .timer 1 2 /colour.chan $chan
The 2 (in cline 2 $1 $opnick($1,%cc.ops.current)) is the colour ops will be (Dark Blue) The 11 (in cline 11$1 $vnick($1,%cc.voice.current)) is the colour voices will be (Light Cyan) For the colour of normal nicks, just change the nickname colour in mIRC's Colour Editor (Alt + K)
NOTE: When a person ops/deops/voices/devoices their colour won't change using the above. Try and script something that will (Hint: Use on VOICE,DEVOICE,OP, and on DEOP).
********************************************************************************************************************************************************************************************************************************************************************************************
How can I notice all the Ops & Voices?
This is an easy task, to notice all the ops & voices in a channel, type /notice @+#channel message
To notice the ops and voices, type /notice @+#channel message
To notice just the ops, type /notice @#channel message
Of course you could alias these, and put in some fancy ascii and colours. Op/Voice Noticer Example:
alias ov {
notice @+ $+ $active [ $+ $chan $+ (OP&VOICE)] $1-
}
Op Noticer Example:
alias on {
notice @ $+ $active [ $+ $chan $+ (OP: $+ $opnick(#,0) $+ )] $1-
}
So using the ov alias to notice all the ops and voices, you would type in the channel: /ov , e.g. /ov Hiyas, I'm just testing my op/voice noticer!
****************************************************************************************************************************************************************
When I say brb - how can I change that to Be Right Back?
To replace text with other text, you need to use the $replace identifier, and seeing as you want to replace your own text, then we also need to use the on INPUT event. Below is an example of how this can be done:
on *:INPUT:*: {
if (/* !iswm $1) {
msg $active $replace($1-,brb,Be Right Back)
halt
}
}
The if (/* !iswm $1) makes sure that you didn't type a comand, because if you did and that if statement was not there, you would display the command to the active window - imagine if you were identifying to nickserv!
The halt is required. If there was no halt, then you would get two versions of what you said. You would get one with the brb changed, and you would get one without the brb changed.
If you wanted to replace multiple words, just keep adding to the $replace identifier as shown:
on *:INPUT:*: {
if (/* !iswm $1) {
msg $active $replace($1-,brb,Be Right Back,lol,Laughing Out Loud,jk,Just Kidding)
halt
}
}
****************************************************************************************************************************************************************************************************************
How can I play a mp3 file?
The command to play a MP3 file through mIRC is:
/splay <filename.mp3>
It is that simple! =) However what if you want to maybe type a command that will splay the MP3 file as well as tell the channel what you are listening too. Well, we can use an alias to do that:
; Place in your aliases (press ALT and A)
mp3play {
; /mp3play or leave blank
; The below if statement checks if you left the filename blank
; In which case it will prompt you to choose a MP3 file to play
if (!$1) var %file = $sfile($mp3dir,Choose a MP3,Play it!)
else %file = $1-
; splay plays the file
splay %file
; ame tells all channels you are playing the file
var %l = $duration($calc($mp3(%file).length / 1000))
var %br = $mp3(%file).bitrate
ame just played $nopath(%file) (kbps: %br length: %l $+ )
}
If you are interested in getting more ID3 Tag information from the MP3 file, open mIRC's help file and look for the $mp3 identifier
*****************************************************************************************************************************************************************************
How can I say how long I have been online?
To show how long you have been connected to the IRC server, you can use the $online identifier. To enable it, you must goto the Tools -> Timer of mIRC's menu. $online will return the number of seconds elapsed. You will need to use $duration($online) to convert it to Hours Minutes and Seconds.
The other sort of online is how long your system has been running. This is represented by the $ticks identifier which records how many ticks/cycles the computer has done since it started. If you divide this figure by 1000 you will get the number of seconds that the computer has been up.
alias my-uptime {
say I have been connected to $server for $duration($online)
say My computer has been on for $duration($calc($ticks / 1000))
}
**********************************************************************************************************************************************************************************************************************************************************************************************************
How can I list all my MP3 files in my popups
To list all files in a folder and display that list as a popup is rather tricky. But basically what the remote needs to do is go through all the files using $findfile, then sort those files into order using a sorted hidden custom window, then from there creating a new remote file which has a menu definition based on those files.
To use the script, paste it into your remotes and then select MP3 -> Reindex from your popups. Be wary, indexing/creating the popup menus can be time consuming depending on how many MP3 files you are dealing with. It is also easier to access the files from the popups if you use lots of sub directories rather than just bung all your MP3's into one directory.
menu menubar,channel,status {
.MP3
.Reindex: dynpop $sdir($mp3dir,Select Directory To Index)
.-
}
alias dynpop {
echo 3 -a * /dynpop: Reindexing MP3 popups using $1-
if ($1 == $null) tokenize 32 $mp3dir
var %last-dir = $count($1,\)
write -c dynpop.txt | write dynpop.txt menu menubar,channel,status $chr(123)
write dynpop.txt MP3
if ($window(@mp3-gen)) window -c @mp3-gen
window -hs @mp3-gen
var %t = $findfile($1,*.mp3,0,999,aline @mp3-gen $1-).shortfn
var %i = 0
while (%i < %t) {
inc %i
if ($nofile($line(@mp3-gen,%i)) != $nofile($line(@mp3-gen,$calc(%i - 1)))) {
var %new = $remove($longfn($nofile($line(@mp3-gen,%i))),$1,$left($1,-1))
var %ii = 0
while (%new) {
inc %ii
write dynpop.txt $str(.,%ii) $gettok(%new,1,92)
%new = $deltok(%new,1,92)
}
}
write dynpop.txt $str(.,$calc($count($line(@mp3-gen,%i),\) - %last-dir + 1)) $&
$nopath($longfn($line(@mp3-gen,%i))) : splay $line(@mp3-gen,%i)
}
write dynpop.txt $chr(125)
window -c @mp3-gen
.reload -rs dynpop.txt
echo 3 -a * /dynpop: Reindex complete
}
If you want to, you could reindex your MP3s everytime you start mIRC:
on *:START: dynpop $mp3dir
Or if you really wanted to get fancy, you could first check if the number of MP3 files has changed:
on *:START: {
var %new-count = $findfile($mp3dir,*.mp3,0,999)
if (%new-count != %current-mp3-total) {
set %current-mp3-total %new-count
dynpop $mp3dir
}
}
^^ Now go up and up..^^
^
Follow this =====>>====>>====>>====>>====>>====>>====>>====>>====>>====>>====>>====>>====>>========>>=>============>>>==============>>>>===>>=====>>=====>>====>>====>>======>>========>>======>>=====>>>=====>>======>>=====>>=========>>=========>>========>===>>==========>>=========>>>>=============>>>>====================>>>>>==================>>>>>================>>>>====>>=====>>==========>>=======>========>>>>=========>>>>==========>>>==============>>>================>>>==================>>>==================>>>>>============>>========>>>=====>>======>>==========>>=========>>============>>==========>>==========>>============>>>================>>>====>>==========>>>============>>>===>>====>>====>>=====>>=====>>>========>>>======>>>>=====>>>====|||