pre mirc6.17
Code:
;usage /ctimems : well revaluate the the offset values used to produce the $identifier results (2 second delay during this processing)
;usage $ctimems : returns $ctime and 3 digit decimal place being miliseconds, (2 second delay if no /ctimems call is made prior to this $identifier being used)
alias ctimems {
  if (!$var(%milliseconds.ticks,0) || !$var(%milliseconds.ctime,0) || (!$isid)) {
    var %ctime = $calc($ctime + 1)
    while (%ctime >= $ctime) { }
    set -u1000000000 %milliseconds.ticks $calc($ticks - 1000)
    set -u1000000000 %milliseconds.ctime $calc($ctime - 1)
  }
  return $left($calc(%milliseconds.ctime + (($ticks - %milliseconds.ticks) / 1000) + .0001),-1)
}


mirc 6.17 only
Code:
;usage /ctimems : well revaluate the the offset values used to produce the $identifier results (2 second delay during this processing)
;usage $ctimems : returns $ctime and 3 digit decimal place being miliseconds, (2 second delay if no /ctimems call is made prior to this $identifier being used)
alias ctimems {
  if (!$var(%milliseconds.ticks,0) || !$var(%milliseconds.ctime,0) || (!$isid)) {
    var %ctime = $calc($ctime + 1)
    while (%ctime >= $ctime) { }
    set -e %milliseconds.ticks $calc($ticks - 1000)
    set -e %milliseconds.ctime $calc($ctime - 1)
  }
  return $left($calc(%milliseconds.ctime + (($ticks - %milliseconds.ticks) / 1000) + .0001),-1)
}


* this was old code i wrote some time back , yell out if its not working right.