Room spying script for mIRC

ch33z
by ch33z · 7 posts
7 years ago in Other
Posted 7 years ago · Author
A script that will check a number of rooms for a specified username, and display a tool tip from your tray of which room(s) the target is found in. It doesn't check every imvu room, only the list which you create, either that you suspect or are certain they frequent. Neither will it be able to check AP rooms, only GA rooms. It will log all users in the room, up to 20 users including the target, at the time the target is found in that room.

Just run the initialization it prompts for and it will set itself up and running.

Commands you may use are:

Code
/ignoreroom (1s | 1m | 1h) (room name)


Which will prevent a tool tip from displaying of a certain room for a specified period of time. (seconds, minutes or hours)

Code
/open (spylog | rooms)


Will open the files for the report log or the rooms.ini file to add/remove rooms.
To get the room link, you will go to http://imvu.com/rooms and find the room you wish to add. Then you'll click the name of it to get to that room's actual room page, and copy the room link.

Image

Code
mind-control-68
is what you'll want.

Image

Open the scripts editor and paste the below script into the remote tab.

Image

These variables should be set, don't write in %ignrlist it will be added automatically upon using the /ignorerooms command. Put %totalrooms as the number of rooms you have listed in your rooms file. (/open rooms) Set %target to the user you're tracking. Set %myusr to your IMVU username.

Image

Remember to update %totalrooms when you add or remove rooms from the list.

This script is for mIRC (http://www.mirc.com/)

Code
alias spycheck {
  if ($sock(spycheck)) { halt }
  else { set %room 1 | sockopen spycheck www.imvu.com 80 }
}
alias dumptmp { write -c $fp(tempspy.txt) | unset %proctemp }
alias logspy { write $fp(spylog.txt) $+($chr(91),$date(m/d/yy),$chr(32),$time(h:nnTT),$chr(93)) $readini($fp(rooms.ini),names,$1) - $process($remove($read($fp(tempspy.txt), w, *'name'*, 500),$chr(93))) | dumptmp }
alias checkspy {
  if (!$timer(SC)) { spycheck | .timerSC 0 150 spycheck }
}

alias open {
  if ($1 == spylog) { run $fp(spylog.txt) }
  if ($1 == rooms) { run $fp(rooms.ini) }
}
alias fp { return $+($mircdir,$1) }
alias checkSetup { $iif(!$exists($+($mircdir,rooms.ini)) && !$exists($+($mircdir,tempspy.txt)) && !$exists($+($mircdir,spylog.txt)),createFiles) | $iif(!%target, set %target [username]) | $iif(!%totalrooms, set %totalrooms 1) | $iif(!%myusr, set %myusr [your username]) | $iif(!%room, set %room 1) }
alias createFiles {
  write -c $fp(tempspy.txt) | write -c $fp(spylog.txt)
  writeini $fp(rooms.ini) rooms 1 [room link] | writeini $fp(rooms.ini) names 1 [room name for display]
}

alias displaytip {
  if ($1 == spy) {
    noop $tip(Spy Report,Spy Report,%target is in $readini($fp(rooms.ini),names,%room),30)
  }
}

alias process {
  set %proctemp $gettok($1-,4,39) $iif($gettok($1-,12,39),$ifmatch) $iif($gettok($1-,20,39),$ifmatch) $iif($gettok($1-,28,39),$ifmatch) $iif($gettok($1-,36,39),$ifmatch) $iif($gettok($1-,44,39),$ifmatch) $iif($gettok($1-,52,39), $ifmatch) $iif($gettok($1-,60,39),$ifmatch) $iif($gettok($1-,68,39),$ifmatch) $iif($gettok($1-,76,39),$ifmatch) $iif($gettok($1-,84,39),$ifmatch) $iif($gettok($1-,92,39),$ifmatch) $iif($gettok($1-,100,39),$ifmatch) $iif($gettok($1-,108,39),$ifmatch) $iif($gettok($1-,116,39),$ifmatch) $iif($gettok($1-,124,39),$ifmatch) $iif($gettok($1-,132,39),$ifmatch) $iif($gettok($1-,140,39),$ifmatch) $iif($gettok($1-,148,39),$ifmatch)
  tokenize 44 %proctemp | return %proctemp
}

alias getsecs {
  if (s isin $1) { return $remove($1,s) }
  if (m isin $1) { return $calc($remove($1,m) * 60) }
  if (h isin $1) { return $calc($remove($1,h) * 3600) }
}

alias ignoreroom {
  var %rname $2- | var %igtime $getsecs($1) | var %igl 1
  while (%igl < 15) {
    if (%igl isin %ignrlist) { halt }
    if (%rname isin $readini($fp(rooms.ini),names,%igl)) {
      set %ignrlist %ignrlist %igl | .timer 1 %igtime set %ignrlist $remtok(%ignrlist,%igl,0,32)
      echo -sa Ignoring10 $v2 for10 $1 $+ . $+($chr(40),10,%igtime,s,,$chr(41))
      halt
    }
    inc %igl
  }
}

on *:start: { .timerSC 0 150 spycheck | .timerCS 0 600 checkspy | unset %ignrlist | checkSetup }

on *:sockopen:spycheck: {
  if ($sockerr) { halt }
  sockwrite -n $sockname GET $+(/rooms/,$readini($fp(rooms.ini),rooms,%room)) HTTP/1.0
  sockwrite -n $sockname User-Agent: Chrome/62.0.3202.89 | sockwrite -n $sockname Host: www.imvu.com
  sockwrite -n $sockname Connection: close | sockwrite -n $sockname
}

on *:sockread:spycheck: {
  if ($sockerr) { echo -a Error. | halt }
  else { var %temp2 | sockread %temp2 | $iif(appendChild !isin %temp2,write $fp(tempspy.txt) %temp2) }
}

on *:sockclose:spycheck: {
  var %chktmp $read($fp(tempspy.txt), w, *'name'*, 500)
  if (%target isin %chktmp && unoccupied !isin %chktmp && %myusr !isin %chktmp) {
    $iif(%room isin %ignrlist, noop, displaytip spy) | unset %temp2 | logspy %room
    if (%room < $calc(%totalrooms + 1)) {
      dumptmp | inc %room 1
      sockclose spycheck | sockopen spycheck www.imvu.com 80
    }
    else { sockclose spycheck | dumptmp | set %room 1 }
  }
  else {
    unset %temp2
    if (%room < $calc(%totalrooms + 1)) {
      dumptmp | inc %room 1
      sockclose spycheck | sockopen spycheck www.imvu.com 80
    }
    else { sockclose spycheck | dumptmp | set %room 1 }
  }
}


If you have any problems with this script report it below.
Last edited by ch33z on Mon Dec 25, 2017 7:36 pm, edited 1 time in total.
Posted 7 years ago
thats fucking awesome I CAN SPY ON FIOONA NOW
Posted 7 years ago
Thanks for the great post bro..It's really helpful tip. going to try it now.
:dancingbannana: :dancingbannana: :dancingbannana: :dancingapple: :dancingapple: :dancingapple:
Posted 5 years ago
Thank you for posting this. It helped a lot.
Posted 5 years ago
Thank you, this will come in handy.
Posted 3 years ago
Is there a similar script for checking ap rooms?
Posted 3 years ago
Thanks for all these, But looks very complex for me Lol.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Sign in

Already have an account? Sign in here

SIGN IN NOW

Create an account

Sign up for a new account in our community. It's easy!

REGISTER A NEW ACCOUNT