Hmm you are right about $active actually, I could change it to "#,?" perhaps :O.
And yup ;| understandably is restricted to Unreal IRCd. Only way I can think of getting around the IRCd compatibility issues is to do a /raw version on connect/load, store a variable to see if the correct IRCd is being used.