This actually works quite well (will probably implement this on Zone). Not sure how this could be bypassed since when you freeze a player a freezeplayer address is added to them, and if they altered the freezeplayer address to say something other than 'freezeplayer,' then the client wouldn't recognize it and wouldn't actually freeze the player, thus triggering that the player is not frozen even though they should be and causing the system to detect them using a trainer.
EDIT: Also, if they try altering the freezetime address, then the system would still detect it, so there isn't really any address name-changing that can be done that wouldn't be detected. If they tried just changing the value of freezeplayer instead of changing the address of the name, then that still wouldn't work because the system would know that the player isn't being frozen for the amount of time specified (in this case 1 second), so basically, this leaves them without any options. All servers should look into implementing something similar to fit their systems and also add protection against the other features of the trainers.
Logically simple but affective at what it does, nice work.
