Mirror Channel

By Austin on Jun 04, 2009

this script does exactly what the title says, it mirrors a channel.

perfect for helping someone evade a ban =P

this goes in your remotes (alt+r) (if i were you i would make a new script file just in case ;)(File>New in the script editor))

that should be it, everything else can be controled at whatever you set %spy to ;)

some commands for the channel that is the the 'spy':
!color <0-15> - sets the color that the text is displayed in. (just use !color to use plain text)
!colors - gives some information about the !color command
!switch - switches the channel to spyon and the spy channel.

dont know if this would be useful to anybody, but here it is :)

;Simple Mirror script by Austin
;You can find me on EFnet on #usbgecko 
on *:load:set %spyon #$$?="Type the channel name to spy on" | join %spyon | set %spy #$$?="Type the channel name to relay stuff from %spyon to" | join %spy
on *:kick:%spyon:msg %spy %color $+ * $knick was kicked by $nick ( $+ $1- $+ )
on *:join:%spyon:msg %spy %color $+ * $nick ( $+ $address $+ ) has joined $chan
on *:text:*:#: {
  if ($chan == %spyon) { msg %spy %color $+ < $+ $nick($chan,$nick).pnick $+ > $1- | halt }
  if ($chan == %spy) && ($1 == !color) { set %color  $+ $2 | msg %spy %color $+ ok, colors set. }
  if ($chan == %spy) && ($1 == !colors) { msg %spy %color $+ type the number you want to set the color using !color <0-15> colors: 0zero 1one 2two 3three 4four 5five 6six 7seven 8eight 9nine 10ten 11eleven 12twelve 13thirteen 14fourteen 15fifteen | msg %spy %color $+ or just say '!color' to use normal text color ;) }
  if ($chan == %spy) && ($1 == !switch) { msg $spy %color $+ switching spy and spyon channels.... | part %spy | part %spyon | set %spy $2 | set %spyon $3 | join %spy | join %spyon }
}
on *:action:*:%spyon:msg %spy %color $+ * $nick($chan,$nick).pnick $1- | halt
on *:RAWMODE:%spyon:msg %spy %color $+ * $nick sets mode: $1-
on *:quit: {
  if ($nick ison %spyon) && ($1 != $null) { msg %spy %color $+  * $nick ( $+ $address $+ ) Quit ( $+ $1- $+ ) }
  elseif ($nick ison %spyon) { msg %spy %color $+  * $nick ( $+ $address $+ ) Quit }
}
on *:NICK: {
  if ($newnick ison %spyon) { msg %spy %color $+ * $nick is now known as $newnick }
}
on *:part:#: {
  if ($chan == %spyon) && ($1 != $null) { msg %spy %color $+ * $nick($chan,$nick).pnick ( $+ $address $+ ) has left $chan ( $+ $1- $+ ) }
  elseif ($chan == %spyon) { msg %spy %color $+ * $nick($chan,$nick).pnick ( $+ $address $+ ) has left $chan }
}
on *:TOPIC:%spyon:msg %spy %color $+ * $nick changes topic to ' $+ $1- $+ '
on 1:input:#: {
  if ($1 == /me) && ($chan == %spyon) { msg %spy %color $+ * $nick($chan,$nick).pnick $2- }
  elseif ($chan == %spyon) { msg %spy %color $+ < $+ $nick($chan,$nick).pnick $+ > $1- }
}

Comments

Sign in to comment.
DevAkim   -  Oct 11, 2010

Great script, but would there be any way to mirror over different servers, not just channels?

 Respond  
Askeen   -  May 02, 2010

great script!

but how do erase so it not post the nick on the user. and i just want to mirror just what one person says?

 Respond  
Aucun50   -  Jan 25, 2010

And that could be shortend like so
Quote:

on :MODE:%spyon: msg %spy %color $+ $nick sets mode: $1-

Why delete the brackets... Your just making it harder to read and it's not like it does any good now does it?

 Respond  
jackster35-1   -  Jan 25, 2010

theres a little bit thats not working its =

;Simple Mirror script by Austin
;You can find me on EFnet on #usbgecko 
on *:load:set %spyon #$$?="Type the channel name to spy on" | join %spyon | set %spy #$$?="Type the channel name to relay stuff from %spyon to" | join %spy
on *:kick:%spyon:msg %spy %color $+ * $knick was kicked by $nick ( $+ $1- $+ )
on *:join:%spyon:msg %spy %color $+ * $nick ( $+ $address $+ ) has joined $chan
on *:text:*:#: {
  if ($chan == %spyon) { msg %spy %color $+ < $+ $nick($chan,$nick).pnick $+ > $1- | halt }
  if ($chan == %spy) && ($1 == !color) { set %color  $+ $2 | msg %spy %color $+ ok, colors set. }
  if ($chan == %spy) && ($1 == !colors) { msg %spy %color $+ type the number you want to set the color using !color <0-15> colors: 0zero 1one 2two 3three 4four 5five 6six 7seven 8eight 9nine 10ten 11eleven 12twelve 13thirteen 14fourteen 15fifteen | msg %spy %color $+ or just say '!color' to use normal text color ;) }
  if ($chan == %spy) && ($1 == !switch) { msg $spy %color $+ switching spy and spyon channels.... | part %spy | part %spyon | set %spy $2 | set %spyon $3 | join %spy | join %spyon }
}
on *:action:*:%spyon:msg %spy %color $+ * $nick($chan,$nick).pnick $1- | halt
on *:RAWMODE:%spyon:msg %spy %color $+ * $nick sets mode: $1-
on *:quit: {
  if ($nick ison %spyon) && ($1 != $null) { msg %spy %color $+  * $nick ( $+ $address $+ ) Quit ( $+ $1- $+ ) }
  elseif ($nick ison %spyon) { msg %spy %color $+  * $nick ( $+ $address $+ ) Quit }
}
on *:NICK: {
  if ($newnick ison %spyon) { msg %spy %color $+ * $nick is now known as $newnick }
}
on *:part:#: {
  if ($chan == %spyon) && ($1 != $null) { msg %spy %color $+ * $nick($chan,$nick).pnick ( $+ $address $+ ) has left $chan ( $+ $1- $+ ) }
  elseif ($chan == %spyon) { msg %spy %color $+ * $nick($chan,$nick).pnick ( $+ $address $+ ) has left $chan }
}
on *:TOPIC:%spyon:msg %spy %color $+ * $nick changes topic to ' $+ $1- $+ '
on 1:input:#: {
  if ($1 == /me) && ($chan == %spyon) { msg %spy %color $+ * $nick($chan,$nick).pnick $2- }
  elseif ($chan == %spyon) { msg %spy %color $+ < $+ $nick($chan,$nick).pnick $+ > $1- }
}

:)

 Respond  
Ghost-writer   -  Nov 02, 2009

on :MODE:%spyon: { msg %spy %color $+ $nick sets mode: $1- }

And that could be shortend like so

on :MODE:%spyon: msg %spy %color $+ $nick sets mode: $1-

:)

Also -

  if ($chan == %spyon) && ($1 != $null) { msg %spy %color $+ * $nick($chan,$nick).pnick ( $+ $address $+ ) has left $chan ( $+ $1- $+ ) }
  elseif ($chan == %spyon) { msg %spy %color $+ * $nick($chan,$nick).pnick ( $+ $address $+ ) has left $chan }
}

Could easily be shortend to an $iif statement, like so

  if ($chan == %spyon) msg %spy %color $+ * $nick($chan,$nick).pnick ( $+ $address $+ ) has left $chan $iif($1,With message: $chr(40) $+ $1- $+ $chr(41))
 Respond  
Austin   -  Nov 01, 2009

updated again... cant believe i forgot to delete the extra brackets xD
thanks to callow for noticing :p
(callow on efnet/freenode)

 Respond  
Austin   -  Aug 31, 2009

Updated, uses rawmode instead all the other ones, so even servers can trigger this.
btw i have a REALLY awesome alternative to this, but idk if i wanna release it :p
it connects to your computer on a desired port to an ircd (so far i've only tested on unreal) then connects to a real irc server then relays EVERYTHING it sees from the real server to your ircd except server msgs, pms, and private notices. so when you join a channel on your ircd its as if your actually there ^^ the only problem is unreal doesnt support +ps so any channel with +p it doesnt relay, the who set topic and what time isn't correct (too lazy to fix this one atm :p) same thing for +b/I/e the full name in the whoises on your server aren't correct (i would fix this so it gives the correct info, but that mean whoising everyone the joins after it links the channel, and on popular channels you could flood yourself off) of course, as we all know what is relayed on your ircd isn't space-preserved D: but $ % and #'s arent evaluated ^^
anyways im just blabbering on not like anyone cares anyways xD

 Respond  
Austin   -  Aug 03, 2009

^Neptune: i know, but most of it was copy and paste from others which were in that form...
Aucun50: thanks for the color comment :P
ES: i used to use it for someone who was banned for no reason and i got tired of copy and pasting =P

sorry it took so long to respond :S

 Respond  
ES   -  Jun 07, 2009

lulz
this skript is somehwat useful
i guess :Þ
Thanks ^_^

 Respond  
Aucun50   -  Jun 04, 2009

You could shorten most of these to one line like ^Neptune said. It's looks ok and i like how you can set a color for the %spy channel.

 Respond  
^Neptune   -  Jun 04, 2009
on *:MODE:#: { 
  if ($chan == %spyon) { msg %spy %color $+ * $nick sets mode: $1- }
}

Can be simply

on *:MODE:%spyon: { msg %spy %color $+ * $nick sets mode: $1- }

Same for the others.

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.