Actually, mIRC, as a client of the IRC protocol, has the obligation of being a "responsible client" of said protocol. That means it should in fact be attempting to protect opers by protecting the networks they administrate. Practically speaking that means doing the minimum to ensure that the client does not hog network resources or otherwise flood the servers, either intentionally or unintentionally. Reconnecting on kill hogs network bandwidth. As Khaled pointed out, server implementors didn't like this behaviour and obviously were being burdened by the reconnections, so mIRC as a responsible client disabled the functionality. IRC would be a bad place if the clients didn't care about network outages and stealing server bandwidth. Servers would have to compensate by throttling connections, reducing support or shutting down service altogether, which is something we don't want. Making the people who make IRC possible happy is a good thing.

Finally, I refute your claim about "50% of disconnects is [sic] from a kill". Maybe on your network that is the case, and if so, perhaps you should be rethinking your priorities as a network administrator and focus on keeping your network active rather than /kill'ing your users for your own amusement. And yes, I did notice that you qualified the statistic with "for some of mIRC's users", but that "some" should be less than 1% of your *legitimate* users, so you're basically making a non-statement either way.

But in any case: you *have* the option since you can script it. That seems sufficient to me.

- argv[0] on EFnet #mIRC
- "Life is a pointer to an integer without a cast"