Channel and personal protection against any types of attacks.
Dialog windows can be created in mIRC to better serve user-compatibility.
*Popular mIRC dialog extensions include MDX and DCX. There are also a few versions of mdx.dll and dcx.dll modded by IRC hackers.
Bots that provide automated IRC channel management, trivia or other games, and other desired functions for chatters.
Commands that save typing or otherwise simplify life on IRC.
Script storage
Scripts are stored as either plain text files, usually with a.mrc file extension, or as INI files. They, however, can be stored with any extension. Multiple script files can be loaded at one time, although in some cases, one script will conflict with another and cause one or both of them to no longer work properly.
Language features
mIRC scripting language uses its own nomenclature to refer to language constructs.
Built-in functions are termed commands or, if they return a value, identifiers.
Custom scripted functions are called aliases. Aliases that return a value are known as custom identifiers. Both are called from the command line or other parts of a script in the same ways as built-in commands and identifiers.
Popups are scripted context menu items. Popups are called when they are selected by the user. The term originally referred to the menus—which pop up upon a right click. It is still used this way in the manual.
Remotes are event-handling scripts. Remotes are called when the event they handle occurs.
mIRC scripts make use of sigils. Identifiers are preceded by $, binary variables are preceded by &, and other variables are preceded by %. Commands and aliases are not preceded by any particular character.
File handling
Scripts can read from and write to files
The above is intended for singular access to the file. Because each time you issue $read or /write you open and close the file for access. Multiple accesses, during a loop for instance, is best handled through /fopen, /fwrite and /fclose. Since this opens the file only once. In some cases /filter and /savebuf is an even more efficient method.
Strings are not syntactically enclosed, creating ambiguities in code where characters meant as literal strings are treated as part of the language's syntax.
Each line of code is broken down into a set of space-delimited tokens. As mIRC's parser does not support null tokens and the language doesn't provide a syntax to clearly differentiate literal strings from code; Prior to mIRC version 6.2 it was impossible to pass multiple consecutive spaces to any command or alias. However, this was fixed with the introduction of the returnex command which allows the preservation of spaces.
Code examples
The code below is in the remote scripts format. If placed into an alias file, the command names should not be preceded by the word "alias". Test Comments include the common /* comment */ and ;comment. Here is an example of a Hello World alias:
;Defines the alias 'hello' in the remote script ;Note: if this is placed in an alias script, ;the 'alias' part must be removed (result: hello