My understanding from unc0rr is that as long as trunk and .17 are in sync, they maintain the protocol number.
Once they desync, trunk gets a new one
--- a/CMakeLists.txt Sun Nov 13 14:33:14 2011 -0500
+++ b/CMakeLists.txt Sun Nov 13 14:39:39 2011 -0500
@@ -42,7 +42,7 @@
set(CPACK_PACKAGE_VERSION_MAJOR 0)
set(CPACK_PACKAGE_VERSION_MINOR 9)
set(CPACK_PACKAGE_VERSION_PATCH 17${version_suffix})
-set(HEDGEWARS_PROTO_VER 40)
+set(HEDGEWARS_PROTO_VER 41)
set(HEDGEWARS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")