Increase Xonotic version to 0.8.5 1034/head
authorbones_was_here <bones_was_here@xa.org.au>
Sat, 18 Jun 2022 06:54:02 +0000 (16:54 +1000)
committerbones_was_here <bones_was_here@xa.org.au>
Sat, 18 Jun 2022 07:36:03 +0000 (17:36 +1000)
Also update version compatibility policy:
DisableServerBackwardsCompatibility() is removed, allowing 0.9.0 to join
servers running the last 0.8.x release.
Instead the general policy is to support the previous release on a
"best effort" basis.

Also some minor cleanups for gameversion cvars.

qcsrc/menu/xonotic/util.qc
qcsrc/server/world.qc
xonotic-common.cfg

index ab2712db8a1dc9000a29de15feccb22283be2f1d..f98a8de8876e18ea5258fb5e0b6847234fc87de3 100644 (file)
@@ -313,11 +313,6 @@ void URI_Get_Callback(float id, float status, string data)
        }
 }
 
        }
 }
 
-void DisableServerBackwardsCompatibility()
-{
-       cvar_set("gameversion_min", ftos(100 * floor(cvar("gameversion") / 100)));
-}
-
 void UpdateNotification_URI_Get_Callback(float id, float status, string data)
 {
        float n;
 void UpdateNotification_URI_Get_Callback(float id, float status, string data)
 {
        float n;
@@ -417,25 +412,12 @@ void UpdateNotification_URI_Get_Callback(float id, float status, string data)
                }
        }
 
                }
        }
 
-       if(un_version != "")
+       if(un_version != "" && vercmp(cvar_string("g_xonoticversion"), un_version) < 0)
        {
        {
-               if(vercmp(cvar_string("g_xonoticversion"), un_version) < 0)
-               {
-                       // update needed
-                       _Nex_ExtResponseSystem_UpdateTo = strzone(un_version);
-                       if(un_download) { LOG_INFO(_("Update can be downloaded at:"), "\n", un_download); }
-                       if(un_url) { _Nex_ExtResponseSystem_UpdateToURL = strzone(un_url); }
-                       DisableServerBackwardsCompatibility();
-               }
-               else if(cvar_string("g_xonoticversion") == un_version)
-               {
-                       if(un_compatexpire != "")
-                       {
-                               string curdate = strftime(false, "%Y%m%d%H%M%S");
-                               if (strcmp(curdate, un_compatexpire) >= 0)
-                                       DisableServerBackwardsCompatibility();
-                       }
-               }
+               // update needed
+               _Nex_ExtResponseSystem_UpdateTo = strzone(un_version);
+               if(un_download) { LOG_INFO(_("Update can be downloaded at:"), "\n", un_download); }
+               if(un_url) { _Nex_ExtResponseSystem_UpdateToURL = strzone(un_url); }
        }
 
        if(un_tosversion != "")
        }
 
        if(un_tosversion != "")
index 1c589e5f00e7ae62fb915649b31dfeb0e5040902..88aed86731647444d7ab27d5bfab22e41c98707c 100644 (file)
@@ -334,7 +334,6 @@ void cvar_changes_init()
                // does nothing gameplay relevant
                BADCVAR("captureleadlimit_override");
                BADCVAR("condump_stripcolors");
                // does nothing gameplay relevant
                BADCVAR("captureleadlimit_override");
                BADCVAR("condump_stripcolors");
-               BADCVAR("gameversion");
                BADCVAR("fs_gamedir");
                BADCVAR("g_allow_oldvortexbeam");
                BADCVAR("g_balance_kill_delay");
                BADCVAR("fs_gamedir");
                BADCVAR("g_allow_oldvortexbeam");
                BADCVAR("g_balance_kill_delay");
@@ -394,7 +393,7 @@ void cvar_changes_init()
                BADCVAR("w_prop_interval");
                BADPREFIX("chat_");
                BADPREFIX("crypto_");
                BADCVAR("w_prop_interval");
                BADPREFIX("chat_");
                BADPREFIX("crypto_");
-               BADPREFIX("gameversion_");
+               BADPREFIX("gameversion");
                BADPREFIX("g_chat_");
                BADPREFIX("g_ctf_captimerecord_");
                BADPREFIX("g_hats_");
                BADPREFIX("g_chat_");
                BADPREFIX("g_ctf_captimerecord_");
                BADPREFIX("g_hats_");
index 05670d56ca19a54a18a3ad38e46664a1b9ca1d45..dc9f1f080a74ddfa82e0dadc2208ab6d82cd7eea 100644 (file)
@@ -7,7 +7,8 @@
 
 // Xonotic version (formatted for machines)
 // used to determine if a client version is compatible
 
 // Xonotic version (formatted for machines)
 // used to determine if a client version is compatible
-// this doesn't have to be bumped with every release
+// general policy: previous release has "best effort" support, older releases are unsupported,
+// but gameversion_min doesn't have to be bumped with every release
 // bump when clients become incompatible or any other perfectly good reason
 // (e.g. game data incompatibility, engine version incompatibility, etc
 // note: this automatically filters the server browser, clients of the new
 // bump when clients become incompatible or any other perfectly good reason
 // (e.g. game data incompatibility, engine version incompatibility, etc
 // note: this automatically filters the server browser, clients of the new
@@ -17,9 +18,9 @@
 // e.g. Xonotic 1.5.1 RC1 will be 15101
 set g_xonoticversion git "Xonotic version (formatted for humans)"
 
 // e.g. Xonotic 1.5.1 RC1 will be 15101
 set g_xonoticversion git "Xonotic version (formatted for humans)"
 
-gameversion 802 // 0.8.2
-gameversion_min 0 // git builds see all versions
-gameversion_max 65535 // git builds see all versions
+gameversion 805       // 0.8.5
+gameversion_min 802   // 0.8.2 is the previous release
+gameversion_max 65535 // future versions should nag players to update
 
 // compatibility guideline:
 //   version a.b.c   = a0b0c
 
 // compatibility guideline:
 //   version a.b.c   = a0b0c