Cross-posting, but this is quite big. From @Torr_Samaho:   Introduction: At long last, the wait is finally over, and just in time before the holiday season! After more than four years in development, we are happy to announce the release of Zandronum 3.1!

Despite technically being a minor version, this comes packed with tons of fixes and additions. Something worth noting is that the skip correction ("sv_smoothplayers") couldn't make it into the final release due to unforeseen issues that made it problematic to have it on. So we had to be postpone it for a later release. Other than that, here is a short summary on some of the more notable changes: A new server administration menu made by Dusk, enabling RCON users to change server settings within the menus and without needing to use the console. A new private chat mode so that players can send private messages to each other (or the server), using "sayto" or "sayto_idx". The server can decide on whether or not private messages are allowed with the CVar "sv_allowprivatechat". Various netcode improvements, especially with the unlagged, done by Leonard. An option for players to send up to 3 backup copies of older move or weapon select commands using "cl_backupcommands". Particularly useful for players suffering from bad packet loss on a server. Servers can now specify their exact country to launchers with "sv_country" instead of launchers always relying on GeoIP to determine their location. New ACS functions: SetCurrentGameMode, GetCurrentGameMode, SetGameModeLimit, SetPlayerClass, SetPlayerChasecam, GetPlayerChasecam, SetPlayerScore, GetPlayerScore, InDemoMode, ExecuteClientScript, NamedExecuteClientScript, SendNetworkString, NamedSendNetworkString, GetChatMessage, GetMapRotationSize, and GetMapRotationInfo. New ACS EVENT script types: GAMEEVENT_CHAT, GAMEEVENT_PLAYERCONNECT, GAMEEVENT_ACTOR_SPAWNED, GAMEEEVENT_ACTOR_DAMAGED, and GAMEEVENT_ACTOR_ARMORDAMAGED. New SBARINFO commands: IfSpectator [not] [dead] and IfSpying [not]. New DMFlags and CompatFlags: sv_nounlaggedbfgtracers, sv_nodoorclose, sv_forcesoftwarepitchlimits, sv_shootthroughallies, sv_dontpushallies, compat_resetglobalvarsonmapreset, and compat_noobituaries. New vote types for enabling/disabling DMFlags ("callvote <flag name> <value>), and skipping to the next level (like the CCMD "nextmap") or next secret level (like the CCMD "nextsecret"). Mods can now set up the DMFlags, CompatFlags, and LMSFlags they need enabled or disabled for any game mode, all within the GAMEMODE lump. New parameters to the "addmap" and "insertmap" commands, specifying the minimum and maximum number of players required to enter a map. Players can now use names with complex colouring schemes without having to worry about reaching the length limit because of colour codes. More security checks to "ConsoleCommand". Particularly, the CVar "cl_protectcvars" prevents ConsoleCommand from permanently changing a user's settings, and CVARINFO can now safely replace any CVars that were previously created using ConsoleCommand. Loading ZIP/PK3 files containing duplicate protected lumps now results in a fatal error when hosting a server. Added support for player colour sets. Added most of the features originally from ZCC, including: chat prefixes/suffixes, custom weapon swaying, bobbing, offsetting, extra information for "cl_identifytarget", and more. Added all of the text colours from "New Text Colours" originally made by FuzzballFox. Changed the executable icon for Windows users to a more sleek, modern design originally made by Medicris.   And of course, here is the full list of changes:   Download:  Here   PS: Thanks a lot to Kaminsky and DoomJoshuaBoy for reviving the development! And also thanks to Kaminsky for drafting this announcement. Since it's been so long since the last release, I took the liberty of posting this myself :).   Source: Zandronum.com