Thanks Wims.

Racoon, all that is excellent information and I will keep note of it, but it wasn't necissarily what I meant.

I have a global variable called %serverregistration that gets set to 1 on receiving raw 1 message from the IRC server, and is only reset after the user counts on the server messages.

That way my On raw events can happily mask the outputs I dont want to see,. In the case of MotD, that gets written to a .txt file (converting space to $chr(160) - remeber that post ?) checking the file crc and comparing it with the last saved MotD (another glob stores the crc), then only displays it in a custom window if different, but ONLY if this is in server registration.

Once thats all done and dusted, channels joined etc. and the user types /motd into (say) the status window: that processing just doesn't happen - proceedes as per mIRC default (assuming skip MotD is not not set in Options, IRC, Options).

Same for LUSERS and Names <Channel Name> (diff variable for that one - masked during connection process, but can be entered by users and displayed.

No child to parent in that type of example, but the discussion got good info out of it smile