actually, I've been using the ^ and haltdef for years now and it works fine with it. There may be a 2nd ctcp event in the script file which is causing this one not to work (as an alternative solution). What I've been using is (basic formatting):

Code:
ctcp ^*:*: {
  if (stuff) { }
  elseif ($1 == clientinfo) { }
  elseif ($1 == dcc) { }
  elseif ($1 == finger) { }
  elseif ($1 == ping) { }
  elseif ($1 == time) { }
  elseif ($1 == userinfo) { }
  elseif ($1 == version) { }
}


That has all worke3d for me no problem so ^ can be used in a CTCP event


Those who fail history are doomed to repeat it