If you are just joining the channel tho you might want to who the room to make sure the ial is up to date
What do you mean? Does that mean it might not work sometimes if you're just joining the room? Do you, or anyone else know how that could be fixed if this in fact the case?

This is the version I am using, pretty much the same but like yours echoes it instead of saying it to the channel..:
on @!*:join:#: {
  var %host_to_search_for = $address($nick,2)
  var %number_from_that_host = $ialchan(%host_to_search_for,$chan,0)
  if (%number_from_that_host > 1) {
    ;we have clones!
    ;first set up our vars and loop
    var %count = 0
    unset %clones
    inc %count
    ;loop through every nick, adding the nicks to %clones
    var %clones = %clones $ialchan(%host_to_search_for,$chan,%count).nick
    if (%count < %number_from_that_host) { goto loop }
    echo -a 0,02 $time 0,012 ECHO:5 (clones) %count clones from IP3 $address
($nick,2) 5-3 %clones