Quote Originally Posted by Citizen_Thom View Post
Duration checks rather than one inaccurate check wouldn't generate lag.
Huh? There's nothing you can do that'd allow you to have accurate information without violating casuality. Let's have this hypothetical timeline:
Time 0.0s - Client sends update, player is in AE.
Time 0.01s - Server receives update from client at 0.0s. During this time, player has now moved out of AE.
Time 0.3s - Client sends update, player is out of AE

How can the server possibly know the accurate player information when it's not scheduled to receive the accurate information 0.29s later? Right now, the server doesn't wait and just sends back 'you didn't dodge that' to the client. If the server waited, it would be able to make a better decision, but you'd have even more lag, and that's not acceptable either. In this case, the server would have to wait for an extra 0.29s compared to what it already does now. While this will generally end up being favorable to players, this means if you really do fail to dodge the AE now you can go REALLY far before you get any update.