mIRC Version Reply Changer
Platform: mIRC
Published May 08, 2011
Updated Aug 12, 2011
Changers any CTCP reply.
This script changes the default mIRC version reply to any text you want, without DLL's or anything complicated. You can change version reply and edit or add more ctcp reply's from line 32. Just add
if (%action == whatever you want to add/change) ctcpreply %anick $v1 The reply you want
Just load the server and connect to a server to work, or type .timervchanger 0 1 vchanger yourself.
Multi-servers support
mIRC is scripted so you would always sent a reply, but you can work around it:
It ignore's all CTCP's (using /ignore), but opens debug window. Then it scans the debug window for CTCP, and it works from that. It looks complicated because of the multi-server support. It uses 2 variables, nothing else.
Check for the ####, that's where you can edit in between.
on *:Connect:{ if (!$timer(vchanger)) .timervchanger 0 1 vchanger
unset %Vchanger.load*
}
on *:unload:{ .timervchanger off }
alias vchanger {
if ($ignore(*!*@*).type != ctcp) || (%vchanger.loadignore != $scon(0)) {
var %x = 1
while (%x <= $scon(0)) {
scon %x .ignore -t *!*@*
inc %x
}
set %Vchanger.loadignore $scon(0)
}
if (!$window(@Vchanger1)) || (%vchanger.loadwindow != $scon(0)) {
var %x = 1
while (%x <= $scon(0)) {
scon %x //var % $+ cd $!window(@Vchanger $+ %x $+ )
if (!%cd) { scon %x .debug @Vchanger $+ %x | window -h @Vchanger $+ %x }
inc %x
}
set %vchanger.loadwindow $scon(0)
}
var %x = 1,%y = 1
while (%x <= $scon(0)) {
while ($line(@Vchanger $+ %x,%y)) {
tokenize 32 $v1
if (* $+ $chr(1) $+ * iswm $left($5,2)) && ($chr(1) == $right($gettok($1-,-1,32),1)) && ($1 == <-) && ($3 == privmsg) && (Action !isin $5) {
scon %x
var %action = $upper($mid($remove($5-,$chr(1)),2))
var %anick = $gettok($mid($2,2),1,33)
;#########
if (%action == version) ctcpreply %anick VERSION Not mIRC!
if (%Action == TIME) ctcpreply %anick TIME $fulldate
if (%action == finger) ctcpreply %anick FINGER Don't you dare...!
if ($gettok(%action,1,32) == ping) && ($gettok(%action,2,32) isnum) { ctcpreply %anick ping $ctime | echo -a $chr(3) $+ $color(ctcp) $+ $timestamp $+($chr(91),%anick,$chr(32),PING,$chr(93)) }
else echo -a $chr(3) $+ $color(ctcp) $+ $timestamp $+($chr(91),%anick,$chr(32),%action,$chr(93))
}
;#######
inc %y
}
clear @vchanger $+ %x
inc %x
}
}