[Online games and offline apps] are mutually exclusive.
True. Should I have instead split the two scenarios into separate comments?
An offline application can't know that validation has changed or there is an app update because it's offline. At that point, what do you do, toss out any data the user entered while they were offline?
In the case of an application with a substantial offline component, the server would handle the current version of the client and at least one previous version.
Even if I follow your approach, when the client and server versions mismatch because the user was offline they'll get the same pages of errors.
Granted, the user may see a few errors when server version n communicates with client n - 1, mostly related to the (hopefully small) schema changes between n - 1 and n. But ideally, this should introduce far fewer errors than if there had been no client-side pre-validation at all.
Boy, I hope your QA team has a large alcohol budget and the world's largest whiteboard for their validation testing matrix.
It's a bit easier when the testing matrix is a band matrix. If X is the client version and Y the server, the server only needs to gracefully handle a small number of client versions.