The raw haltdef's worked.

As for:

on *:JOIN:#: {
if (($nick == $me) || ($eval($+(%,didtrace.,$nick),2))) return
set -eu60 $+(%,didtrace.,$nick) $true
!trace $nick
}

I dont understand the $eval string on the second line or any of the third line. Can you explain?