I have been recently researching about local lag technique which to my understanding means that by delaying execution of input events (locally) using timestamps (set to the future by the amount of local lag) is possible to achieve better fairness and consistency in the multiplayer games. The reason being that local lag gives each site enough time to retrieve input events, align timestamps and execute them at correct order/times.
However, while this all sounds tempting, I am having trouble of getting my head around the fact that this technique requires that each site has enough logic to model the execution of events. Therefore, I think that while this is not a problem with P2P, with CS it is because it is the main decision point, including the relevant logic to make the decisions?
So the question is: How would I apply local lag to CS architecture and is it done before? I recall seeing something about local lag being used between two servers so it makes me wonder, also I have a feeling that this could/should be possible - it could be effective if local lag can be used to buy more time for returning correct results from the server and mitigate the inconsistencies