Yes, use the on_client event. Neither bpspeak, nor latency are normally 0 after a disconnection. I'd say your code normally can't work reliably with any version. Theoretically, you could use dplay_bps, but it's better to leave that to the engine and use the event.