- 1) The client runs the game exe.
2) The game program connects to the server and received an index of all the resource file names.
3) The client makes an md5 hash of each file and sends it to the server.
4) The server compares the md5 hashes with the correct md5 hashes for the good resource files.
5A) If they all match the server sends back an ok message and proceeds to login.
5B) If they do not match then the server sends back a fail message and the game shell executes the updater and then closes.
6) The updater connects to the server then makes and sends the hashes again .
7) The updater receives a list of files that are old or corrupt.
8) The server sends the new files and the updater replaces the old ones.
9) The updater shell executes the game then closes.
10) The game will make and send the hashes again and if all went ok with the update they will be correct now and you can proceed to login.
What do you guys think?