Version history/2.0

From Zandronum Wiki
Zandronum 2.0
Release date 29 March 2015
Previous 1.3
Next 2.1

Zandronum 2.0 is a major update for Zandronum that was released on 29 March 2015.


  • Updated Zandronum's (G)ZDoom base to ZDoom SVN revision 2560 / GZDoom SVN revision 900 [Torr Samaho]
  • Added quad-buffered stereo / 3D Vision support to the GL renderer (minimal invasive implementation based on biospud's GZ3Doom). [Torr Samaho]
  • Added the OS used to the version string the server sends to the launchers (adapted form Konar6's kpatch). [Torr Samaho]
  • When a banned client is prevented from connecting, the ban reason (if specified in the banlist) is logged to the server console (adapted form Konar6's kpatch). [Torr Samaho]
  • Added a new compatflags cvar: compat_silentwestspawns, emulates Vanilla compatibility by not performing any spawnfog/sounds for west angled spawns. [Water, Edward-san]
  • Added compat_maxbloodscalar which will enforce vanilla red screen damage as if the blood_fade_scalar was 1.0. [Water]
  • Ported CVARINFO lump support and the ACS functions SetCVar, GetCVarString and SetCVarString from ZDoom. This includes support for CVars that are automatically synced between server and clients. User CVars are not support for now though. [Torr Samaho]
  • Added domination and customteamgame to SBarInfo gamemode detection. [Blzut3]
  • Added dmflag sv_unblockallies which is exactly like sv_unblockplayers except only unblocks ally players. [Dusk]
  • The server can now advertise WADs as optional so long as said WADs are not necessary for clients to join. This is controlled with the new command-line option -optfile and the new preferoptionalwads CVar. Note: this is only a hint for server browsers! Authentication is and has always been lump-based and not WAD-based! [Dusk]
  • Added support for Zandronum-specific gamemodes for the alternative HUD. [Dusk]
  • Added CVAR sv_limitcommands which can be set to false to disable various flooding limits (allow constant suiciding, team changing, disable command flood auto-kick, etc). Should not be set to false in public servers. [Dusk]
  • Added a Network Options menu which will contain all new network options. [Water, Torr Samaho]
  • The authentication mechanism for non-map related lumps now allows Freedoom 0.9/Doom clients to join Doom/Freedoom 0.9 servers. [Torr Samaho]
  • Significantly bandwidth-optimized server-to-client ACS_Execute (and friends) calls. Such a call now uses 9 to 21 bytes of bandwidth per client per call (depending on the size of arguments), instead of 22 to 29 bytes. [Dusk]
  • Added cl_showspawns, which creates a particle fountain at active spawns. [Water, Torr Samaho]
  • Added a decorate flag DONTIDENTIFYTARGET which prevents player identification from being done to the actor. [Water]
  • Added CVAR compat_autoaim which restores vanilla autoaim, as there was a switch to autoaim filling in the gaps due to limited number of tracers from vanilla. [Water]
  • Added CVAR cl_clientflags which controls both cl_unlagged and cl_respawnonfire to save bandwidth and make future booleans easier to transmit over the network. [Water, Torr Samaho]
  • Added a menu entry to for the GZDoom HUD, i.e. CVAR hud_althud. [Torr Samaho]
  • Added a CVAR (wi_autoscreenshot) to allow screenshots to automatically be taken upon entering the intermission screen. [Water, Torr Samaho]
  • Added CVAR cl_clientsidepuffs which allows clients to predict puffs, which makes bullet puffs from hitscan weapons appear instantly. [Water, Torr Samaho]
  • Added bloodsplatter effects to also be performed when cl_hitscandecalhack is set to true. [Water, Torr Samaho]
  • The server now kicks its clients when it shuts down. [Dusk]
  • Added support for RCON client tab-completion. This bumps the protocol version to 4, but clients using protocol 3 are still supported. [Dusk]
  • The client movement buffer is now reordered based on the client's gametic information before the commands are processed. [Torr Samaho, Water]
  • Added gametic unlagged which should perform better under varying net conditions compared to ping-based unlagged. [Water, AlexMax, Torr Samaho]
  • An icon will be displayed in the scoreboard if you're in the console, similarly to chat. [Cata]
  • Added new player pawn property Player.MaxSkinSizeFactor which allows customization of the limits used by skin size checking. Skins larger than hitbox size (radius * 2, height) times this factor are downsized to fit. Defaults to the original hardcoded values 3.44, 1.68. Setting either value to 0 disables the limit entirely. Made the warning message more descriptive and informative. [Dusk]


  • Fixed problems when boss monsters were replaced by Randomspawners in game modes that use map resets, e.g. survival. [Torr Samaho]
  • Fixed: Radius_Quake didn't work properly online if the duration was longer than 128 tics. [Torr Samaho]
  • Fixed: Blocked poly object doors were not handled properly online. [Torr Samaho]
  • Fixed: No longer can pick up team items in CTF or Skulltag after the round ends. [Water]
  • Fixed: Monsters near the bottom of a ledge on a raising sector sometimes appeared as teleporting up on clients online. [Torr Samaho]
  • Fixed: Light effects created by scripts weren't removed during a map reset. [Torr Samaho]
  • Fixed: MAPINFO lumps were not protected. [Dusk]
  • Fixed: Instant light fading was not updated on the client's side. [Water]
  • Fixed: Frozen corpses were not properly cleaned up during the countdown phase, leading to unexpected behavior with player viewpoints. [Water, Torr Samaho]
  • Trying to generate bot nodes on very large maps caused the game to crash. This should now be fixed at least on extremely large maps. Bots are disabled in this case. [Torr Samaho]
  • Fixed: The crouched sprite wasn't displayed for skins enforced through Weapon.PreferredSkin if the player class had +NOSKIN. [Esum, Torr Samaho]
  • Fixed: Player spawn height now is on the ground so any player starts in the air will not result in team telefragging unless all spawns are full. [Water, Torr Samaho]
  • Fixed: Missiles with the +NOEXPLODEFLOOR flag desynced online. [Dusk]
  • Fixed: A voodoo doll exiting the level would print a bogus " exited the level" message. [Dusk]
  • Fixed: Reflection desync between client and server if it doesn't have a Doom/Hexen bouncetype property. [Water, Torr Samaho]
  • Fixed a server crash related to the client movement buffer. [Torr Samaho]
  • Fixed: SetFont() would 'leak' into other scripts online. [Dusk]
  • Fixed: Spectators could not trigger allowed action specials with sectors. The only exceptions are the 'Use' and the 'UseWall' action triggers. [Edward-san, Torr Samaho]
  • Fixed: The server did not inform the clients fully about the crush behavior of floors, ceilings and pillars. [Edward-san]
  • Fixed: The server could crash the clients with malicious packets. [Torr Samaho]
  • Fixed problems with the client side Z position prediction near ledges. [Torr Samaho]
  • Fixed: a closing polyobject door made no sound online. [Dusk, Edward-san]
  • Fixed: The server did not inform the clients correctly about the type of the door action, making the clients hear the wrong door sound. [Edward-san]
  • Fixed: The client could potentially get HOMs while requesting a snapshot. [Leonard, Torr Samaho]
  • Fixed: CVAR sv_unblockplayers now works with different species. [Leonard]
  • Fixed: The scale of skins enforced through Weapon.PreferredSkin was ignored if the player class had +NOSKIN. [Torr Samaho]
  • Fixed: In "teamgame" based game modes, friendly monsters didn't attack players of opposing teams unless provoked. [Torr Samaho]
  • Fixed: If the packet with the end of a snapshot was dropped on a server with no active players, a client possibly waited forever for the snapshot to finish. [Torr Samaho]
  • Fixed: The client didn't let bouncing missiles spawned by A_SpawnItemEx pass through the player who spawned the missiles. [Torr Samaho]
  • Fixed: After a map change, items at player starts would be inadvertently removed. [Dusk]
  • Fixed: CVAR cl_announcepickups didn't work in certain cases. [Leonard]
  • Fixed: Custom attenuation values did not work online. [Dusk, Edward-san]
  • Fixed: Rotating polyobjects did not stop on map resets. [Dusk, Edward-san]
  • Fixed: Emulated multiplayer and multiplayer map changes broke random. [Torr Samaho, Edward-san]
  • Fixed: Since Skulltag 98a, chat and announcer stopped producing sounds in game during Time Freeze and in intermission after map exiting while Time Freeze was on. [Edward-san]
  • Fixed: Spectators could not use the 'Teleport_NoStop' action special. [Edward-san]
  • Fixed: Under certain circumstances, the SKININFO parser didn't properly handle the sprite entry. [Torr Samaho]
  • Fixed: The CCMD 'kickfromgame' and the ACS function 'KickFromGame' could not work offline. [Edward-san]
  • Fixed: Spawn() and friends did not sync the spawned actor(s)'s tid to clients. [Dusk]
  • Renamed compatflags2 to zacompatflags and moved all Zandronum/Skulltag exclusive compatflags from compatflags to zacompatflags to resolve compatibility problems with ZDoom updates. Launchers and config files need to be updated to account for this change. [Torr Samaho]
  • Renamed dmflags3 to zadmflags, moved all Zandronum/Skulltag exclusive dmflags2 from dmflags2 to zadmflags and changed the remaining dmflags2 values to match the ZDoom values to resolve compatibility problems with future ZDoom updates. Launchers and config files need to be updated to account for this change. [Torr Samaho]
  • Since ZDoom 2.5.0 (and thus Zandronum) doesn't support script numbers higher than 999, Zandronum now gracefully errors out when encountering a script with an invalid number instead of crashing randomly. [Torr Samaho]
  • The Linux binaries can now be debugged with the zandronum.debug file, which is provided in a separated download. [Edward-san]
  • Changed intermission proceeding to not rely on spectators if there is active players. [Water]
  • The login server selected with authhostname needs to support version 2 of the login protocol. [Torr Samaho]
  • Changed how a sentinel variable is handled which makes it much harder for clients to purposely drop packets, thus stopping a speed hack. [Water, Torr Samaho]
  • Changed: Free spectators can now use the noclip cheat in demos. [Leonard]
  • Changed the CTF flag height from 16 to 48, which will prevent players from clipping through them without picking them up on stairwells or uneven terrain. [Striker]
  • Reduced the time interval between each join and each team switch to 3 seconds. [Edward-san]