Change protocol mismatch to something a little more player friendly
MrFreake opened this issue ยท 6 comments
It appears from the client-side right now (Dev to Release) it gives EndWrite failure.
Server side it gives protocol mismatch.
Release to dev gives protocol mismatch.
Server side gives protocol mismatch.
It would be nice if the error message read something like:
Your verison x.x.x.x Server version x.x.x.x Update at xxxxxxxx.xx-xx.xxxx.
Fixed via 77c631b
I believe that DMP does not store versions, only the protocol one, which gets changed every time a new update is released.
So, my idea is instead of displaying "protocol mismatch" it should be "protocol mismatch: client: x server: y"
PROTOCOL_VERSION gets bumped every time there is a network message change / addition / deletion. If anything changes in a MessageWriter and MessageReader, that's a protocol break :P
git-version.txt is completely unreliable, a player may delete or forget to copy it. The proper way to do this is to add a PROGRAM_VERSION="Custom" in Common.cs and rewrite it in my build scripts to the same thing that's in git-version.txt.
Releases are tagged as v0.x.y.z for now (until we are out of alpha/beta) - this shows up in the release builds. Otherwise you get sha sums :P
All you have to do is output the git-version file, and change the dev hash so it says dev at the beginning.
Not being able to use git-version.txt raises another interesting point:
Should DMP check itself to make sure its complete when KSP is loaded?