1. The First, and MOST important thing is for the client to check MD5 sum, of a Map file every time it connects to a game, so it won't need to download the map every time ! I'm getting mad because i get desync errors VERY often, and every time i need to download the map !.
Of course the server must remember all MD5 sums of all the map files, so it can give it to a client if he asks for it. MD5 sum checking should be default and locked setting for all servers.
I think it shouldn't be a lot of work for such a good programmers.
2. Second thing is to FORCE every server to pause when a client enters the game so there will be much less synchronization errors. This setting should be default and locked, and should not be changed at all at any time.
2a). Of course when desync error occurs, the client and/or server should wait/try until the connection can be synchronized again instead of disconnecting, but you are probably working on it, so this is minor thing.
PS.
(Sorry for my english - i could have made some mistakes
