Sorry, I forgot about this. I just tested it and it works. There's just one change I'd make since I wasn't thinking correctly and was echoing to the active window instead of the target window...
on ^*:text:*:#test_bot: {
if (%backwards == on && $nick == PersonY) {
var %c $strip($1-),%a $len(%c)
while %a >= 1 {
var %b %b $+ $replace($mid(%c,%a,1),$chr(32),$str($chr(32),2))
dec %a
}
}
echo -mbflt $target < $+ $nick $+ > %b | haltdef
}
And, like I mentioned before, you might want to add mode prefixes on the nick if you normally display them and color for the nick if you normally show color on the nicks.
Otherwise, this is working just fine. If it's still not working, you may have something else conflicting with it.