To KingTomato:
Problem One:
Using the caret (^) in an event tells mIRC to alter the processing order for that script.
- on ^*:EVENT:
- mIRC gets a shot at it
- on *:EVENT:
This is why you can halt default mIRC-generated text with step 1. mIRC has not yet had a go at whatever event it is, so you can haltdef (or halt) and step 2 is skipped, at least as far as outputting text is concerned. Omitting the caret means that your script gets processed in step 3 for that event.
Problem Two:
"Your" text is processed in on INPUT, not on TEXT. on INPUT only has steps 1 and 2 and doesn't require the 3rd step at all, nor does it require the caret. If you halt your on INPUT script, then mIRC only gets a passing glance at it in step 2.
To neophyte:
echo -t uses the $timestampfmt if either global timestamping is on or timestamping is on for that window; otherwise, it won't timestamp.
echo $timestamp .. or echo $themestamp work no matter what.
Both ways work for on ACTION/NOTICE/TEXT or any other event you echo in.