That's probably due to lag.
Code:
on *:JOIN:#:{
  ctcp $nick version
}
on *:ctcpreply:VERSION*bottler*:{
  echo -dt $nick is a bottler script ( $+ $1- $+ )
  set %isbottler $+ $nick 1
  userhost $nick
  haltdef
}
raw 302:*:{
  var %t = $gettok($2,1,61)
  if ( $eval($+(%,isbottler,$iif($right(%t,1) == *,$left(%t,-1),%t)),2) ) {
    msg operserv akill add +2h $remove($mask($ial($nick),2),*!) IRC clients without chat features aren't allowed on this network.
    kill $nick IRC clients without chat features aren't allowed on this network.
    unset $eval($+(%,isbottler,%t))
    haltdef
  }
}

Something like that should work, although there are probably better ways of doing it.