mIRC has to recieve their addresses before it can decide whether to colour their nicks, which only when:
They message the channel/you
You whois them
They change a channel mode
They join a channel
Some others, can't be bothered to explain.
To automatically get everyone addresses when you join a channel use this (remotes):
on *:JOIN:#:{
if ( $nick == $me ) {
set %ial $+ # 1
who #
}
}
raw 352:*:{
if ( $eval(% $+ ial $+ $2,2) == 1 ) {
haltdef
}
}
raw 315:*:{
if ( $eval(% $+ ial $+ $2,2) == 1 ) {
unset %ial $+ $2
haltdef
}
}