Version history

Revision as of 03:12, 28 October 2021 by DrinkyBird (talk | contribs) (Update latest 3.1 version number)

Release table

An asterisk (*) marks an unofficial build.

Stable

Version Released          
  3.0.1 Oct 13, 2019 Installer Zip x86_64 ZA_3.0.1
  3.0 Sep 07, 2017 Installer Zip x86 x86_64 Installer ZA_3.0
  2.1.2 Jul 19, 2015 Installer Zip x86 x86_64 Installer i386 server* x86_64 server* ZA_2.1.2
  2.1.1 Jul 13, 2015 Installer Zip x86 x86_64 Installer ZA_2.1.1
  2.1 Jun 21, 2015 Installer Zip x86 x86_64 Installer ZA_2.1
  2.0 Mar 29, 2015 Installer Zip x86 x86_64 Installer ZA_2.0
  1.3 Oct 05, 2014 Installer Zip x86 x86_64 Installer ZA_1.3
  1.2.2 Jun 22, 2014 Installer Zip x86 x86_64 Installer ZA_1.2.2
  1.2.1 May 25, 2014 Installer Zip x86 x86_64 Installer x86_64 server ZA_1.2.1
  1.2 Sep 01, 2013 Installer Zip x86 x86_64 Installer x86_64 server ZA_1.2
  1.1 Jul 17, 2013 Installer Zip x86 x86_64 Installer ZA_1.1
  1.0 Aug 24, 2012 Installer Zip x86 x86_64 Installer x86_64 server ZA_1.0
  0.98d Nov 7, 2010 Installer Zip / lite base + x86 base + x86_64 Installer base + i386 server ST_0.98d
  0.98c Installer Zip / lite base + x86 base + x86_64 Installer base + i386 server ST_0.98c
  0.98b Installer Zip / lite base + x86 base + x86_64 Installer base + i386 server ST_0.98b
  0.98a Installer Zip / lite base + x86 base + x86_64 Installer base + i386 server ST_0.98a
  0.97d5 security update 1 Patch Zip Ubuntu patch tar.bz2 i386 server patch tar.bz2 ST_0.97d5-security-update-1
  0.97d5 Installer Zip base + Ubuntu base + i386 server ST_0.97d5
  0.97d4 Zip base Debian
Fedora
Gentoo
Knoppix
Slackware
Ubuntu
base + i386 server ST_0.97d4
  0.97d3 ST_0.97d3
  0.97d2 ST_0.97d2
  0.97d ST_0.97d
  0.97c3 Zip ST_0.97c3
  0.97c2 Zip ST_0.97c or source zip
  0.97c Zip ST_0.97c
  0.97b Zip
  0.96f Zip
  0.96e Zip
  0.96d Zip or with FreeDoom
  0.96c Zip or with FreeDoom
  0.96b Zip or with FreeDoom
  0.95k Zip
  0.95j Zip
  0.95i Zip
  0.95h Zip
  0.95g Zip
  0.95f Zip
  0.95e Zip
  0.95d Zip
  0.95c Zip
  0.94c Zip
  0.94b Zip
  0.93 Zip
  0.92 Zip
  0.91 Zip source zip
  0.90 Zip
  0.81 Zip
  0.8 Zip
  0.71 Zip
  0.70 Jun 11 2000? Zip

Betas

Version Beta Released              
  3.1 3.1-alpha-211026-1439 Oct 26, 2021 2.8pre-441-g458e1b1 1.8.6 Zip see zandronum-stable

Changelogs

Development

Note: Because the versions under this section are still undergoing development, these changelogs might be slightly outdated. It's best to keep up to date via the #zatesting channel on IRC or checking the history file in the source repository time to time.

3.1

  • Added a new server administration menu, from which server settings can be changed without needing to use the console. The menu will ask for the RCON password if necessary. Gameplay and compatibility settings are now grayed out unless the user has RCON access and work online properly. Added various Zandronum-specific gameplay settings to the menu. [Dusk]
  • Added a new chat mode that lets players send private messages to each other. The sender can either pass the player's name with "sayto" or a player's number with "sayto_idx". Alternatively, players can send private messages to the server by passing "server" as a name. [Kaminsky]
  • Added the CVar "sv_smoothplayers" to improve the movement of lagging players. [Kaminsky]
  • "stat nettraffic" now also shows information on the number of many missing packets the client requests from the servers. [Torr Samaho]
  • The server can now broadcast the MD5 hashes of loaded PWADs to launchers. [Sean]
  • Added new console commands "demo_ticsplayed" to show the current position in demo playback and "demo_skipto" to skip to such a position.
  • Added new console variable "sv_nodoorclose" to prevent manual door closing, in order to prevent large numbers of players from blocking a door by continuously opening and closing it. [DoomJoshuaBoy]
  • Added new compatibility flag "compat_noobituaries" to prevent obituaries from being printed to the console when a player dies. [Kaminsky]
  • Added new compatibility flag "compat_resetglobalvarsonmapreset" to reset all global ACS variables upon resetting the map like in survival. [Kaminsky]
  • Added new ACS functions: SetGamemodeLimits(int limit, int value) to change gamemode limits, SetCurrentGamemode(str gamemode, bool reset) to switch gamemodes during a game, and GetCurrentGamemode() to get the gamemode being played. [Kaminsky]
  • Added ACS function: SetPlayerClass(int player, str class, bool respawn) to allow changing of a player's class. [Kaminsky]
  • Added ACS functions: SetPlayerChasecam(int player, bool enable) and GetPlayerChasecam(int player) to enable or disable the built-in chasecam for the player. [Kaminsky]
  • Added a new scoreboard icon that displays if a player is lagging to the server. [Kaminsky]
  • Added ACS functions: SetPlayerScore(int player, int type, int value) and GetPlayerScore(int player, int type) to get or set the player's score. The type can be either frags, points, wins, deaths, kills, or the item and secret counts. [Kaminsky]
  • Added an ACS special to check whether the game is in demo or not [DoomJoshuaBoy/geNia]
  • Added new SBARINFO commands: IfSpectator [not] [dead] and IfSpying [not] that execute a sub block if the local player is (not) a (dead) spectator, or (not) spying on another player respectively. [Kaminsky]
  • Added ACS functions: ExecuteClientScript and NamedExecuteClientScript which let the server execute clientside scripts for only one client as opposed to everyone. This allows net traffic to be greatly optimized, such that the server only sends out commands to the client(s) that matter. [Kaminsky]
  • Added ACS functions: SendNetworkString and NamedSendNetworkString, allowing strings to be sent from the server to the client(s) and vice versa, which are passed as the first argument of script to also be executed. Note that sending strings from client to server works just like puking scripts and there's no guarantee they are sent to the server successfully. [Kaminsky]
  • Added a new EVENT script type: GAMEEVENT_CHAT that triggers when a non-private chat message is sent. Use this in conjunction with the ACS function: GetChatMessage(int player, int offset) to get the last chat message received by the player (or the server if -1 is passed). [Kaminsky]
  • Added a new floating icon that shows if a player is in the menu. [DoomJoshuaBoy/geNia]
  • Added the CVar "con_showtimestamps" which adds a timestamp to the beginning of each line on the console. [Kaminsky]
  • Added the CVar "cl_showpacketloss" which prints how many packets were missed when the client experiences packet loss. [Kaminsky]
  • Added a check that prevents demos from being played if the version string stored in the file doesn't match the current version being used. This means, for instance, a release version of Zandronum cannot playback a demo that was recorded using a beta version. [Kaminsky]
  • Added the CVar "cl_hidevotescreen" which controls if the vote screen should be hidden shortly after the client makes their vote. In order to keep the same behaviour like in older versions, this CVar is set to true by default. [Kaminsky]
  • Added new console variable "sv_forcesoftwarepitchlimits" to force the player's pitch to be limited to what's allowed in the software renderer. [Kaminsky]
  • Backported the chat prefix and suffix features from ZCC, which have been renamed to "cl_chatprefix" and "cl_chatsuffix" respectively. [Kaminsky]
  • Added new options to GAMEMODE: "gamesettings" and "removegamesetting", allowing modders to specify what gameplay or compatibility flags need to be enabled or disabled for a particular game mode. All flags added into the "gamesettings" block are locked and cannot be manually changed while the game mode is being played unless they're removed using the latter option. [Kaminsky]
  • Added a new vote type for changing gameplay or compatibility flags by doing "callvote <flag name> <value> [reason]", which can also be disabled by the server using the "sv_noflagvote" CVar. Also added the missing checkbox for changemap votes in the server console window. [Kaminsky]
  • Added new parameters to the "addmap" and "insertmap" CCMDs that specify the minimum and maximum number of players required to enter a map. [Kaminsky]
  • Added ACS functions: GetMapRotationSize and GetMapRotationInfo to get information about the server's map rotation. [Kaminsky]
  • Added new console command "weapswap" which swaps the player's weapon to the one they were using before. [Kaminsky]
  • Added the CVar "cl_telespy". [Kaminsky]
  • Added the CVar "cl_protectcvars" which makes ConsoleCommand not archiving CVar changes to the user's config file optional. [Kaminsky]
  • CVars defined in CVARINFO can now replace "unknown" variables, particularly those originally created using ConsoleCommand. [Kaminsky]
  • Added the the console commands "spyto" and "spyto_idx". [Kaminsky]
  • Added the console command "spycarrier" for spying on players carrying gamemode-specific items. Particularly useful for streamers who want to quickly switch to the carrier(s). [Kaminsky]
  • The map rotation is now synced with the clients, meaning clients can now use the "maplist" CCMD to view the map list. [Kaminsky]
  • Added "cl_autoready" to automatically set a client as ready to go and "cl_intermissiontimer" to show the intermission countdown and the next map. [DoomJoshuaBoy/Kaminsky]
  • Added CVars that customize how the weapon bobs, sways, and offsets based on the player's pitch, or whether or not to bob the screen itself while leaving the weapon bob unaffected. [Kaminsky]
  • Added the GAMEMODE flag DONTPRINTPLAYERSLEFT to prevent printing the "waiting for players" or "x allies/opponents left" message at the bottom of the screen. [Kaminsky]
  • Added all of the text colors from "New Text Colors", originally made by FuzzballFox. [Kaminsky]
  • Added the EVENT script type: GAMEEVENT_PLAYERCONNECT, indicating when a client or bot joins the server. [Kaminsky]
  • Added the EVENT script type GAMEEVENT_ACTOR_SPAWNED and GAMEVENT_ACTOR_DAMAGED, which are triggered just before an actor's first tic and when an actor takes damage. Note that for performance reasons, these events are disabled by default so modders have to enable them by themselves. [Kaminsky]
  • Added DMFlags: "sv_shootthroughallies" and "sv_dontpushallies", so a player's attacks can pass through and not push their allies. [Kaminsky]
  • Added packet loss mitigation, which the client can control using the CVar "cl_backupcommands". [Kaminsky]
  • Added the server CVAR "sv_country", which allows servers to present their country to launchers. [Sean]
  • Fixed: Bots tries to jump to reach item when sv_nojump is true. [sleep]
  • Fixed: ACS function SetSkyScrollSpeed didn't work online. [Edward-san]
  • Fixed: color codes in callvote reasons weren't terminated properly. [Dusk]
  • Fixed: The 'Color Setter' and the 'Fade Setter' things weren't handled properly on map resets. [Edward-san]
  • Fixed: A_JumpIfTargetInsideMeleeRange and A_JumpIfTargetOutsideMeleeRange weren't handled properly online. [Edward-san]
  • Fixed: Same spot respawn didn't work anymore with dead spectators. [Edward-san]
  • Fixed: A_CheckLOF wasn't handled properly online. [Edward-san]
  • Fixed the DROPPED flag not being removed from level-spawned things when not needed. [Edward-san]
  • Fixed an ACS related server and client crash. [Torr Samaho]
  • Fixed: loading from a savegame lost the extra player statuses, like the spread rune mode. [Edward-san]
  • Fixed: Bots DH_ARRAYSET implementation is wrong. [sleep]
  • Fixed jittery model interpolation, partly based on dpJudas's fix for GZDoom. [StrikerMan780]
  • Fixed an integer overflow crash related to decals. [eagle, Torr Samaho]
  • Fixed GAMEEVENT_CAPTURES and GAMEEVENT_RETURNS scripts not executing in One Flag CTF or Skulltag. [Kaminsky]
  • Fixed the obituary for the BFG tracer not being used if a player was killed by them. [Kaminsky]
  • Fixed desaturated translations created with CreateTranslation() not syncing with clients in an online game. [Kaminsky]
  • Fixed missiles with the STEPMISSILE flag disappearing in online games. [Kaminsky]
  • Fixed faulty armor behaviour that occurred when the player's inventory was cleared. [Kaminsky]
  • Fixed sound channels containing looped sounds not being synced with newly connected clients. [Kaminsky]
  • Fixed the StopSound ACS function not working in online games. [Kaminsky]
  • Fixed the ChangeCamera line special not reverting the HUD to match the player that the client is looking through. [Kaminsky]
  • Fixed Line_SetTextureOffset and Line_SetTextureScale not working in online games. [Kaminsky]
  • Fixed ACS HudMessage alpha, visibility, and layer flags not working online. Also fixed SetHudClipRect and SetHudWrapWidth not working online. [Kaminsky]
  • Fixed Team_Score and Team_GivePoints not working properly on all gamemodes that support teams and give points. [Kaminsky]
  • Fixed user variables not being reset for actors that aren't respawned during a map reset. [Kaminsky]
  • Fixed issues with A_SkullPop and if the player spectates while the PlayerChunk actor is still in midair. [Kaminsky]
  • Fixed the class field of a skin breaking A_SkullPop and spawning dummy players instead of the "PlayerChunk" actor. [Kaminsky]
  • Fixed the INVENTORY.NOSCREENFLASH flag not working in online games. [Kaminsky]
  • Fixed "random" when used for the class property in BOTINFO not actually assigning the bot a random player class but instead choosing the first player class in the list. [Kaminsky]
  • Fixed SetActorProperty not working online with APROP_StencilColor. [Kaminsky]
  • The console and chat no longer opens or closes while the user is holding down the grave or enter keys. This makes it extremely difficult to flicker the console or chat icons and trigger client command floods. [Kaminsky]
  • Fixed "####" and "----" in PlayerPawns. [Zandrewnum]
  • Fixed dormant sounds from still playing upon resetting the map. [Kaminsky]
  • Fixed a player's old body from being frozen and not finishing their animation when they become a dead spectator. [Kaminsky]
  • Fixed dead spectators not spawning where they died if sv_samespawnspot is enabled. [Kaminsky]
  • Fixed ACS scripts puked by the server RCON from using player 0 as the activator. [Kaminsky]
  • Fixed a compatibility issue with printing team-related messages on the screen using custom colors. [Kaminsky]
  • sv_forcegldefaults renamed to sv_forcevideodefaults. The old name still exists for compatibility. [Dusk]
  • r_3dfloors is now forced to be true when sv_forcevideodefaults is true. [Dusk]
  • When the wad authentication fails for a connecting client, the client only reports the missing and incompatible PWADS instead of all of them. [Pol Marcet]
  • GAMEEVENT_CAPTURES scripts now pass the number of points earned as 'arg2'. [Kaminsky]
  • gl_lights_size is now forced to its default value when sv_forcevideodefaults is true. [Kaminsky]
  • The Player_SetTeam line special now accepts a second parameter to enable/disable the broadcast message. By default, the message is still printed. [Kaminsky]
  • ZIP/PK3 files containing duplicate lumps will now print warning messages in the console when they're found, and a fatal error will occur if any of these duplicate lumps need to be authenticated on the server. [Kaminsky]
  • The "map" and "changemap" votes now show the full name of the level in addition to the lump name. [Kaminsky]
  • Re-enabled code that adds support for player color sets. [Kaminsky]
  • Actors with the CLIENTSIDEONLY flag that are spawned using the "summon" cheat in online games are now removed on the server's end, but will still spawn on the client's end. [Kaminsky]
  • The $weapon and $ammo keywords for "chat_substitution" will now use the corresponding actor's tag if it exists, instead of always using the class name. [Kaminsky]
  • The CVar "cl_identifytarget" is now an integer and has been extended to print additional information about a teammate including their health and armor, weapon and ammo count, and class or skin, in a similar format to the coop info. [Kaminsky]
  • The default renderer for new users will now be the OpenGL renderer instead of the software renderer. [Kaminsky]
  • Changed the default binds of some commands to more modern controls. [Kaminsky]
  • The chat cursor now blinks while the client is typing a message. [Kaminsky]
  • The "You fragged" and "You were fragged by" HUD messages can now be edited in the LANGUAGE lump. [DoomJoshuaBoy/Kaminsky]
  • A player's health on the coop info or target identification is now color coded based on percentage and not hardcoded numbers. Also added orange as a color to indicate when a player's health is between 26-50%. [Kaminsky]
  • The name of the server and the current game mode are now shown on the scoreboard's header. [Kaminsky]
  • Color codes are now omitted from the length of the player's name, allowing for more complex color schemes without reaching the limit. There's still a technical limitation so that names aren't too long when sent across the network. [Kaminsky]
  • The chasecam is temporarily disabled while the local player is in free spectate mode. [Kaminsky]

Zandronum

3.0.1

  • Fix a server hang that could be caused by malformed userinfo data. [Sean]
  • The spectate, join, suicide, change team, and inventory drop client commands will now trigger a client command flood. [Sean]

3.0

  • Updated Zandronum's (G)ZDoom base to ZDoom 2.8pre-441-g458e1b1 / GZDoom 1.8.6. [Torr Samaho]
  • Rewrote support for preferred weapon order. Weapon info is now automatically looked up, the ORDERDEF lump has been removed. [Dusk]
  • Generalized the rune system. Any rune can be used as a powerup (including spread, prosperity and reflection, which are now available as powerups), and any powerup can be used as a rune. [Dusk]
  • Added a new buffer for the reliable packets scheduled to be sent from the server to the clients. This allows to limit the number of packets the server sends to a client per tick (CVAR sv_maxpacketspertick, default 64). In particular, this allows to spread the full update a client gets when connecting to the server over multiple ticks and should fix problems connecting to large maps with many actors. Also increased the packet loss buffer size from 1024 to 2048. [Torr Samaho]
  • Added NamedRequestScriptPuke, named variant of RequestScriptPuke. The two functions can now take 1-5 parameters, thus supporting 4 script arguments. [Dusk]
  • Added ACS time and date access functions SystemTime(), GetTimeProperty and Strftime(). The return value of SystemTime() may be overridden by the user with the new CCMD acstime. [Dusk]
  • Quad-buffered stereo / 3D Vision support can now be toggled with the new CVAR gl_quadbufferedstereo (default false). [Torr Samaho]
  • The warp cheat now works online and can be used by spectators even if sv_cheats is false. [Dusk]
  • Being banned from a server now shows the server's contact email address. Being masterbanned now shows a clearer message that directs to the forums. [Dusk]
  • Players' positions in the join queue are now rendered on the scoreboard. [Dusk]
  • The internal server browser now automatically loads the wads of the selected server when joining. For this, all wads need to be in a place where they can be found with the '-file' command line option. In the browser menu, the left and right keys allow to scroll through the list of filtered servers. [Torr Samaho]
  • The 'Join the game' command key used by spectators is now customizable in the 'Customize Controls' menu. [Edward-san, Dusk]
  • The default 'authhostname' CVAR has been changed to the official zandronum game authentication server ( auth.zandronum.com:16666 ). [AlexMax, Edward-san]
  • BOTINFO now allows to define more than 128 bots. [Torr Samaho]
  • Chat now features a movable cursor, allowing text insertion/deletion from elsewhere than just the end. [Dusk]
  • Chat preview is now rendered on multiple lines, if necessary. [Dusk]
  • Chat now remembers the ten previously sent messages that can be brought up with up/down arrow keys. [Dusk]
  • Chat can now tab complete player names. [Dusk]
  • Clients' account names are now visible in the output of CCMD "playerinfo", unless the player hides it with the new CVar cl_hideaccount. The server can always see the accountname from playerinfo. [Dusk]
  • Added a mechanism to safe login credentials under Windows using the Windows Credential Manager aka Windows Vault. The credentials can be stored using the new CCMD 'login_add'. A default user name can be specified with the new CVAR 'login_default_user'. [Torr Samaho]
  • This server now prevents players to use a name already used by another player. If a player requests a duplicate name, the player is renamed to 'Player N' where N is a random number from 0 to 9999. [Torr Samaho]
  • Added CCMD demo_pause that allows to pause/resume the currently played client side demo. In free spectate mode, the spectator can still move around while the demo is paused. [Torr Samaho]
  • Added cl_soundwhennotactive CVAR support to non-Windows clients. [Edward-san]
  • Added support to clientside ACS_ExecuteWithResult with four arguments. [Edward-san]
  • Added sv_survival_nomapresetondeath Zandronum dmflag to modify survival game mode where the map will not be reset on all players death - the players will be able to continue with fresh amount of lives. Dead players will carry over their inventory in accordance to "keep inventory" flags. [Zalewa]
  • Backported ZDoom's ACS function GetActorFloorTexture. [Torr Samaho]
  • The SQLite3 database can now be used in WAL mode. This mode is enabled / disabled with the new CCMDs 'db_enable_wal' / 'db_disable_wal'. [Torr Samaho]
  • Added new ACS command SetDeadSpectator (int playernumber, int deadspectator). This command can turn alive players into dead spectators (deadspectator == 1) and revive dead spectators (deadspectator == 0). [Torr Samaho]
  • Added the new ACS command SetActivatorToPlayer as a replacement solution for AAPTR_PLAYERx that works with all 64 players instead of only 8. [Dusk]
  • Added CVAR sv_forcerespawntime that controls the time delay before force respawn activates and respawns a player. [Ru5tK1ng]
  • The authentication mechanism for non-map related lumps now allows Freedoom 0.11.3/Doom clients to join Doom/Freedoom 0.11.3 servers. [Torr Samaho]
  • Fixed: Newly connecting clients were not properly informed about the secrets that were already revealed. [Torr Samaho]
  • Fixed: Resurrect cheat didn't work online. [Dusk]
  • Fixed: Turbo cheat didn't work online. [Dusk]
  • Fixed: Kill [class] cheat didn't work online. The kill monsters cheat can also be used by clients if sv_cheats is true. The server can use the kill [class] cheat anytime, like with kill monsters. [Dusk]
  • Fixed: Logfiles would sometimes contain timestamps in the middle of lines. [Dusk]
  • sv_shotgunstart is now respected in non-cooperative gamemodes. [Dusk]
  • Fixed: Take cheat didn't work online. [Dusk]
  • Fixed: An invalid "winlimit hit" message would be displayed on map change in possession. [Dusk]
  • Fixed: The internal server browser didn't list all of the compatible, available servers. [Torr Samaho]
  • Fixed: A_CheckSight would not jump if a spectator was in the line of sight of the calling actor. [Dusk]
  • Fixed: Using kick_idx, ignore_idx, unignore_idx, getip_idx, kickfromgame_idx and ban_idx with an invalid player index assumed a default of player 0. [Dusk]
  • Fixed: SpawnDecal did not work online. [Dusk]
  • Fixed: the 'take inventory' server command informed the clients by using the inventory class string instead of the much cheaper network id. Thanks to Siferah for spotting and reporting it. [Edward-san]
  • Fixed: the 'spawn player' server command used 1 more byte than needed. [Edward-san]
  • Fixed problems of the Doom status bar with high res font replacements. [Torr Samaho]
  • Fixed: ACS function PlaySound did not work online. [Edward-san]
  • Fixed: Bots on a large map may freeze the game. [Torr Samaho]
  • Fixed: clients would play D'Sparil's attacks sound even when the attacks didn't start because there was no target to attack. [Edward-san]
  • Fixed: clients weren't informed to play the heretic Knight attack sounds when it throws the axes. [Edward-san]
  • Fixed: clients were told to play the 'poison cough' sound even when the poisoning by flechette didn't happen (for example because the player is invulnerable). [Edward-san]
  • Fixed: clients were not informed correctly about the actors being in alert when another actor is hit by a dagger attack. [Edward-san]
  • Fixed: clients would play the sounds from the world-activated ACS function ActivatorSound differently from offline. [Edward-san]
  • Fixed: the server didn't inform the clients to not apply the DROPPED flag to level-spawned items which don't have it by default. [Edward-san]
  • Fixed: clients were not informed correctly about the morphed player's morph style. [Edward-san]
  • Fixed: clients were not informed to play the active sound of a PowerProtection powerup. [Edward-san]
  • Fixed: clients couldn't hide the RaiseAlarm item released by dying NPC actors. [Edward-san]
  • Fixed: clients were not informed correctly about actors being affected by A_NoBlocking invoked by an item pickup. [Edward-san]
  • Fixed: HUDMessage messages weren't cleared on map resets. [Edward-san]
  • Fixed: Player start types were selected based on the CVARs deathmatch and teamgame instead of the GAMEMODE flags DEATHMATCH and TEAMGAME. [Torr Samaho]
  • Fixed: A titlemap run with gamemode cooperative and dead spectators was not started correctly. [Edward-san, Torr Samaho]
  • Fixed: The ACS function ReplaceTextures didn't show an effect for clients already in the game. [Torr Samaho]
  • Fixed: Certain code pointers like A_PlaySound didn't work on MorphFlash/UnMorphFlash online. [Torr Samaho]
  • Fixed: Clients played the Archvile resurrect sound twice. [Edward-san]
  • Fixed a network inconsistency with Archvile-like monsters which miss the Heal state and use A_VileChase to eventually resurrect the corpses. [Edward-san, Torr Samaho]
  • Fixed: clients didn't handle properly resurrecting monsters in rare occurrences. [Edward-san]
  • Fixed the wrong thingz positioning after an offline map reset. [Torr Samaho, Edward-san]
  • Fixed: clients mispredicted NOGRAVITY things, attached to the ceiling, when pushed by something. [Edward-san]
  • Fixed: menu ignore got confused about players with the same name. [Dusk]
  • Fixed: A_Respawn wasn't handled correctly online. [Edward-san]
  • Fixed: clients couldn't hear the player's jumping sound if present. [Edward-san]
  • Fixed: When the server used ACS_ExecuteWithResult to start a CLIENTSIDE scripts, the clients were told the wrong arguments. [Torr Samaho]
  • Fixed: A_Mushroom did not work properly online. [Torr Samaho]
  • Fixed: The server didn't instruct clients to spawn missiles from A_CustomMissile if they exploded on spawn. [Torr Samaho]
  • Fixed: AFastProjectile ignored the CLIENTSIDEONLY flag of its MissileType. [Torr Samaho]
  • Fixed: A_SpawnDebris did not work properly online and ignored the CLIENTSIDEONLY flag. [Torr Samaho]
  • Fixed: Voodoo dolls could cause unnecessary network traffic. [Torr Samaho]
  • Fixed: Indefinitely hidden non-inventory actors caused unnecessary network traffic during a map reset. [Torr Samaho]
  • Fixed: Clients were informed about RandomSpawners, even though they only needed to know about the outcome of the spawner, which wasted network traffic. [Torr Samaho]
  • Fixed: The server could instruct the client to spawn puffs without a netID even if the puff didn't have the NONETID flag. [Torr Samaho]
  • Fixed: Clients with high bandwidth weren't informed about the item dropping physics online. [Edward-san]
  • When sv_nocallvote is 2, only consider votes of players joined in the game (addresses 2590). [Ru5tK1ng]
  • Fixed: Returning to a map in a hub could crash the clients online. [Torr Samaho]
  • Fixed: Votes were not being removed or cancelled when a player disconnected. [Ru5tK1ng]
  • Fixed: Server-to-client ACS script executions could not represent the values [-127..-1] as parameters. [Dusk]
  • Fixed the inconsistent/missing number of allies and/or opponents left when the displayed player dies/spectates in gamemodes with dead spectators. [Edward-san]
  • Fixed: SMF_Look was not working in CTF and other team game modes. [Ru5tK1ng]
  • Fixed: Fixed colormaps not being respected for actors beneath 3D floors. [Dusk, Torr Samaho]
  • Fixed: The scoreboard duel wins drawer could crash with cameras not attached to the player. [Edward-san]
  • Fixed: The screen blending effects wouldn't work on the automap. [Edward-san]
  • Fixed: A_BrainScream and A_BrainExplode caused unnecessary network traffic. [Torr Samaho]
  • Fixed: the change of the player name with a too short name wasn't handled correctly. [Edward-san]
  • Fixed: z-position client-server inconsistencies for things on cliffs. [Zalewa, Edward-san]
  • Fixed: Leaf1 and Leaf2 caused unnecessary network traffic. [Torr Samaho]
  • Fixed: Mugshot multiplayer background color didn't change with player color in OpenGL. [Zalewa]
  • Fixed: "File|Join" from server console wouldn't load DeHackEd patches. [Zalewa]
  • Fixed: GetScreenWidth and GetScreenHeight ACS functions did not work online. [Dusk]
  • Fixed: the DamageFactor calculation was executed twice for armors. [Edward-san]
  • Fixed: body of the player who loses all lives no longer disappears into thin air. [Zalewa]
  • Fixed a certain number of commands and server CVARs which weren't protected against the ConsoleCommand. [Edward-san, Torr Samaho]
  • Fixed: the server could crash if a morph powerup is taken away when the morphed player exhausts the ammo. [Edward-san]
  • Fixed crash with voodoo dolls and PowerIronFeet. [Edward-san]
  • Fixed: Under rare circumstances, the server could freeze when selecting a random map from the map rotation. [Torr Samaho]
  • Fixed: When the server instructed a client to jump as result of A_Jump*, the client did not call the state function of the state jumped to. [Torr Samaho]
  • Fixed: The server didn't fully notify the clients about water splashes. [Torr Samaho]
  • Fixed a potential client crash related to the firing sound of a railgun. [Torr Samaho]
  • Fixed: Blood splatter caused unnecessary network traffic. [Torr Samaho]
  • Fixed: A_FiredSpawnRock and A_FiredSplotch caused unnecessary network traffic. [Torr Samaho]
  • Fixed: Angle arguments in DECORATE didn't work properly on ARM devices like the Raspberry Pi (adapted from the corresponding ZDoom fix). [Torr Samaho]
  • Fixed: The server informed the clients about the position of the other players during intermission, which generated unnecessary network traffic. [Torr Samaho]
  • Fixed: the server erroneously told clients that some slamming actors changed their state to the Spawn state instead of the Idle state. [Edward-san]
  • Slightly improved how the MinotaurFriend is handled online. [Edward-san]
  • Fixed: When a player was damaged, clients always executed the first state function of the standard pain state. [Torr Samaho]
  • Fixed: The server didn't inform the clients about changes made with A_ChangeFlag to the special Zandronum flags, like DONTIDENTIFYTARGET. [Torr Samaho]
  • Fixed: CLIENTSIDE scripts lost track of the player as activator when the player was morphed or unmorphed. [Torr Samaho]
  • Fixed: A too long value of sv_hostname could crash the Windows server when it was minimized to the system tray. [Torr Samaho]
  • Fixed: Using SetDBEntryString with an integer instead of a string as argument could cause a crash. [Torr Samaho]
  • Changed: Spectators can now interact with gravity and use the fly/land commands. [Leonard]
  • Save games now contain information about the renderer used to create the save. This allows to print a proper error message when an incompatible save is tried to be loaded. [Torr Samaho]
  • Clients don't error out anymore when encountering a division by zero in a DECORATE expression. Instead, a one time warning is printed on the first occasion and the result is assumed to be zero. This is necessary since clients can encounter this in valid DECORATE code due to Zandronum's jump handling. [Torr Samaho]
  • Changed the dmflags values to match the ZDoom values to resolve compatibility problems with the updated ZDoom base and future ZDoom updates. Launchers and config files need to be updated to account for this change. [Torr Samaho]
  • sv_nodrop is now a dmflag. [Dusk]
  • sv_limitnumvotes renamed to sv_votecooldown and changed to integer that determines the time to wait before a player can revote. All vote limits and times are double this value. [Ru5tK1ng]
  • Merged sv_nokill and sv_disallowsuicide into one dmflag with two names. [Dusk]
  • The CVARINFO error message triggered when an existing CVAR in the ini conflicts with CVARINFO now instructs the user to clean the ini. [Torr Samaho]
  • The server now displays the IP address of the player upon connection and disconnection in log messages. [Dusk]
  • ZDoom changed the jumping physics in ZDoom SVN revisions 2238 and 2970. The old jumping behavior known from Skulltag can be restored with the new CVAR compat_skulltagjumping. [Torr Samaho]
  • con_virtualwidth and con_virtualheight now default to 640 and 480, respectively. [Dusk]
  • kickfromgame and kickfromgame_idx have been renamed to forcespec and forcespec_idx, respectively, though the old names still exist for compatibility with e.g. aliases. Same also with the ACS function KickFromGame, whose new name is ForceToSpectate.
  • A new non-fatal 'Script Error' message will be printed if in a MAPINFO episode definition it's present either 'botskillname' or 'botskillpicname' but not 'botepisode'.
  • The CVARs gl_render_things, gl_render_walls, gl_render_flats and gl_mask_threshold are now restricted to beta builds. [Torr Samaho]
  • Make newly connected clients wait before calling a vote. The wait time is controlled with the new CVAR 'sv_voteconnectwait'. [Ru5tK1ng]
  • Keys can now be used while a client side demo is played. This allows binds to CCMDs like demo_pause to be used during playback. [Torr Samaho]
  • Dead spectators will now preserve inventory so that they can be respawned with it. [Zalewa]
  • When alive players complete the map in survival, dead spectators will recover their inventory on the next map in accordance to SV_COOP_LOSE* flags [Zalewa]
  • The 'authhostname' DNS lookup is not done during startup anymore, but only if the IP address is needed. [Torr Samaho]
  • The memory required for the bot nodes is now dynamically allocated when the first bot is added and freed when the last bot is removed. Thus, the CVAR sv_disallowbots is obsolete and was removed (adapted form Konar6's kpatch). This also fixes that offline, the memory required for the bot nodes was always allocated. [Torr Samaho]
  • To stay compatible with Zandronum 2.x, GetCVar still returns the consoleplayer's value if called in a non-player activated CLIENTSIDE script to get the value of a user cvar. [Torr Samaho]
  • Althud's discovered secret counter now shows global discovered secret count in netgames. [Zalewa]
  • Changed the default value of sv_defaultdmflags to false. [Torr Samaho]

2.1.2

  • Fixed the remaining jitter and weapon sync problems caused by the client movement buffer. [Torr Samaho]

2.1.1

  • The client movement buffer now can be toggled with the new CVAR sv_useticbuffer (default true). [Torr Samaho]
  • Fixed jittery player movement caused by the client movement buffer. [Torr Samaho]
  • Fixed: Clients wrongly predicted the health of the consoleplayer. [Edward-san, Torr Samaho]
  • Fixed: clients were not updated about the successful A_CustomPunch lifesteal attacks from a player. [Edward-san]
  • Fixed: clients were not updated about the successful A_Saw lifesteal attacks from a player. [Edward-san]

2.1

  • The Zandronum server is now compatible with the Raspberry Pi (based on selected ZDoom backports), so far only tested with a Raspberry Pi 2 Model B. [Torr Samaho]
  • Added support for ACS script numbers higher than 999. This is intended to increase compatibility with mods that worked in 1.3, but stopped working with 2.0. [Torr Samaho]
  • The server can now broadcast dehacked patches loaded with -deh and -bex to server browsers. [Dusk]
  • Added Catastrophe's CCMD 'ifspectator' that executes its argument only if the consoleplayer is a spectator. [Torr Samaho]
  • Fixed: Too high volume parameters to A_PlaySound and friends caused the volume to overflow online. [Dusk]
  • Fixed: Friendly fire obituaries did not appear online in competitive gamemodes. [Dusk]
  • Hopefully fixed a potential weapon switch induced client-side crash. [Dusk]
  • Fixed: Amount of total monsters went out of count upon map resets. [Dusk]
  • Fixed: When a player scored a point in CTF, Skulltag or Possession, the scoreboard in the Windows server console was not updated properly. [Torr Samaho]
  • Fixed: -optfile would eat CCMD calls (such as +exec) and treat them and their arguments as wads to include as optional. [Dusk]
  • Fixed: the 'light fast strobe in sync' sector special would visually desync while playing a demo. [Edward-san]
  • Fixed: A_LookEx desynced completely online. [Dusk, Edward-san]
  • Fixed possible health desync issues in some situations. [Edward-san]
  • Fixed: Trying to open a corrupt zip archive crashed the game (backported from ZDoom). [Torr Samaho]
  • Fixed: Players were kicked for excessive movement commands instead of simply ignoring the excessive commands. [Torr Samaho]
  • Fixed: clients were not informed of some actor flag modifications with A_ChangeFlag. [Edward-san]
  • Fixed: Trying to record client demos on some mods, e.g. duel32c_st.pk3, caused the client to error out. [Torr Samaho]
  • Fixed: A_FadeIn and A_FadeOut did not work for actors which don't have a network id. [Dusk, Edward-san]
  • Fixed: The client could not handle the display of the morphed mugshot in the status bar. [Edward-san]
  • Fixed: clients lost some actor flag modifications done in a previous map after a changemap map change. [Edward-san]
  • Fixed: Players would be awarded damage dealt to non-COUNTKILL monsters if sv_awarddamageinsteadkills was set. [Dusk]
  • Fixed: Using alternative track orders with music formats with multiple tracks did not work online. [Dusk]
  • Fixed: "gl_cachenodes 1" could crash the server. [Torr Samaho]
  • Fixed: A map change in CTF online could crash the game. [Torr Samaho]
  • Fixed: Blocked sliding polyobjects were not handled properly online. [Edward-san]
  • Fixed: The delayed stairs building movers were not handled properly online. [Edward-san]
  • Fixed: Some dehacked weapon attack sounds could not work. [Edward-san]
  • Fixed some weapon sync issues related to the client movement buffer. [Torr Samaho]
  • Fixed: Even when using a random map rotation, the map a server loads on start was not randomized (ported from Konar6's kpatch). [Torr Samaho]
  • Fixed: sv_forcegldefaults 1 stopped working properly for the gl clients. [Edward-san]
  • Make the crash log unique for SDL platforms by appending the timestamp to the file name. [Edward-san, Dusk]
  • The Linux executables now will be able to generate a core dump in case a crash happens. [Edward-san]
  • Railgun attacks no longer always pierce armor. The Skulltag railgun in skulltag_actors.pk3 continues to do so, however, through use of +PIERCEARMOR. [Dusk]
  • A map is now marked as used when entered instead of when exited in the rotation list. [Leonard, Torr Samaho]

2.0

  • 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]

1.3

  • Added persistent storage based on an SQLite3 database. The new CVAR databasefile controls where the database is saved (defaults to ":memory:", i.e. volatile in-memory database) and the new CVAR database_maxpagecount (defaults to 32768) controls the maximal allowed size in pages of the database. The new ACS functions allow mods to access the underlying database. [Torr Samaho]
    • void SetDBEntry ( string Namespace, string Key, int Value )
    • int GetDBEntry ( string Namespace, string Key ),
    • void SetDBEntryString ( string Namespace, string Key, string Value )
    • string GetDBEntryString (string Namespace, string Key )
    • void IncrementDBEntry ( string Namespace, string Key, int Increment )
    • int SortDBEntries ( string Namespace, int Limit, int Offset, bool Descending )
    • int CountDBResults ( int Handle )
    • void FreeDBResults ( int Handle )
    • string GetDBResultKeyString ( int Handle, Index )
    • string GetDBResultValueString ( int Handle, Index )
    • int GetDBResultValue ( int Handle, Index )
    • int GetDBEntryRank ( string Namespace, string Key, bool Descending )
    • void BeginDBTransaction ( )
    • void EndDBTransaction ( )
    • int GetDBEntries ( string Namespace )
  • Added the Zandronum side of an optional account system based on authentication with the Secure Remote Password (SRP) protocol, AlexMax is working on the login server (https://github.com/AlexMax/charonauth).
    • The login server hostname can be specified with the new CVAR authhostname (masterhostname analog, port can be specified with ":port").
    • The new CCMD login allows a client to authenticate with the auth server the server has selected with its authhostname setting.
    • The new CVAR sv_forcelogintojoin (default false) can prevent unauthenticated players from joining the game (they can still connect as spectators).
    • The new ACS functions "int PlayerIsLoggedIn( int Player )" and "string GetPlayerAccountName ( int Player )" allow mods to obtain information about the account of a player. [Torr Samaho]
  • Added new dmflag sv_sharekeys. When enabled, any keys picked are shared between players. Also, players joining the game get the keys others have as well. [Dusk]
  • The ACS commands TakeInventory, SetActorProperty (only for speed and gravity) and SetAmmoCapacity don't cause network traffic unless they actually make a change to the affected actor. [Torr Samaho]
  • The text scaling scaling mechanism (controlled by con_scaletext, con_virtualwidth and con_virtualheight) now can use the aspect ratio of the screen instead of 4:3. The new behavior can be activated using a new option in the text scaling menu or with the new CVAR con_scaletext_usescreenratio. [Torr Samaho]
  • The authentication mechanism for non-map related lumps now allows Freedoom 0.8/Doom clients to join Doom/Freedoom 0.8 servers. [Torr Samaho]
  • Added a client movement buffer. Instead of processing all movement commands of a client immediately, they are stored in this buffer now. Each tic per client up to two commands in this buffer are processed. This way, players with an instable connection shouldn't appear as teleporting instead of moving to players with a stable connection. Note: This only changes how a player perceives the movement of other players. It has not effect on how a player perceives his own movement. [Torr Samaho]
  • The mdk cheat command can now be used online in cheat servers. Unlike in ZDoom, it is also allowed in deathmatch modes. [Dusk]
  • The noclip command for spectators is now client-sided for increased responsivity. [Dusk]
  • Added new ACS command GetGamemodeState. The return values are GAMESTATE_UNSPECIFIED = -1, GAMESTATE_WAITFORPLAYERS = 0, GAMESTATE_COUNTDOWN = 1, GAMESTATE_INPROGRESS = 2 and GAMESTATE_INRESULTSEQUENCE = 3. [Torr Samaho]
  • Added new CVAR sv_forcerandomclass. If this is true, all players use the random player class regardless of the class they selected. [Torr Samaho]
  • Colored team names in exiting console messages and added extra console messages for CTF and Skulltag (scores, pickups, drops, etc.) (ported from Konar6's kpatch). [Torr Samaho]
  • Added clientside CVAR cl_overrideplayercolors that overrides players' color translations. Allies will take the color of cl_allycolor and enemies the color of cl_enemycolor. These CVARs are white and black by default, respectively. cl_enemycolor is no-op when there are more than 2 teams, though cl_allycolor will still apply. [Dusk]
  • Added new script type EVENT. By calling EVENT scripts the engine notifies a mod that a noteworthy event happened and also provides some information about the event using 'arg1' and 'arg2'. So far the following events are supported: [Torr Samaho, Water]
    • GAMEEVENT_PLAYERFRAGS (player frags another player)
    • GAMEEVENT_MEDALS (player receives a medal)
    • GAMEEVENT_CAPTURES (player captures the flag/skull)
    • GAMEEVENT_TOUCHES (player touches the flag/skull)
    • GAMEEVENT_RETURNS (the flag/skull is returned)
    • GAMEEVENT_ROUND_STARTS
    • GAMEEVENT_ROUND_ENDS (the current round ends and the win sequence starts, e.g. when the fraglimit is hit)
    • GAMEEVENT_ROUND_ABORTED (the current round is ended prematurely, e.g. if all players leave the game)
  • Added new CCMD: listmusic, which will list all the currently loaded music. [Water]
  • Added settings to fine tune the PWO behavior (CVARs pwo_switchonsameweight and pwo_switchonunknown). [Circunei Z]
  • Added a new cvar: lobby, which applies lobby characteristics to a single map lump. In addition, if a map is set as a lobby map via the cvar, it is returned to after every other map. The lobby map is also returned to if the server is empty for more than 30 seconds. [AlexMax]
  • Added an alias for the islobby MAPINFO tag: lobby. [AlexMax]
  • Both types of lobby maps (MAPINFO and cvar) now ignore timelimits. [AlexMax]
  • Added new ACS function RequestScriptPuke which requests execution of the given script on the server. The function must only be called from CLIENTSIDE scripts the script executed must be NET. [Dusk]
  • Announcer sounds for pickups now can be disabled with the new CVAR cl_announcepickups (default true) (patch by dark-slayer-201). [Torr Samaho]
  • Added the new vote type "forcespec" that forces a player to spectate. It can be disabled with the new CVAR sv_noforcespecvote (default false). [Torr Samaho]
  • Added a connect sound that is played when a player connects to the server as spectator. It can be disabled with the new CVAR cl_connectsound (default true). Kudos to Revilution for creating a sound for this. [Torr Samaho]
  • Extended the vote kick protection for admins to include players logged into RCON (ported from Konar6's kpatch). [Torr Samaho]
  • Fixed: The server didn't report when the master server notified the server that it's banned (ported from Konar6's kpatch). [Torr Samaho]
  • Fixed: Blood actors (or anything else which do not use net IDs) within save games would crash the game upon loading. [Dusk]
  • Fixed: Clients were not properly informed about the reset of moving non-door polyobjects during map resets. [Torr Samaho]
  • Fixed: Using SetAmmoCapacity on an ammo type a player didn't have online caused the clients to assume that the player now has a small amount of this ammo type. [Torr Samaho]
  • Fixed: The view was not centered in demos when the recording player released the mouse look button and lookspring was true. [Torr Samaho]
  • Fixed: Players sometimes could jump up through solid 3D floors online when unlagged was on. [Torr Samaho]
  • Fixed: A_CrusaderRefire did not work properly online, causing the Crusader to desync. [Dusk]
  • Fixed: Strife's Flamethrower did not shake the player's view online. [Dusk]
  • Fixed: The server would crash with join passwords longer than 64 characters. [Dusk]
  • Fixed: Skins defined with SKININFO didn't work properly if the sprite entry was not set explicitly. [Torr Samaho]
  • Fixed: Tampered clients could insert ASCII control characters into chat messages (e.g. line breaks) (ported from Konar6's kpatch). [Torr Samaho]
  • Fixed: Strife's crossbow did not appear to use ammo on clients online. [Dusk]
  • Fixed: Clients using endgame while attempting to connect would not terminate the connection attempt. [Dusk]
  • Fixed: Telefregging shouldn't count towards awarding the Fisting and Spam medals (ported from Konar6's kpatch). [Torr Samaho]
  • Fixed: Toggle crouch shouldn't reset when menu is activated during a netgame. [Jam]
  • Fixed: Monsters would become "blind" if the player who awoke them by sound became a spectator. [Dusk]
  • Fixed: When spawning more than 2 hellstaff rains in Heretic, the old ones would linger around on the client instead of disappearing. [Dusk]
  • Fixed: The linetarget cheat now prints the actor's actual health value. [Dusk]
  • Fixed: When a player turned into spectator the dynamic lights associated to the player's body were not removed. [Torr Samaho]
  • Fixed: A_PoisonBagInit desyncs between the client and server. [Water]
  • Fixed: Medals now show for who you are spectating instead of always your own. [Water]
  • Fixed: The server possibly announced player disconnects for players that didn't fully connect. [Torr Samaho]
  • Fixed: When a player is damaged, don't send useless inconsistent values of HP and Armor (100/100) to the clients if they're not allowed to see the real HP/Armor. [Edward-san]
  • Fixed: Line_SetBlocking didn't work properly online. [Dusk]
  • Fixed: A_GiveInventory and A_GiveToTarget didn't work on CLIENTSIDEONLY actors. [Torr Samaho]
  • Fixed: "botdebug_walktest 1" caused the game to crash when the player was looking through the eyes of a non-player actor. [Torr Samaho]
  • Fixed: turn180 did not work as a spectator. [Dusk]
  • Fixed: Gravity was applied twice in one tic when running off a cliff with compat_123b33jumpphysics enabled when it shouldn't be. [AlexMax]
  • Fixed: Some ordinals weren't written correctly in the spectator queue message. [Esum]
  • Fixed: Non-interacting actors like map spots would have their TIDs reset to 0 on map resets. [Dusk]
  • Fixed: The server didn't load the archived value of SERVERINFO CVARs (e.g. sv_smartaim). [Torr Samaho]
  • Fixed: The chat length limit of 128s was not enforced online. [Dusk]
  • Fixed: The server could erroneously show "FindStateLabelAndOffset" warnings. [Torr Samaho]
  • Fixed: an opportune string could cause a buffer overflow while getting the address from a hostname. Thanks to kazzmir for reporting the vulnerability. [Edward-san]
  • Fixed: +WEAPON.NOAUTOAIM did not disable horizontal autoaim with projectile weapons. [Dusk]
  • Fixed: Monsters near the bottom of a ledge or fence sometimes appeared as teleporting up on clients online. [Torr Samaho]
  • Changed huffman code from Hexen II's to that provided by Vortex Cortex. [Blzut3, Vortex Cortex]
  • Changed the Offline Skirmish frag slider bar to go in intervals of 1 instead of 5. [Water]
  • The CCMD playerinfo now distinguishes true spectators from in game players (ported from Konar6's kpatch). [Torr Samaho]
  • Botscript rand() renamed to random() and now returns a value between min and max inclusive instead of leaving max out of the possibilities. Now is actually random and now swaps min and max if min is greater than max instead of throwing a runtime error. [Dusk]
  • Medals are only awarded when the game has started (is not in countdown). [Water]
  • If the map rotation is not empty, the server now prevents map/changemap votes to maps that are not in the rotation, regardless of whether of sv_maprotation is true. This allows the server to restrict these votes without enforcing the rotation itself, which would also enforce the order in which the maps are played (adapted from an old patch of TIHan). [Torr Samaho]
  • Renamed compat_123b33jumpphysics to compat_oldzdoomzmovement, which is a more accurate description of what the flag actually does. [AlexMax]
  • The server now ignores client ping packets that don't make sense. [Torr Samaho]
  • The team selection menu now is kept in sync with the local player's team, unless it was set to random. [Dusk]
  • Changed the chat muting report: the server will inform the muted client how much time is left also in seconds. [Edward-san]
  • Medals are only awarded when the game has started (is not in countdown). [Water]
  • If the map rotation is not empty, the server now prevents map/changemap votes to maps that are not in the rotation, regardless of whether of sv_maprotation is true. This allows the server to restrict these votes without enforcing the rotation itself, which would also enforce the order in which the maps are played (adapted from an old patch of TIHan). [Torr Samaho]
  • Renamed compat_123b33jumpphysics to compat_oldzdoomzmovement, which is a more accurate description of what the flag actually does. [AlexMax]
  • The server now ignores client ping packets that don't make sense. [Torr Samaho]
  • The team selection menu now is kept in sync with the local player's team, unless it was set to random. [Dusk]
  • Changed the chat muting report: the server will inform the muted client how much time is left also in seconds. [Edward-san]

1.2.2

  • Fixed: The server reported to be using a testing build instead of a stable one. [Torr Samaho]

1.2.1

  • Fixed: A malformed packet could make the server kick the clients. Thanks to Konar6 for supplying a proof-of-concept exploit that allowed to debug the issue. [Torr Samaho]
  • Fixed an exploit with color codes in player names (ported from Konar6's kpatch). [Torr Samaho]
  • Fixed a client memory exhaustion vulnerability. Thanks to AgentME for reporting the vulnerability and submitting a preliminary patch. [Torr Samaho]
  • Fixed a client heap corruption vulnerability. Thanks to AgentME for reporting the vulnerability and submitting a patch. [Torr Samaho]
  • Fixed an exploit based on out of bounds userinfo sent by a malicious client (ported from Konar6's kpatch). [Torr Samaho]
  • Fixed an exploit based on improperly disconnected malicious clients. Kudos to kgsws for finding and reporting this exploit. [Torr Samaho]
  • Fixed an exploit that allowed malicious clients to create additional bodies. Kudos to kgsws for finding and reporting this exploit. [Torr Samaho]
  • Fixed: A malformed packet could crash the server. Thanks to AgentME for reporting the vulnerability and submitting a preliminary patch. [Torr Samaho]
  • The linux binaries are not compiled with -fno-stack-protector anymore. This was originally intended to increase compatibility with distros using older glibc versions but is not necessary anymore since the source is open. Thanks to AgentME for pointing this out. [Torr Samaho]

1.2

  • Revamped the authentication error messages: The server now reports which kind of authentication failed (i.e. protected lump or map) and reports a list of all loaded PWADs including their md5 checksums. The client also automatically logs the corresponding local values which should make it much easier to pinpoint the cause of an authentication error. [Torr Samaho]
  • Added compat_fullweaponlower to emulate vanilla without bundling it with another flag. [Water]
  • Added new dmflag "no medals", controlled by the new CVAR sv_nomedals. If this is true, clients are enforced not to show medals, i.e. behave as if cl_medals == 0. [Torr Samaho]
  • Fixed crashes related to loading many announcers. [Torr Samaho]
  • Fixed: +showscores did not always respond properly when viewing a demo. [Dusk]
  • Fixed: Monsters near a ledge sometimes appeared as constantly falling down and teleporting back on clients online. [Torr Samaho]
  • Fixed: Interpolation points and actor moves didn't work properly on clients after a map reset online. [Torr Samaho]
  • Fixed: Client side demo recording could crash the client. [Circunei Z, Torr Samaho]
  • Fixed a lastX/Y/Z desync between client and server. [Water]
  • Fixed: Calling a map/changemap vote with an existing non-map lump as argument caused the server to throw an error. [Torr Samaho]
  • Fixed: When a player carrying the flag died or disconnected, the flag was spawned on the floor instead of the actual Z position of the player. [Torr Samaho]
  • The commands "wait", "error", "error_fatal" and "crashout" can't be called by ConsoleCommand anymore. [Torr Samaho]

1.1.1

  • Fixed: The messages sent with ay_team were visible to players of the other teams. [Dusk, Torr Samaho]

1.1

  • The authentication mechanism for non-map related lumps now allows Freedoom 0.8-beta1/Doom clients to join Doom/Freedoom 0.8-beta1 servers. [Torr Samaho]
  • Added a menu option for gl_use_models. [Torr Samaho]
  • Demos now use the lump authentication system to ensure that demos are played back with correct WADs. If demo authentication fails, an error message is printed with a list of needed WADs. New CVAR demo_pure controls this behavior. [Dusk]
  • Added new compatflag "explosion thrust", controlled by the new CVAR compat_explosionthrust. If this is enabled, explosions cause a strong horizontal thrust like in old ZDoom versions. [Torr Samaho]
  • Added client side prediction for the line special ThrustThing and ThrustThingZ when the specials are called from linedefs or sector actions. [Torr Samaho]
  • Improved the client side Z position prediction when passing from one sector into another. [Torr Samaho]
  • Improved the client side position prediction when rocket jumping on bridge things. [Torr Samaho]
  • Added new compatflag "bridge drops", controlled by the new CVAR compat_bridgedrops If this is enabled, non-SOLID things like flags fall through bridges (as they used to do in old ZDoom versions). [Torr Samaho]
  • Extended the launcher protocol to optionally report the value of the CVAR sv_enforcemasterbanlist. [Torr Samaho]
  • Bots now recognize 3d midtextures and know to avoid ones that block their movement and can jump over 3d midtexture railings. [Dusk]
  • Improved the alignment of the health/armor port of the new fullscreen HUD in case the health and armor icons have a different size. [Torr Samaho]
  • The client connect options cl_startasspectator and cl_dontrestorefrags are now collected as flags in the new CVAR cl_connect_flags. [Torr Samaho]
  • A player's country code (determined based on the player's IP) is shown on connect and in the output of the CCMD playerinfo, if a GeoIP.dat compatible with MaxMind's GeoIP library is in the directory of the server binary (or in /usr/share/GeoIP/ or /usr/local/share/GeoIP/ under Linux). The implementation is based on Konar6's kpatch. [Torr Samaho]
  • Clients can prevent their country code from being shown to the other players with the new connect option CVAR cl_hidecountry (default false). [Torr Samaho]
  • If a reason for a kick vote is given, this reason is now included in the ban reason (adapted form Konar6's kpatch). [Dusk, Torr Samaho]
  • Added the "afk2spec" system from Konar6's kpatch (controlled by the new CVAR sv_afk2spec that specifies the number of minutes a player has to be idle before being forced to spectate). Different from kpatch, players are warned before they are forced to spectate and dead spectators are not forced to spectate. [Torr Samaho]
  • Added CVAR con_notifylines (allowed values range from 1 to 50) that allows users to set how many lines the notify field should extend to. [Dusk, Torr Samaho]
  • Added new ACS commands GetPlayerLivesLeft and SetPlayerLivesLeft. In game modes using sv_maxlives, these commands allow to access and change how many times the specified player is still allowed to respawn. [Torr Samaho]
  • Added new ACS command KickFromGame (int playernumber, str reason). This command forces the specified player to spectate and can only be used in an ACS script on a server. [Torr Samaho]
  • Added Circunei Z's patch that adds PWO support. It can be activated with "switchonpickup == 3" and configured using the weapon setup menu and the new ORDERDEF lump. [Torr Samaho]
  • Added NORANDOM support to A_CustomBulletAttack and A_FireBullets (ported from ZDoom revision 2318). [Torr Samaho]
  • Added new CVAR cl_connectiontype (default 1, allowed values 0-1). The lower the number, the less network traffic the server will try to send to the client. Currently this is very limited and only has one effect: With a setting of 1, blood sprites are spawned on the client with a size depending on the damage dealt, while they are always at full size if it's 0. [Torr Samaho]
  • Added new compatflag "ZDoom 1.23b33 jump physics ", controlled by the new CVAR compat_123b33jumpphysics. If this is enabled, jumping behaves more like it did in ZDoom 1.23b33. In particular, the MAP26 reverse window jump is not possible anymore. [Watermelon, Torr Samaho]
  • The CCMD say_team now considers true spectators, i.e. non-dead spectators, to be a team in team based gamemodes. [Torr Samaho]
  • Hopefully fixed player class related Hexen startup crashes. [Torr Samaho]
  • Fixed: Newly connecting clients were not properly informed about a music change if the music name was longer than 15 characters. [Torr Samaho]
  • Fixed: Attached 3d midtexture heights were not reset properly during map resets. [Dusk]
  • Fixed: Clients appeared to get double ammo from weapons while playing demos. [Dusk, Torr Samaho]
  • Fixed: The server sent its revision number with short instead of long precision to the master. [Torr Samaho]
  • Fixed: In single player with multi player emulation enabled a player couldn't change the player class by turning to a spectator and rejoining. [Torr Samaho]
  • Fixed: The line special SendToCommunicator didn't work properly online. [Torr Samaho]
  • Fixed: When morphing a player, the server didn't inform the other clients about the ammo amount of the morphed player. [Torr Samaho]
  • Fixed compatibility issues of skulltag_actors.pk3 with some Skulltag mods. [Torr Samaho]
  • Fixed: Using the playdemo command while playing a client side demo in free spectate mode caused the game to crash. [Torr Samaho]
  • Fixed: Client didn't display the correct armor values of the other players right after connecting or after a "changemap" map change. [Torr Samaho]
  • Fixed: The terminator sphere and the hellstone could not be replaced by mods. Note that you need to replace them by something derived from "Terminator" or "PossessionStone" respectively. Otherwise the game modes will not work as intended. [Torr Samaho]
  • Hopefully fixed: Doors sometimes didn't open after pressing +use online. [Torr Samaho]
  • Fixed: A malformed server packet could crash the client. [Torr Samaho]
  • Fixed: Clients didn't play open or close sounds of animated doors online. [Torr Samaho]
  • Fixed: The server didn't inform the clients to remove bouncing missiles hitting water. [Torr Samaho]
  • Fixed: The weapon a player started with after respawning wasn't recorded properly in a client side demo. [Torr Samaho]
  • Fixed: The ACS command SoundSequence didn't work properly online. [Torr Samaho]
  • Fixed: Newly connecting clients were not properly informed about active ActorMovers. [Torr Samaho]
  • Fixed: The "Join server" command in the Windows server console didn't work if the server loaded wads that are in directories with a space in their name. [Torr Samaho]
  • Fixed: Recording client-side demos with a filename consisting of more than 255 characters caused problems. [Torr Samaho]
  • Fixed: The server didn't instruct newly connecting clients to spawn dead actors that are not corpses. [Torr Samaho]
  • Fixed: Using "togglemap" while a client side demo was loading caused the game to crash. [Torr Samaho]
  • Fixed: Joining a server with a cumulative PWAD name exceeding 255 characters using the internal server browser caused the game to crash or freeze. [Torr Samaho]
  • Fixed: With "sv_maprotation 1", "sv_randommaprotation 1" and only one map in the rotation the server froze when exiting the map. [Torr Samaho]
  • Fixed: A_MStaffTrack could cause the clients to crash in online games. [Torr Samaho]
  • Fixed: Clients could crash after the server instructed them to add NOBLOCKMAP to an actor. [Torr Samaho]
  • Fixed: Lagging clients were not affected by things like sector damage. [Torr Samaho]
  • Fixed: Using reconnect while playing a demo caused the game to crash. [Torr Samaho]
  • Fixed: The lag icon was missing from zandronum.pk3. [Torr Samaho]
  • Fixed: If a player respawned with a console, chat or lag icon above his head, the icon vanished. [Torr Samaho]
  • Fixed: A_M_CheckAttack and A_M_BFGSound would cause desyncs. [Dusk]
  • Fixed: In A_M_Punch, the server didn't inform the clients about the changed angle. [Torr Samaho]
  • Fixed: The internal server browser tried to connect to servers even though the necessary wads were not loaded. Now it refuses to connect and lists the missing wads instead. [Torr Samaho]
  • Fixed: demo_skiptics with a negative argument could crash the game. [Torr Samaho]
  • Fixed: If the team of a player with a class limited to the current team was changed to another team, the automatic respawning with a valid class left behind a ghost at the old position of the player. [Torr Samaho]
  • Fixed: A malformed kick reason could crash the server. [Torr Samaho]
  • Fixed: The server didn't inform the clients who exited a level (ported from Konar6's kpatch). [Torr Samaho]
  • Use the crashcatcher.c from the latest ZDoom (r3071, r3089 (includes the i_main.cpp change since it's required), r3329, r3747, and r3928). This solves the forkbombing issue in the crash handler. [Blzut3]
  • Fixed: When recording a client side demo the special client side commands (like weapon changes) were not recorded at the correct position of the demo stream but always after the currently processed server packet. [Torr Samaho]
  • Fixed: The effect of a MapRevealer was not reset during map resets. [Torr Samaho]
  • Fixed: Too long ban reasons could crash the server. [Torr Samaho]
  • Fixed: Trying to switch to a nonexistent map could crash the server. [Dusk, Torr Samaho]
  • Lessened the client / server sync problems caused by A_JumpIfTargetInLOS. [Torr Samaho]
  • Fixed: A_CheckSight caused desyncs online. [Dusk]
  • Fixed: A client didn't notice if it missed the last packet(s) of a full update till something happened on the server that made the server send a new reliable packet to the client. [Torr Samaho]
  • Fixed: When a spectator entered the game its associated CLIENTSIDE scripts were stopped but were disassociated. The old behavior can be restored with compat_dont_stop_player_scripts_on_disconnect. [Torr Samaho]
  • Fixed: Spectators were affected by Heretic's wind specials. [Torr Samaho]
  • Improved the X/Y/Z position sync of non-player actors moved by hit scan attacks online. [Torr Samaho]
  • Fixed: demo_spectatefreely didn't show a crosshair or cl_identifytarget information when the software renderer was used. [Torr Samaho]
  • Fixed: If A_SkullPop is used in the first frame of a player's XDeath state, the player doesn't drop any important items like flags. [Torr Samaho]
  • Fixed: Players couldn't use the kill command during the first ten seconds after a server was started. [Torr Samaho]
  • Fixed: If a player joined spectators while frozen to ice damage, the view would remain blended blue. [Dusk]
  • Fixed: Strife phosphorus grenade fire did not behave properly online. [Dusk]
  • Fixed: Players were not awarded a frag when killing another player with poison (ported from ZDoom revision 4040). [Torr Samaho]
  • Fixed: All LIGHTINING scripts were executed as if they were CLIENTSIDE. [Dusk]
  • Fixed: Memory issues with skin loading that led to a crash. [Blzut3]
  • Fixed an exploit that allowed a manipulated client to bring its player into an undefined state leading to various problems. Kudos to kgsws for finding and reporting this exploit. [Torr Samaho]
  • Fixed: Level authentication did not work at all with UDMF maps. [Dusk]
  • Fixed: CLIENTSIDE scripts were not stopped on clients online during map resets. [Torr Samaho]
  • Fixed: Lightning was not stopped during map resets. [Torr Samaho]
  • Fixed: Arguments of actors were not reset to their initial values upon map resets. [Dusk, Torr Samaho]
  • Fixed: The monster bandwidth saving system that uses the last updated actor positions didn't work properly for actors right that got their momentum changed externally before ever moving on their own. [Torr Samaho]
  • sv_coop_damagefactor is not archived in the config file anymore, but reset to its default value when the game starts. [Torr Samaho]
  • Chex now uses the Doom status bar code allowing the new fullscreen HUD (cl_stfullscreenhud) to be used in Chex. [Torr Samaho]
  • Changed the default of the CVARs cl_run and freelook to true. [Torr Samaho]
  • To work around problems of Zandronum's state jump handling, clients now try to break infinite state loops of zero duration by not allowing any actor to go through more than 10000 states in one tic. [Torr Samaho]
  • If the selected intermission pic (or WINERPIC/LOSERPIC in non-team game modes) doesn't exist, INTERPIC is used. [Torr Samaho]
  • If D_STWIN/D_STLOSE doesn't exist, the standard intermission music is used instead. [Torr Samaho]
  • Changed: Spectators are now allowed to use noclip. [Torr Samaho]
  • Non-Strife games now add the WASD control layout to the default binds (all existing ZDoom default binds are unchanged). [Torr Samaho]
  • The commands "say" and "say_team" can't be called by ConsoleCommand anymore. A mod should not be allowed to say anything in the player's name. [Torr Samaho]
  • When trying to start a new game from the menu while connected to a server and more than one player class is available, the player is now told to disconnect first instead of being automatically disconnected immediately. [Torr Samaho]
  • The CVARs sv_adminlistfile, sv_banfile and sv_banexemptionfile can't be changed by ConsoleCommand anymore. [Torr Samaho, Dusk]
  • Disabled G15 support by default, this fixes some problems with certain gaming mice. To re-enable G15 support, define USE_G15 in the compiler settings. [Torr Samaho]

1.0

Note: This changelog is compared to Skulltag 98d.

  • Added kgsws' software 3D floors patch. Kudos to him for making a patched based on GZDoom revision 323, that made it easy to apply it to Skulltag. Furthermore, 3D floors are available in competitive modes now. [Torr Samaho]
  • Added the new experimental GAMEMODE lump that allows to configure Skulltag's built in gamemodes. Note: GAMEMODE is a protected lump, i.e. the GAMEMODE has to be identical on the server and the clients. [Torr Samaho]
  • Added new ACS command ResetMap that does a map reset like done in survival or (T)LMS. This command only has an effect in gamemodes that have the MAPRESETS flag (can be set with the GAMEMODE lump). [Torr Samaho]
  • Added live counter to the HUD for survival and survival invasion. As a prerequisite, the server now informs the clients about the lives each player has left. [Torr Samaho]
  • Added DesignatedTeam property which allows things to be assigned to teams for friendly fire calculations [Blzut3]
  • Added basic client side prediction for "pushers", for instance used by Sector_SetWind. [Torr Samaho]
  • Added new compatflag "old random generator", controlled by the new CVAR compat_oldrandom. If this is enabled, the original Doom random table is used to generate random integers in [0,255], which should make for instance the SSG cause a little more damage. [Torr Samaho]
  • The compatflag compat_oldweaponswitch now also restores the weapon switch cancellation behavior from Vanilla Doom. [Torr Samaho]
  • Added new CVAR cl_respawnonfire that allows the player to decide whether to respawn when pressing the fire key. [Torr Samaho]
  • Removed NOGRAVITY from InvulnerabilitySphere, Soulsphere, Megasphere and BlurSphere and added the new compatflag "nogravity spheres", controlled by the new CVAR compat_nogravity_spheres. The compatflag gives these spheres the NOGRAVITY flag again, but only when they are spawned by the map. [Torr Samaho]
  • Added sv_maxlives support for lastmanstanding and teamlms. [Torr Samaho]
  • General improvements to announcer code to allow for default announcer sounds. [Blzut3]
  • Added AnnouncerSound(str entry, int flags) function to allow custom announcer events. [Blzut3]
  • Considerably improved client side prediction when the player is standing/jumping/moving/landing on another actor, e.g. a bridge thing. [Torr Samaho]
  • Considerably improved client side prediction after respawning and teleporting. [Torr Samaho]
  • Clients can now control how often the server sends them updated player positions. The is done with the new CVAR cl_ticsperupdate (default value 3, allowed values 1-3). The lower the number, the smoother the movement of the other player appears on a client but the more network traffic is used by the position updates. [Torr Samaho]
  • Added Popsoap's dynamic light definition for the SuperShotgunGuy and the Hectebus. [Torr Samaho]
  • Reworked how lightning generated by the MAPINFO property "lightning" and the line special ForceLightning is handled online. It is almost completely client side now (the server only needs to send a single command to the clients each time ForceLightning is called), thus it causes nearly no network traffic. The only downside is that the lightning effects are not synchronized between clients and server, i.e. the clients evaluate all random values on their own. [Torr Samaho]
  • Added an auto return system for the terminator sphere and the hellstone, configurable by the new CVAR sv_artifactreturntime (default 30). The terminator sphere/hellstone is moved to a random spawn spot sv_artifactreturntime seconds after it has been spawned (no matter if it was spawned normally at map start or after being dropped by a player). Setting sv_artifactreturntime to 0 disables auto return. This should finally make terminator and possession playable on all maps. [Torr Samaho]
  • Added CCMD motd which redisplays the message of the day. [Dusk]
  • Added CCMD version_info which displays information about the Mercurial changeset the binary is based on. [Torr Samaho]
  • Added CCMD delmap which allows deleting maps from map rotation without clearing it first and CCMD delmap_idx, which allows deleting the map by index number shown by the maplist CCMD. [Dusk]
  • Added CCMD insertmap for adding maps into the maplist at other positions than just at the end. [Dusk]
  • Added: "snd_announcervolume" CVAR to adjust the announcer's volume and added an announcer volume adjustment in player setup under the announcer picker. [TIHan]
  • Added new compatflag "don't stop player scripts on disconnect", controlled by the new CVAR compat_dont_stop_player_scripts_on_disconnect. If this is enabled, the ACS scripts with a player as activator are not terminated when this player disconnects. [Torr Samaho]
  • Added new dmflag "unblock players", controlled by the new CVAR sv_unblockplayers. If this is true, player bodies are treated as if they had the THRUSPECIES flag and players don't telefrag other players anymore. [Torr Samaho, Dusk]
  • Added ZDoom's timidity code since it's compatible with our open source license. [Torr Samaho]
  • Since skulltag_data.pk3 is not auto loaded anymore, shareware IWADs are supported again. [Torr Samaho]
  • Exported Hissy's turning behavior to a new codepointer, A_FaceConsolePlayer, which takes a TurnAngle parameter defaulting to 0. Hissy is no longer a native actor. [Dusk]
  • Noticeably reduced monster bandwidth usage by letting the clients reuse the last updated actor positions. [TIHan, Torr Samaho]
  • Added new ACS command PlayerIsSpectator that returns 1 if the player is a true spectator, 2 if the player is a dead spectator and 0 otherwise. It also returns 0 if the specified player does not exist. [Torr Samaho]
  • Added CCMD demo_skiptics that allows you to skip a specified amount of tics. For instance, "demo_skiptics 35" skips a second and "demo_skiptics 2100" skips a minute. [Torr Samaho]
  • Added new ACS command ConsolePlayerNumber that returns the number of the local player. Returns -1 if called on the server. [Torr Samaho]
  • Added the possibility to leave the join queue with the spectate command. [Torr Samaho]
  • Added new ACS command GetTeamProperty that returns various team-based information. [Dusk]
  • Added new CVAR cl_spectatormove which can be used to control the speed of movement while spectating. [Dusk]
  • Fixed: After a "changemap" map change on a server with join password and a team based gamemode, players who were on a team on the previous map were turned into spectators but kept their team. [Torr Samaho]
  • Fixed a crash that could happen when pressing the "show medals" key during intermission if the player was spying another player before the start of the intermission. [Torr Samaho]
  • Fixed: When the gamemode is automatically changed upon entering a new map after a "changemap" map change offline, players possibly stay on a team even though the new game mode doesn't have teams or are on no team even though the new game mode uses teams. [Torr Samaho]
  • Fixed: Under some circumstances clients mispredicted the amount given by ammo dropped by monsters. [Torr Samaho]
  • Fixed: Various sliders in the player setup, the text scaling and the offline skirmish menu didn't play "menu/change" when toggled. [Torr Samaho]
  • Fixed: The RGB sliders for custom colors in "Options -> Display Options -> Automap Options -> Set Custom Colors" didn't work. [Torr Samaho]
  • Fixed: The "Compatibility mode" value in the compatibility options menu was displayed too far on the right. [Torr Samaho]
  • Fixed: RandomSpawner didn't always spawn something after a map reset in survival. [Torr Samaho]
  • Fixed: The HUD mugshot never looked in direction of the last damage inflictor online. [Torr Samaho]
  • Fixed some sync problems with A_Jump on weapons online. [Torr Samaho]
  • Fixed: Clients were not always informed about the armor amount and type of other non-opponent players. [Torr Samaho]
  • Fixed some client side display problems caused by the "give health" and the "give armor" cheats. [Torr Samaho]
  • Fixed: Dropping a backpack online crashed the clients. [Torr Samaho]
  • Fixed: Newly connecting clients were not informed about all the weapons, keys and backpacks players already in game have. [Torr Samaho]
  • Fixed: The automap was not reset during a map reset online on the clients. [Torr Samaho]
  • Fixed: When a player turns into a spectator the palette flash of this player is not reset. [Torr Samaho]
  • Fixed: Clients were not informed about "pusher" additions or changes. [Torr Samaho]
  • Fixed: Dead actors with a crash state locally crash on the client again while connecting. [Torr Samaho]
  • Fixed: After a "changemap" map change clients forgot about the max health and armor bonuses of players. Furthermore, newly connecting clients were not informed about these bonuses of players already in game. [Torr Samaho]
  • Fixed: After a "changemap" map change clients didn't draw the HUD icons of runes obtained in the previous level. Furthermore, newly connecting clients were not informed about the runes of players already in game. [Torr Samaho]
  • Fixed: When using the give weapons cheat online, the player possibly switched to one of the newly given weapons instead of keeping the current one. [Torr Samaho]
  • Fixed: For some of the cheats, clients other than the one who did the cheat printed printed the "is a cheater" line twice. [Torr Samaho]
  • Fixed: When picking up a dropped backpack online, clients wrongly assumed that the backpack gives ammo. [Torr Samaho]
  • Fixed: After a "changemap" map change the client side inventory ordering of the console player got reversed. [Torr Samaho]
  • Fixed: Under some circumstances a client wrongly displayed an "in console" icon over a player's head. [Torr Samaho]
  • Fixed: When coop spying another player for the first time the initial view height of that player was sometimes wrong. [Torr Samaho]
  • Fixed: Trying to pick up a white flag in one flag CTF while already carrying a white flag gave a point. [Torr Samaho]
  • Fixed: If a player carrying the flag/skull in CTF/ST suicided while "sv_instantreturn 1", the return message said "Returned by: playername" instead of "Returned automatically". [Torr Samaho]
  • Fixed: Newly connecting clients were not informed whether existing corpses were gibbed. [Torr Samaho]
  • Fixed: The ACS commands SetActorProperty( APROP_Gravity ), SetGravity and SetAircontrol didn't work properly online. [Torr Samaho]
  • Fixed client / server weapon sync issues after spawning / respawning. [Torr Samaho]
  • Fixed: The server didn't inform the clients about the weapon changes of bots. [Torr Samaho]
  • Fixed: Savegames didn't retain the multiplayer emulation state. [Torr Samaho]
  • Fixed: When a player carrying the terminator sphere/hellstone disconnected the terminator sphere/hellstone wasn't dropped. [Torr Samaho]
  • Fixed: Under certain rare circumstances the clients displayed friendly fire obituaries in DM. [Torr Samaho]
  • Fixed: The windows server GUI didn't properly handle spaces in the value sv_banfile. [Torr Samaho]
  • Fixed: When a player initially joins the game, he doesn't get the respawn invulnerability in DM. [Torr Samaho]
  • Fixed: Newly connecting clients were not informed about flag changes (compared to the initial spawn values) of the actors already in the game. [Torr Samaho]
  • Fixed: Friendly monster didn't play their active sound on the clients while chasing. [Torr Samaho]
  • Fixed: The server didn't inform the clients of flag changes made with A_ChangeFlag. [Torr Samaho]
  • Fixed: When a player turns into a spectator the Gravity and the Speed properties of the player body are not reset to the default values. [Torr Samaho]
  • Fixed: The menu_player command opened the main menu instead of the player setup menu. [Torr Samaho]
  • Fixed some weapons sync problems with unassigned voodoo dolls online that could happened with "alwaysapplydmflags 1" and "sv_weaponstay 0". [Torr Samaho]
  • Fixed: Under certain circumstances killing a bot could give the killer a Llama medal. [Torr Samaho]
  • Fixed some problems with the client side Z positioning of players online. [Torr Samaho]
  • Fixed: Removing a morphed bot crashed the game. [Torr Samaho]
  • Fixed some client side problems that happened online when a client connected while one of the in game players was morphed. [Torr Samaho]
  • Fixed some coop spy issues that happened online in levels with a team selection room. [Torr Samaho]
  • Fixed: PowerupGiver items with PowerMorph were not removed from the local inventory of a client online when they were activated. [Torr Samaho]
  • Fixed: When a grenade fell on a 3D floor over a real floor with a sky texture, it vanished instead of bounce. [Torr Samaho]
  • Fixed: Players lost a life when being spawn telefragged in survival invasion. [Torr Samaho]
  • Fixed some problems with the Z positioning of map spawned actors on 3D floors after a map reset. [Torr Samaho]
  • Fixed: Offline, the player could join in progress survival and survival invasion games with the "join" command and in progress teamlms games with the "team" and "changeteam" commands. [Torr Samaho]
  • Fixed: After a "changemap" map change in survival invasion online, an in game player was possibly forced to spectate. [Torr Samaho]
  • Fixed: When binding the LAN socket to port 15101 failed, Skulltag still tried use the socket to listen for LAN packets causing the console to be flooded with error messages. [Torr Samaho]
  • Fixed: When adding a bot in a team game while players can't join, the bot was added as spectator but still assigned to a team. [Torr Samaho]
  • Fixed: Dead spectators are not properly handled if a changemap map change is made while a TLMS game is in progress and sv_keepteams is true. [Torr Samaho]
  • Fixed: Dead spectators in TLMS didn't see the ally icon for their teammates. [Torr Samaho]
  • Fixed: Various strings (the cl_identifytarget message, "assist" messages, several parts of the scoreboard, etc.) were not displayed properly on some platforms. [Torr Samaho]
  • Fixed: After a changemap map change from an invasion level to a non-invasion level online, the clients still thought the gamemode was invasion. [Torr Samaho]
  • Fixed: If bots were put in the join queue in a team based game mode, they possibly all joined the same team after a changemap map change. [Torr Samaho]
  • Fixed: Immediately after joining a server with cl_startasspectator set to false or after a changemap map change while being in the game, the client thought is was lagging. [Torr Samaho]
  • Fixed: Bots were not properly frozen during the special game mode result sequences, e.g. the "mission failed" screen in survival. [Torr Samaho]
  • Fixed: When starting a survival invasion skirmish with bots while already in a survival invasion game with bots, the consoleplayer is spawned as spectator and leaves a ghost player upon joining. [Torr Samaho]
  • Fixed: A "map" map change possibly triggered the "mission failed" screen in survival. [Torr Samaho]
  • Fixed: Switch sounds were played with the wrong z position online. [Torr Samaho]
  • Fixed: Adding a bot in a team game on a map with a team selection room could crash the game. [Torr Samaho]
  • Fixed: When a player turned into a spectator, he didn't lose his medals and the current medal progress wasn't reset. [Torr Samaho]
  • Fixed: When sv_maxplayers was set to a value lower than the numbers of players currently in the game during a team game mode online, some players ended up as spectators while still being on a team after a "changemap" map change. [Torr Samaho]
  • Fixed some problems online when sv_maxplayers is increased while players are in the join queue. [Torr Samaho]
  • Fixed: If a team won a round in teamlms after the game entered sudden death, this team possibly wasn't awarded a win. [Torr Samaho]
  • Fixed some bugs caused by the spawning of the hellstone and the terminator sphere: When it was spawned the first player possibly tried to pickup whatever he was standing on at this moment. Furthermore, it was possibly spawned at the location of the first player even though there was still a free spawn spot. [Torr Samaho]
  • Fixed: Clients mispredicted the Z position of things respawning above a 3D floor. [Torr Samaho]
  • Fixed: When a server admin tried to set the CVAR fraglimit to a value beyond its bounds, the "fraglimit changed to" message appeared twice. [Torr Samaho]
  • Fixed: Newly connecting clients were not informed about the cheats players already in game have. [Torr Samaho]
  • Fixed: "compat_silentpickup" had no effect if "compat_soundslots" is true. [Torr Samaho]
  • Fixed: Savegames didn't store the player's team. [Torr Samaho]
  • Fixed: Clients didn't set am_cheats to 0 after a "map" map change if sv_cheats was changed from to true to false. [Torr Samaho]
  • Fixed: The scoreboard line of the player currently carrying the terminator sphere wasn't drawn in red. Instead, some seemingly random parts of the scoreboard were drawn red when someone had the terminator sphere. [Torr Samaho]
  • Fixed: When a player got a flag/skull/terminator sphere/hellstone while he still had a medal icon, the carrier icon was not shown until the medal faded away. [Torr Samaho]
  • Fixed some problems with unlagged when the player was standing on a 3D floor. [Torr Samaho]
  • Fixed: If a player carrying a flag/skull/terminator sphere/hellstone dies while being awarded a medal, the medal is announced a second time. [Torr Samaho]
  • Fixed: If a "map" map change is done during the possession hold countdown online to a CTF/ST map, the hold counter is still displayed on the clients after the map change. [Torr Samaho]
  • Fixed: When possession entered sudden death online, the sudden death message was not displayed properly on the clients. [Torr Samaho]
  • Fixed: If a player respawned while being awarded a medal, the medal icon turned invisible. [Torr Samaho]
  • Fixed: If the second last player leaves a possession game, the current round is not stopped. [Torr Samaho]
  • Fixed: When adding a bot it used the handicap value of the player who previously occupied the player slot. [Torr Samaho]
  • Fixed: Newly connecting clients are informed about the other player's handicap only after they players are spawned locally on the new client. This information is already necessary during the local spawning though. [Torr Samaho]
  • Fixed: Clients possibly mispredicted the Z position of other players that were standing close to a sector boundary. [Torr Samaho]
  • Fixed: "cl_showlargefragmessages 1" was ignored in (T)LMS if fraglimit was bigger than zero and the player had at least "fraglimit - 1" frags. [Torr Samaho]
  • Fixed a problem with the client side prediction for a high ping clients (250+) on low gravity servers (sv_gravity 200). [Torr Samaho]
  • Fixed: Clients with cl_startasspectator == 0 were not informed about which weapons the players already in game are using while joining the server. [Torr Samaho]
  • Fixed: When a sector movement was triggered by an unlagged client shooting at a linedef, the sector movement was possibly messed up. [Torr Samaho]
  • Fixed: When respawning or teleporting the client side prediction didn't clear the old movement commands recorded before the respawn/teleport. [Torr Samaho]
  • Fixed a vote related server crash. [Torr Samaho]
  • Fixed: On a Mac "zdoom.ini" instead of "skulltag.ini" was used as name foe the config file. [Torr Samaho]
  • Fixed: The command line argument "+sv_maxteams 1" didn't have any effect. [Torr Samaho]
  • Fixed: Newly connecting clients were not informed about gravity changes of the actors already in the game. [Torr Samaho]
  • Fixed: When an RCON client executed exit or quit on the server, the command was not logged to the console on non-Windows servers. [Torr Samaho]
  • Fixed: Clients were not informed about the value of lmsspectatorsettings in non-LMS games even though it is possibly necessary due to sv_applylmsspectatorsettings. [Torr Samaho]
  • Fixed: The ACS command CancelFade didn't work properly online. [Torr Samaho]
  • Fixed: The sounds of A_CustomMeleeAttack didn't work properly online. [Torr Samaho]
  • Fixed: When a player turned into a true spectator (i.e. not a dead spectator) in possession or TLMS or turned from dead spectator to true spectator in LMS, the points/wins of that player where not reset. [Torr Samaho]
  • Fixed: Newly connecting clients didn't properly display the running animation of players already in the game who were running while the new client was receiving the snapshot of the level. [Torr Samaho]
  • Fixed: Newly connecting clients were not properly informed about the parts of the default inventory players already in the game lost before the new client connected. [Torr Samaho]
  • Fixed: Spectators were treated like normal players while determining the winner of a DM game when the timelimit was hit. Thus a spectator could be declared to be the winner of the map. [Torr Samaho]
  • Fixed: When the countdown for a new round in (team)possession started, clients played the "PrepareToFight" announcer entry instead of the "NextRoundIn" one. [Torr Samaho]
  • Fixed: PointPusher and PointPuller actors that moved from their initial spawn positions stopped working after a map reset. [Torr Samaho]
  • Fixed: There was no pointlimit vote option in the menu. [Torr Samaho]
  • Fixed: After a "changemap" map change online, a client played the "x frags left" announcer sounds if fraglimit was between 1 and 3. [Torr Samaho]
  • Fixed: non-"map spawned", CLIENTSIDEONLY actors were not removed during a map reset on the clients online. [Torr Samaho]
  • Fixed: A_Countdown could lead to sync problem online. [Torr Samaho]
  • Fixed: Grenades that exploded due to the timer didn't have transparency applied to their explosion. Thanks to Popsoap for submitting the DECORATE fix for this. [Torr Samaho]
  • Fixed: When A_Chase should have set an actor to the idle state, on the clients online that actor was set to the spawn state instead. [Torr Samaho]
  • Fixed: When a player was spawned on the client, under some circumstances the client locally played the death animation of the previous player body. [Torr Samaho]
  • Fixed: NOSKIN didn't work properly on player classes. [Torr Samaho]
  • Fixed: If a player fragged another player during the first two seconds after the map was started, that player got an incredible medal. [Torr Samaho]
  • Fixed: Clients online only used the KEYCONF lump for their own player but ignored it for all other players locally. [Torr Samaho]
  • Fixed a typo in the protected lumps warning and clarified the client warning. [Torr Samaho]
  • Fixed: Clients applied TERRAIN damage by themselves leading to sync problem online. [Dusk, Torr Samaho]
  • Fixed: Additive translucent lines were not additive translucent after a map reset anymore. [Dusk]
  • Fixed: Clients weren't told about -NOGRAVITY or +DROPPED that is explicitly set for dropped items. [Dusk]
  • Fixed: The line special Thing_Stop didn't work properly online. [Dusk]
  • Fixed: The position of grenades bouncing off another actor online got out of sync on the clients. [Dusk, TIHan, Torr Samaho]
  • Fixed: A_FireCustomMissile played the SeeSound on the clients twice, wasted network bandwidth and spawned the missile on the clients imprecisely. [Dusk, TIHan, Torr Samaho]
  • Fixed: If a player with a TID is morphed/unmorphed, clients assumed the TID is reverted to 0. [Torr Samaho]
  • Fixed: Newly connecting clients were not informed about the current movedir of the actors already in the game. [Torr Samaho]
  • Fixed: If a morphed player is unmorphed while running, its animation got stuck. [TIHan]
  • Fixed: Newly connecting clients were not properly informed about the current state of dehacked actors. [Torr Samaho]
  • Fixed: Sliding polyobject doors broke during a map reset. [TIHan, Torr Samaho]
  • Fixed: Replaying a sound on the same channel with A_PlaySound restarted the sound on the clients online. [Dusk]
  • Fixed: The "oof" sound was played multiple times on a client when bumping into walls in low friction sectors online. [TIHan, Torr Samaho]
  • Fixed: Dead players/bots are not separated from the rest on the scoreboard in survival invasion. [TIHan, Torr Samaho]
  • Fixed: The vertical spacing between two players in coop info was too small on maps with SECTINFO. [Torr Samaho]
  • Fixed: The "You cannot rejoin the game until the round is over!" message is printed twice, once when pressing space and once when releasing space. Thanks to Dusk and Edward-san for suggesting the fix. [Torr Samaho]
  • Fixed: Clients didn't reset their join queue position on a "map" map change. [Dusk]
  • Fixed: Louder/duplicate DSOOF sounds from other players online landing on things. [TIHan]
  • Fixed: Weapon pieces vanish from the status bar on clients after map changes online. Furthermore, newly connecting clients were not informed about the weapon pieces of the players already in the game. [Dusk, Torr Samaho]
  • Fixed: When a dead player turned into a spectator after A_SkullPop was called, the spectator couldn't slide on walls. [Torr Samaho]
  • Fixed: Clients were not properly informed about Hexen armor values. [Dusk, Torr Samaho]
  • Fixed: Client's didn't properly respect the arguments of bridges. [TIHan]
  • Fixed: The server doesn't try to tick the master anymore if skulltag_masterip can't be resolved, but prints a warning instead. Previoulsly, an invalid skulltag_masterip setting led to WSAEADDRENOTAVAIL errors. [Torr Samaho]
  • Fixed: When the value of timelimit was changed online, the notification messaged displayed the new value as integer instead of as float. [Torr Samaho]
  • Fixed: Newly connected clients were not properly informed of certain properties of players and other actors. The same happened after "changemap" map changes to the client's consoleplayer. [TIHan]
  • Fixed: Rapidly activating 'chase' before joining a game with high ping results 'chase' being activated even with sv_cheats 0. [TIHan, Torr Samaho]
  • Fixed: In offline mode for team games, RESPAWN scripts were fired upon player entering the game instead of ENTER scripts. [TIHan]
  • Fixed: Player kept his custom skin color after morphing online. [TIHan, Torr Samaho]
  • Fixed: A morphed player possibly changed his skin back to his unmorphed custom skin online after starting to move. [Torr Samaho]
  • Fixed: Clients were not informed of MorphFlash and UnMorphFlash. [TIHan]
  • Fixed: The server could crash if changemus was called with a too long argument. [Edward-san]
  • Fixed: The freeze cheat could be activated during demo playback. [Dusk]
  • Fixed "1 minutes" typo in muting message. [Dusk]
  • Fixed: Mystic Ambit Incant use code was executed on the clients and the server did not tell clients about its usage properly. [Dusk]
  • Fixed: A malformed launcher packet could crash the client. [Torr Samaho]
  • Fixed: The server sent broken launcher challenges to the clients if timelimit was smaller than one and bigger than zero. [Torr Samaho]
  • Fixed: Opening the "Configure server" window in the Windows server console rounded the timelimit value to integer. [Torr Samaho]
  • Fixed: The gameplay tab of the "Configure server" window in the Windows server console didn't allow non-integer timelimit values to be entered. [Torr Samaho]
  • Fixed: When a player turned into a spectator offline, the disconnect particle effect was missing. [Torr Samaho]
  • Fixed: Newly connected clients are not informed of other clients' PowerupGiver. [TIHan]
  • Fixed: The player's view could bob on a client after unmorphing online while the player was still frozen due to rectiontime. [TIHan, Torr Samaho]
  • Fixed: Newly connected clients were not informed of other actors' reaction time. [TIHan]
  • Fixed: Morphed players turning into spectators leave dummy players behind. [TIHan]
  • Fixed: Clients weren't informed of damage caused by initial poisoning or of the accompanying cough sound caused by PoisonCloud. Clients were calling poison-caused Pain states on their own. [Dusk]
  • Fixed: Picking up a weapon piece caused the local ammo count on the client to go out of sync. [Dusk]
  • Fixed: Clients weren't told of pigplayers' bite sound. [Dusk]
  • Fixed: Stray Hexen bridge balls (and other actors spawned by A_BridgeInit) were included in snapshots the server sends to connecting clients. [Dusk]
  • Fixed: Clients were not informed of alwaysapplydmflags' value. [TIHan]
  • Fixed: Some scrolling textures were not handled properly between client and server. [TIHan]
  • Fixed: Clients weren't told of monsters' strafe counts, causing desyncs in 'fast-chasing' monster movement. [Dusk, Torr Samaho]
  • Fixed: Zedek's Quietus attack was not handled properly, appearing silent and invisible. [Dusk, Torr Samaho]
  • Fixed: Puzzle item usage was handled improperly on the clientside, causing no item use sound when a puzzle was solved with it. Also changed puzzle item fail message to only print on the client that activated it, rather than to everybody. [Dusk]
  • Fixed: Under certain circumstances after a monster was resurrected, it did not get reset when the map reset. [TIHan]
  • Fixed: Spectators were blocked by SOLID things on steps. [Torr Samaho]
  • Fixed: The remains of crushed actors were not removed on the clients online by a map reset. [Torr Samaho]
  • Fixed: Poly object doors were not handled properly online. [TIHan]
  • Fixed: Newly connected clients were not properly informed of poly objects. [TIHan]
  • Fixed some Z position sync problems of floating monsters online. [TIHan]
  • Fixed: Players could choose their team by using "team" or "changeteam" commands as a spectator when sv_noteamselect was true. [TIHan]
  • Fixed: Spectators were affected by the TimeFreezeSphere in competitive modes. [TIHan]
  • Fixed: When a non-spectator player disconnected his running CLIENTSIDE scripts were not terminated. [Torr Samaho]
  • Fixed: When a map reset was done while a PowerTimeFreezer was in effect, the sound was not resumed after the reset. [Torr Samaho]
  • Fixed: Grenade explosion sound was not unlimited. [Dusk]
  • Fixed: Players could get medals from spawn telefrags. [Dusk]
  • Fixed: Accuracy/Precision medals are now properly given when using the Rocket Launcher, Grenade Launcher, or BFG10K. [MP2E, Torr Samaho]
  • Fixed problems with the LAN broadcast under Linux. [Koromix]
  • Fixed: Console icon would stick on a player's head if the server missed the packet to remove the icon. [TIHan]
  • Fixed: Medals weren't announced on spied players. [Dusk]
  • Fixed: Wound state changes weren't sent to clients. [Dusk, Torr Samaho]
  • Fixed: The server always instructed clients to use the standard pain state of an actor, not any custom one. [Dusk, Torr Samaho]
  • Fixed: Newly connecting clients were not informed about non-standard death states of corpses already on the map. [Dusk, Torr Samaho]
  • Fixed: Spectators were affected by SetPlayerProperty and SetActorProperty. [TIHan, Torr Samaho]
  • Fixed: "Impressive"/"Most Impressive" medals are now properly given when the player has a spread rune. Note: If a player hits another player with multiple rails in one attack, this is intentionally counted as multiple hits. [MP2E, Torr Samaho]
  • Fixed: The MageWandSmoke spawned by MageWandMissile is now properly client-sided. It was already spawned by the client before, but not properly treated as CLIENTSIDEONLY actor. [Dusk, Torr Samaho]
  • Fixed: Certain effects in SetPlayerProperty were not working as intended online. [TIHan, Torr Samaho]
  • Fixed: When no network socket can be allocated the console is not flooded with NETWORK_GetPackets warnings anymore. [Torr Samaho]
  • Fixed: A malformed SERVER_LAUNCHER_CHALLENGE could cause the client to crash. [Torr Samaho]
  • Fixed: SetActorVelocity didn't update velocity changes to clients. [Dusk]
  • Fixed: Clients don't explode non-bouncing missiles hitting walls, ceilings or floors on their own anymore as the server tells them. [TIHan, Dusk, Torr Samaho]
  • Fixed: The "Join server" command in the Windows server console didn't work if the server loaded wads that are not among those in FileSearch.Directories. [Torr Samaho]
  • Fixed: The number of items and secrets found displayed in the alternative hud is not reset during a map reset. [Torr Samaho]
  • Fixed: The number of items found displayed in the alternative hud is not updated online on the clients when an item is picked up. [Torr Samaho]
  • Fixed: If all weapons except for the ones from the default inventory were forbidden by lmsallowedweapons, clients stared online with no weapon in hand. [Torr Samaho]
  • Fixed: If gl_lightmode was 2 in the config file when starting the game, gl_lightmode was automatically changed to 3. [Torr Samaho]
  • Fixed: Spectators were affected by pushers, e.g. wind. [Torr Samaho]
  • Fixed: Switches that execute CLIENTSIDE scripts didn't animate or play any sounds when activated online. [Torr Samaho]
  • Improved the X/Y/Z positioning of non-player actors moved by explosions online. [Torr Samaho]
  • Fixed: sDamage_Hellslime and sDamage_SuperHellslime didn't the player's view green online. [Dusk, Torr Samaho]
  • Fixed: "<name> is a cheater!" message was displaying on chasecam even if sv_chasecam was true. [Dusk]
  • Fixed: Attempting to play instagib without a railgun resulted in a crash. [Dusk]
  • Improved the code that removes containing incomplete color codes of type "\c[X" from player names. [Torr Samaho]
  • Changed F12 to allow spectators full spying, with the exception of during LMS if it's disabled. [Eruanna]
  • Changed F12 to allow full demo spying. [Eruanna]
  • Players aren't forced to spectate after a "changemap" map change on a server with a join password anymore. [Torr Samaho]
  • Player names are now automatically terminated with "\c-". This ensures that using a player name in a string doesn't affect the color of the string after the player name. [Torr Samaho]
  • The linux binaries are now compiled with -fno-stack-protector in order to increase compatibility with distros using older glibc versions. [Torr Samaho]
  • For security reasons cl_password and cl_joinpassword are not archived in the ini anymore. Thanks to kgsws for pointing us to this potential security problem. [Torr Samaho]
  • The customizable "teamgame" game mode now uses the F1_TMGM lump as F1 help screen. [Torr Samaho]
  • When a player cancels a vote, the other players are not prevented from making this type of vote again anymore. [Torr Samaho]
  • Skulltag now refuses to delete the active body of a player if it does not have a next state, but the current state has a finite duration. Instead a warning is printed and the body is frozen in its current state. This should fix the Neodoom crashes. [Torr Samaho]
  • The clients are now informed whenever the server uses the puke command. [Torr Samaho]
  • Players can't join during intermission anymore. Instead they are put in line and will join immediately after intermission ends (if there free player spots only of course). [Torr Samaho]
  • The CVAR fraglimt now can't be made bigger than 32767 (SHRT_MAX) anymore. Furthermore, the CVAR timelimit is now limited to the same range as fraglimt. [Torr Samaho]
  • If a spectator uses "team/changeteam teamname" during intermission, he is now put on the join queue instead of the command being ignored completely. [Torr Samaho]
  • Since TLMS just went on as usual when the timelimit was hit (although claiming to enter sudden death mode), timelimit is now deactivated in this gamemode. [Torr Samaho]
  • In gamemodes that reset the map time during a map reset, the timelimit counter is now hidden on the score board while the game is not in progress. [Torr Samaho]
  • If a client isn't allowed to know the health and armor of another player due to the gamemode, health and armor of this player are not displayed in coop info anymore. Furthermore, the mugshot of these players through coop spy is displayed as if the player had full health. [Torr Samaho]
  • The server now logs RCON connects to the console. It already logged RCON disconnects, so it should log connects, too. [Torr Samaho]
  • The CVAR chase_dist now can't be made smaller than 0 anymore. [Torr Samaho]
  • When a client disconnects from a server, sv_gravity on the client is reset to its default value, discarding the value the server told the client to use before. [Torr Samaho]
  • Changed the default value of the CVAR skulltag_masterip to master.skulltag.net. [Torr Samaho]
  • The "sv_cheats must be true to enable this command." message is not displayed more than once per second on a client online anymore. [Torr Samaho]
  • Being killed by a teammate doesn't count towards "You Fail It" or YSINE medals anymore, making it consistent with excellent/incredible medals that ignore team kills. [Torr Samaho]
  • When a connecting client is disconnected due to an error, any further net packet from its IP are now ignored for 10 seconds to prevent log flooding. [Torr Samaho]
  • Clients are now informed about the server's sv_coop_damagefactor value and, if not 1, the value is displayed on the scoreboard. [TIHan]
  • Adjusted kickfromgame commands to have more verbosity in error messages. [Dusk]
  • The ally, chat and rune sprites are now also available in non-Doom games. [Torr Samaho]
  • Renamed CVAR skulltag_masterip to masterhostname. [Torr Samaho]
  • Removed the skulltag_data.pk3 auto loading mechanism. skulltag_data.pk3 should now be loaded explicitly like any other add-on. [Torr Samaho]
  • snes_spc and hqnx are now linked statically, eliminating the need to distribute the corresponding dlls. [Torr Samaho]
  • CVAR "stillbob" has a range limit of -16 to 16. [TIHan, Torr Samaho]
  • Removed the ancient code that was erasing ZDoomGL settings from a player's config. [Torr Samaho]
  • If GetPlayerInput is called from a world activated CLIENTSIDE script with a negative player number, the input of the local consoleplayer is returned. [Torr Samaho]
  • Converted the ACS function GetTeamScore to be compatible with ZDaemon's version of this function. [Torr Samaho]
  • Raised the maximum number of players from 32 to 64. sv_maxclients and sv_maxplayers still default to 32 to stay compatible with existing mods. [Torr Samaho]
  • When a spectator enters the game its associated scripts are stopped. Previously the scripts just were disassociated, causing them to continue running even after the player disconnects. The old behavior can be restored with compat_dont_stop_player_scripts_on_disconnect. [Torr Samaho]

Skulltag

v0.98d

  • Added unlagged support for player positions (controlled by the new CVAR sv_nounlagged). Clients can deactivate unlagged for their own attacks by setting cl_unlagged to 0. [Spleen, Torr Samaho, Eruanna]
  • Extended the chat substitution by $location, the name of the current player position as specified by SECTINFO. [Torr Samaho]
  • Extended coop info to work in team games (only info about the team-mates is shown). [Torr Samaho]
  • Added kgsws' Weapon DropItem patch. [Torr Samaho]
  • Added new CVAR sv_limitnumvotes (default true) that allows to turn of the vote flooding protection. [Torr Samaho]
  • The server-master challenge now includes the revision number of the server. [Torr Samaho]
  • Rewrote the master ban list sending code. If necessary, the ban list now can be sent split over multiple packets. [Torr Samaho, SuperGod]
  • Considerably improved client side crouch prediction. [Torr Samaho]
  • Added new CVAR sv_coop_damagefactor (default 1.0). If set to any positive value other than 1.0, it multiplies the damage dealt to players by monsters with this value. [TIHan, Spleen]
  • Fixed: Sector_SetFloorPanning with negative offsets didn't work properly online. [Torr Samaho]
  • Fixed: Newly connecting clients were not informed about altered floor and ceiling heights of linked sectors. [Torr Samaho]
  • Fixed: The "Join server" command in the Windows server console didn't work properly. [Torr Samaho]
  • Fixed: Under some circumstances the ACS function ReplaceTextures didn't work properly online. [Torr Samaho]
  • Fixed: Some color codes were not properly removed from the logfile output and the output of the SDL client to stdout. [Torr Samaho]
  • Fixed: "use weaponname" didn't bring up the chosen weapon online. [Torr Samaho]
  • Fixed: "lms_allow* false" didn't prevent the player from getting the corresponding weapon if it belonged to the default inventory of the player class. [Torr Samaho]
  • Fixed: The server didn't do any sanity checks on the version string connecting clients send before printing the string. [Torr Samaho]
  • Fixed: sv_gravity and sv_aircontrol are not synchronized between clients and server. [Torr Samaho]
  • Fixed: A_ReFire didn't work properly online for morphed players. [Torr Samaho]
  • Fixed: Dead spectators using chasecam don't lose it when being reborn and chasecam is not allowed for non-spectators. [Torr Samaho]
  • Fixed: When a player was named "<server>" or "* <server>", certain messages generated chat sounds while they shouldn't have. [Torr Samaho]
  • Fixed: The network traffic needed by Sector_SetRotation increased linearly with the number of sectors that have the given tag instead of being constant. [Torr Samaho]
  • Fixed: With sv_logfiletimestamp == true, the timestamp appeared multiple times per line when calling playerinfo. [Torr Samaho]
  • Fixed: When the respawn invulnerability runs out, the player body becomes opaque instead of returning to its default alpha value. [Torr Samaho]
  • Fixed: The ACS command TakeInventory didn't work properly online if it was used to take a bigger inventory amount than the target actually had. [Torr Samaho]
  • Fixed an exploit that allowed a player to get rid of its team in a team based game mode. Kudos to kgsws for finding and reporting this exploit. [Torr Samaho]
  • Fixed some online sync issues with moving floors and ceilings linked with Sector_SetLink. [Torr Samaho]
  • Fixed problems with A_KillSiblings online. [Torr Samaho]
  • Fixed: Clients are not informed about the momentum or the angle of actors spawned by RandomSpawner online. [Torr Samaho]
  • Fixed more problems with A_PlaySoundEx and looping sounds online. [Torr Samaho]
  • Fixed: Client sided RandomSpawners didn't work. [Torr Samaho]
  • Fixed: When the server removed a monster or an item with Thing_Remove the total monster and item count was not adjusted accordingly on the clients. Furthermore, removing a monster with Thing_Remove in invasion prevented the current wave from ending. [Torr Samaho]
  • Fixed a particular instance of a weapon desync that happened when a player picked up a weapon with compat_oldweaponswitch enabled in the server. [Spleen]
  • Fixed: invuse could crash the client when called before the player has a body. [Torr Samaho]
  • Fixed: The demo_spectatefreely and demo_skiptonextmap commands could be used while a demo was not playing. [Spleen]
  • Fixed: Obituaries on puffs didn't work online on the clients. [Torr Samaho]
  • Fixed: The client thought it was lagging when a player joined a game using the "join" command. [Torr Samaho, Spleen]
  • Fixed: Grenades could explode twice. The fix also moves part of the hard coded grenade implementation to DECORATE. [Torr Samaho]
  • Fixed: When a player gets rid of a weapon/inventory item via the 'drop' console command online, a duplicate of the object that cannot be picked up appears at 0,0 on the map grid on the clients. [Torr Samaho]
  • Fixed: When a player turned into a dead spectator online, the spectator body could get stuck in the floor or the ceiling. [Torr Samaho]
  • Fixed: Pasting from clipboard into menu string fields could freeze the game. [Torr Samaho]
  • Fixed: The client thought it was lagging when a player joined a game from the join queue. [Torr Samaho, Spleen]
  • Fixed: Actors derived from actors that use A_Jump could cause clients to crash. [Torr Samaho]
  • Fixed: The console command "crouch" didn't have any effect online. Note: It sill doesn't behave exactly online as it does offline but it should work sufficiently well. [Torr Samaho]
  • Fixed: A client wrongly assumed that players who were dead while the client connected still had their default health. [Torr Samaho]
  • Fixed: When a player with a high ping killed a player with the last available shot of a missile weapon (e.g. BFG), the client locally switched back to that weapon after the obituary was displayed. [Torr Samaho]
  • Fixed: The console command "changemap" didn't have any effect when called during a survival countdown. Now the map change is done after the countdown ends. [Torr Samaho]
  • Fixed: When landing after falling down far enough with high ping, the client's view sank into the floor. [Torr Samaho]
  • Fixed: Clients didn't properly remove certain kinds of inventory items from their inventory locally after using them. [Torr Samaho]
  • Fixed: Some characters were not properly escaped in chat messages. [Torr Samaho]
  • Fixed: Bots respawned in survival even when out of lives. [Torr Samaho]
  • Fixed: Newly connecting clients were not informed about the chat and console status of the other players. [Torr Samaho]
  • Fixed: Clients wrongly exploded missiles on their own. [Torr Samaho]
  • Fixed: When entering a server, a client spawned a teleport fog at the position of each player already in the game. [Torr Samaho]
  • Fixed: Adding a bot in single player after loading a saved game may cause a crash. [Torr Samaho]
  • Fixed: When loading a saved game while already in a game with bots present, these bots are not removed. [Torr Samaho]
  • Fixed: Players couldn't join a team in the first ten seconds after a server was started. [Torr Samaho]
  • Fixed: When leaving a map with the nointermission MAPINFO flag any currently active vote is not stopped properly. [Torr Samaho]
  • Fixed: Skulls are not spawned in the Skulltag gamemode if either buckshot or instagib is selected. [Torr Samaho]
  • Fixed: When a team takes the lead in TDM the corresponding announcer sound is not played if this team already was leading before the teams got tied or the map was changed. The latter only happened when no other team took the lead at least once since the map change. [Torr Samaho]
  • Fixed: Starting an offline skirmish on a gamemode with teamgame == 1 with the "Server picks teams (ST/CTF)" flag enabled could cause the game to freeze. [Torr Samaho]
  • Fixed: Chat and team messages are printed as white in the console instead of the corresponding user selected message color. [Torr Samaho]
  • Fixed problems with the join command offline: If it was used while already in the game, the player was respwaned at a player start and left behind a dummy player at the old position. If it was used in a gamemode with teams while spectating, the player joined the game but wasn't put into a team. [Torr Samaho]
  • Fixed: When a player used the morphme cheat without argument in a game other than Heretic or Hexen, he lost his current weapon after morphing back. [Torr Samaho]
  • Fixed: Directly after using the disconnect command to manually disconnect from a server loading saved games didn't work. [Torr Samaho]
  • Fixed an exploit that allowed a player to greatly increase its speed. Kudos to kgsws for finding and reporting this exploit. [Torr Samaho]
  • Fixed: The leading team is not announced properly if all teams with players on have negative frags and sv_maxteams is smaller than four. [Torr Samaho]
  • Fixed: When a client disconnects, the servers doesn't clear the cheats of the corresponding player slot. [Torr Samaho]
  • Fixed: ArtiBlastRadius didn't work properly online and affected spectators. [Torr Samaho]
  • Fixed: Medals icons of enemies were not shown properly. [Torr Samaho]
  • Fixed: The local client flood timers (e.g. for "changeteam") are not reset during error clean up. [Torr Samaho]
  • Fixed: The angle of a player is not set according to the spawn point after a 'nointermission' map change online. [Torr Samaho]
  • Fixed problems with A_CustomMissile on CLIENTSIDEONLY actors that happened when the spawning was blocked. [Torr Samaho]
  • Fixed: After a "changemap" map change two teleport fogs were spawned for each non-spectator player. [Torr Samaho]
  • Fixed: The server didn't enforce connecting clients to send their full userinfo, e.g. name, color, skin, etc. [Torr Samaho]
  • Fixed: After a "changemap" map change from a competitive game mode to an invasion map 3D floors didn't work properly. [Torr Samaho]
  • Fixed: Joining, taunting, chatting and weapnext/weapprev were not disabled during demo playback. [Torr Samaho]
  • Fixed: The local spectator player created by demo_spectatefreely was affected by freelook restrictions of the player who recorded the demo. [Torr Samaho]
  • Fixed: Opening / closing the console or the menu during demo playback affected the console icon status of the player who recorded the demo. [Torr Samaho]
  • Fixed: Bots could join in survival and survival invasion while the game was in progress. [Torr Samaho]
  • Fixed: When a dead player turned into a spectator, the spectator body still had the CORPSE flag. [Torr Samaho]
  • Fixed: The ACS command UnMorphActor caused a crash when it was called with (tid == 0) and the world as activator. [Torr Samaho]
  • Fixed: When sv_noteamselect was true in a game mode without teams, every player (including spectators) was put on a team after a "changemap" map change. [Torr Samaho]
  • Fixed: When sv_noteamselect was true in a game mode with teams, players connecting as spectators were put on a team even though being a spectator. The same happened after a "changemap" map change. [Torr Samaho]
  • Fixed: When a player carrying a flag/skull/terminator sphere/hellstone gets a medal, the medal isn't displayed as floaty icon, but the floaty icon corresponding to the carried item fades out when the awarded medal would. [Torr Samaho]
  • Fixed a crash problem of the Windows server related to dynamic lights. [Torr Samaho]
  • Fixed: The playback of improperly closed client side demos (a crash happening during the recording can cause demos to be improperly closed) was not properly stopped at the end of the demo. [Torr Samaho]
  • When adding a ban for an address that is already banned or when updating the expiration time of an existing ban, the comment of the existing ban is now updated. [Torr Samaho, SuperGod]
  • When a monster that is a friend of a player kills something, the corresponding player is treated as source of the kill (code submission from kgsws). [Torr Samaho]
  • The CVAR sv_enforcebans now only affects local bans, enforcement of master server bans is still controlled by the CVAR sv_enforcemasterbanlist. [Torr Samaho, SuperGod]
  • The ACS function PlayerInGame() now returns false for spectators. [Torr Samaho]
  • Changed the 'Smooth mouse movement' menu option from smooth_mouse to m_filter. smooth_mouse doesn't have any effect in Skulltag, so it doesn't need a menu entry. [Torr Samaho]
  • In TLMS all players in the winning team that are still alive at the end of the round get awarded a win. Furthermore, the wins are displayed in the scoreboard in TLMS like already done in LMS. [Torr Samaho]
  • Fixed some crash problems with demo_spectatefreely. [Torr Samaho]
  • Extended sv_forcegldefaults to cover gl_fogmode: If sv_forcegldefaults is true, gl_fogmode == 0 is treated as if gl_fogmode == 1. [Torr Samaho]
  • When a player leaves the game, the FriendPlayer property of all monsters belonging to this player is cleared (based on a code submission from kgsws). [Torr Samaho]
  • When called from a CLIENTSIDEONLY actor, A_CheckSight now only checks whether the consoleplayer sees the actor. [Torr Samaho]
  • Weapon ammo is no longer displayed in coopinfo when sv_infiniteammo is enabled. [Spleen]
  • The CVAR timelimit is now ignored again in invasion and survival as it was before 0.97d3. It never worked in invasion or survival anyway and was intended only for non-coop modes. [Torr Samaho]
  • For technical reasons disabled saving while bots are in the game. Also disabled saving in multiplayer, the saved games couldn't be loaded anyway. [Torr Samaho]
  • Removed the "Player team" option from the offline skirmish team bot setup menu. This didn't have any effect and the player is supposed to select the team from the in game join menu anyway. [Torr Samaho]
  • Removed the "Botskill" option from the offline skirmish bot setup menus. This already can be configured in the main offline skirmish menu. [Torr Samaho]
  • Re-enabled the "resurrect" command in single player. [Torr Samaho]
  • Spectators don't spawn a teleport fog anymore when entering a map. Other clients didn't see this fog anyway when the spectator initially joined the server. [Torr Samaho]
  • Using "spectate" while a client side demo is played now does the same as "demo_spectatefreely". [Torr Samaho]
  • Decreased the default value of sv_maxpacketsize to 1024 (the default used in 98b and earlier versions), the higher value used in 98c caused "waiting for server" problems on some servers. [Torr Samaho]

v0.98c

  • Skulltag now supports Intel based Macintoshes (mainly done by backporting ZDoom revisions 1571, 1581, 1607, 1736, 1779, 1780, 1786-1788, 1793, 1807, 1814, 2122). [Blzut3, Torr Samaho]
  • Added basic outbound net traffic analysis code for the server. This code allows to find out which actor classes and which ACS scripts use how much net traffic and should greatly simply the identification of network bandwidth hogs in custom mods. [Torr Samaho]
  • Added a verification system that allows the master server to verify that a server-master-challenge came from an existing server. Furthermore, servers now acknowledge the receipt of the ban list to account for packet loss. [Torr Samaho]
  • Added new CVAR sv_logfile_append (default false). If enabled, a logfile is started and there already is a file with the specified name, the new log is appended to the existing file. [Torr Samaho]
  • Added free spectate mode for client side demos, started with the new CCMD demo_spectatefreely. In this mode, you can move freely while the demo is played as if you were a spectator while the game was recorded. [Torr Samaho]
  • Added new DECORATE actor flag SERVERSIDEONLY. The clients don't spawn such actors, only the server does. Therefore, spawning or manipulating these actors does not need network bandwidth. Only use it on actors that are always invisible and don't block the movement of players. [Torr Samaho]
  • Added new dmflag "don't identify target player", controlled by the new CVAR sv_noidentifytarget. If this is true, clients are enforced not to identify players, i.e. behave as if cl_identifytarget == 0. [Torr Samaho]
  • Added new dmflag "always apply lmsspectatorsettings", controlled by the new CVAR sv_applylmsspectatorsettings. If this is true, lms_spectatorchat will be respected in all game modes. [Torr Samaho]
  • Added the invasion spawners for Strife made by GorpusMorpus. Also thanks to Archfile for cleaning the doomednums. [Torr Samaho]
  • Extended the launcher protocol to optionally report the values of the new flag CVARs dmflags3 and compatflags2. [Torr Samaho]
  • Added CCMDs ignore_idx and unignore_idx to ignore/unignore players by index. [Torr Samaho, SuperGod]
  • Added new CVAR sv_randomcoopstarts (default false). If true, in cooperative game modes players are spawned at random player starts instead of the one designated for them. [Torr Samaho]
  • Further extended the OpenGL wallhack protection to catch another update of the hack. [Torr Samaho, SuperGod]
  • Added new dmflag "don't draw coop info", controlled by the new CVAR sv_nocoopinfo. If this is true, clients are enforced not to coop info, i.e. behave as if cl_drawcoopinfo == 0. [Torr Samaho]
  • Fixed: G_SecretExitLevel causes a skill change to 0 due to a typo by VC in G_ChangeLevel parameter list [Eruanna]
  • Fixed: sv_forcegldefaults 1 doesn't properly enforce the default GL lighting mode after a map change. [Eruanna, Torr Samaho]
  • Fixed: Executing spynext/spyprev on the server caused the server to crash. [Torr Samaho]
  • Fixed: The server ignored the CLIENTSIDEONLY flag for map spawned actors. [Torr Samaho]
  • Fixed: Players that turn into spectators kept their TID. [Torr Samaho]
  • Fixed: A_PlaySound/A_PlaySoundEx did not loop properly online. [Torr Samaho]
  • Fixed: If a morphed player defected to another team, a voodoo doll was left behind. [Torr Samaho]
  • Fixed: After morphing/demorphing, clients don't properly display the health corresponding to their new form. [Eruanna, Torr Samaho]
  • Fixed problems with player names containing incomplete color codes of type "\c[X". [Torr Samaho]
  • Fixed: Malformed net packets could be used to disguise chat messages as normal console messages. [Torr Samaho, SuperGod]
  • Fixed: In LMS/TLMS and coop with "sv_shotgunstart 1" client side demos, the consoleplayer's starting weapon is not properly recorded. [Torr Samaho]
  • Fixed: When a player suicided online with "skill 0", the clients thought the player had a health of 24388 instead of 0. [Torr Samaho]
  • Fixed: When a spectator disconnected, the disconnect particle effect was created at its last known position. Now the effect is already created when a player turns into a spectator. [Torr Samaho]
  • Fixed a server crash that could happen directly after a "map" map change when there were players in the game before the map change. [Torr Samaho]
  • Fixed: A client that disconnected before spawning as spectator could cause an active duel to be reset. [Torr Samaho]
  • Fixed: Exploding projectiles didn't properly enter their xdeath or crash state on the clients online. [Torr Samaho]
  • Fixed: Spectators could bump non-teleport line specials offline. [Torr Samaho]
  • Fixed: If a player turned into a spectator while crouching, the spectator kept the slow crouching speed. [Torr Samaho]
  • Fixed: Actors like LostSoul that deal damage by slamming could cause player health desyncs on the clients. [Torr Samaho]
  • Fixed: Unmorphing with the morphme cheat didn't work properly online. [Torr Samaho]
  • Fixed: A morphed player using the slot command online could cause weapon desync issues. [Torr Samaho]
  • Fixed: When servers that enforce the master ban list received an updated ban list from the master, they didn't automatically kick newly banned players already in game. [Torr Samaho, SuperGod]
  • Fixed: The AC value in Hexen is not displayed properly anymore on a client after an inter-hub map change. [Torr Samaho]
  • Fixed: Non-bouncy missiles disappeared when hitting the sky. [Torr Samaho]
  • Fixed some player class selection problems in non-cooperative offline skirmishes. [Torr Samaho]
  • Fixed: The Hexen invasion spawners still used ArtiInvulnerability instead of ArtiInvulnerability2. Thanks to Gez for submitting a patch for this. [Torr Samaho]
  • Fixed: When there are only two teams, the scoreboard only shows the score of the leading team instead of both scores. [Torr Samaho]
  • Fixed: A_FireGoldWandPL1 and A_FireBlasterPL1 did not award accuracy / precision medals. [Torr Samaho]
  • Fixed: The ACS function ReplaceTextures didn't work properly online and its effects were not reverted during a map reset. [Torr Samaho]
  • Fixed: If the packet with the client's map change authentication is lost, the client stayed on the old map locally. [Torr Samaho]
  • Fixed: When playing a client side demo with a "map" map change, the console could be flooded by "No body for player" errors and Skulltag could crash. [Torr Samaho]
  • Fixed: When a non Windows binary crashed, the crash catcher always got stuck. [Torr Samaho]
  • Fixed: When a non Windows binary can't find any IWAD, it just exits without any error message. [Torr Samaho]
  • The crash catcher in non Windows binaries now hopefully works better with recent GDB versions. [Torr Samaho]
  • Fixed: Bots didn't use the default movebob value 0.25. [Torr Samaho]
  • Fixed: LMS/TLMS rounds end prematurely when only one player / team survives the spawn telefragging after the map reset. [Torr Samaho]
  • Fixed: Starting a standard coop offline skirmish when survival was active didn't work. Instead a new survival game was started. [Torr Samaho]
  • Fixed: Powerup HUD icons overlap the HUD corner score. [Torr Samaho]
  • Fixed parsing problems with floats when the language setting uses ',' instead of '.' as float seperator under Linux. [Torr Samaho]
  • Fixed: Using "+deathmatch 1" as command line argument didn't work with non Windows binaries. [Torr Samaho]
  • Fixed: Under some circumstances, the wrong obituaries were displayed online. [Torr Samaho]
  • Fixed: When a bot was removed from the game, it didn't execute its disconnect scripts. [Torr Samaho]
  • Fixed an exploit that could turn a client into some kind of ghost mode. Kudos to kgsws for finding and reporting this exploit. [Torr Samaho]
  • Fixed: When re-entering a hub map online with more players than there were when leaving that map, the server could crash. [Torr Samaho, SuperGod]
  • Fixed: Trying to use chasecam on a non-coop server with sv_chasecam true and sv_cheats false caused the player to be kicked. [Torr Samaho]
  • Fixed: LMS crashed on startup when a weapon was replaced via DECORATE with a non-weapon inventory actor. [Torr Samaho]
  • Fixed: CCMD useflechette doesn't work online. [Torr Samaho]
  • Fixed: After a map change online with respawn invulnerability turned on, clients keep the invulnerability mugshot even after the respawn invulnerability runs out. [Torr Samaho]
  • Fixed: Players of an enemy team couldn't be spied when watching a client side demo. [Torr Samaho]
  • Fixed: In game modes where players earn "wins", the server returned the number of kills instead the number of wins for each players when asked for SQF_PLAYERDATA. [Torr Samaho]
  • Fixed: When a projectile with negative damage hit a player online, the clients were not informed about the health increase. [Torr Samaho]
  • Fixed: The server couldn't mute the first player with the ignore command. [Torr Samaho]
  • Fixed an exploit that allowed to create line breaks in chat messages. [Torr Samaho]
  • Fixed online sync problems with ACS spawned projectiles that are affected by gravity. [Torr Samaho]
  • Fixed problems with target switching in gamemodes with teamgame == 1. [Torr Samaho]
  • Fixed: Sector_SetLink didn't work online. [Torr Samaho]
  • For security reasons, the commands "screenshot" and "dumpmap" can't be called by ConsoleCommand anymore. Thanks to Spleen for reporting this. [Torr Samaho]
  • Raised the default value of sv_maxpacketsize to 1400. [Torr Samaho, SuperGod]
  • If cheats are disabled, clients are not allowed to use the CCMD testcolor anymore. [Torr Samaho, SuperGod]
  • The master server now can hide servers that don't enforce the master ban list. [Torr Samaho, SuperGod]
  • skulltag_data.pk3 is not loaded automatically anymore if a non-Doom IWAD is used. [Torr Samaho]
  • The player name in team possession score messages is not striped of its color codes anymore. [Torr Samaho]
  • The crash catcher in non Windows binaries now also logs the GDB version. [Torr Samaho]
  • Removed the hard coded "Turbosphere wearing off..." message from PowerSpeed. Instead the power granted by Turbosphere has an HUD icon now. [Torr Samaho]
  • When adding a ban for an address that is already banned, the expiration time of the existing ban is now updated instead of ignoring the addition. [Torr Samaho, SuperGod]
  • ArtiFly now has the FORCERESPAWNINSURVIVAL inventory flag. This was necessary for instance to escape the pit in E2M2 in survival in multiplayer with sv_itemrespawn == false. [Torr Samaho, SuperGod]
  • When a server side muted client tries to chat, the server messages the client that it's muted and (if applicable) when the mute will run out. [Torr Samaho, SuperGod]
  • Removed the definition of CVAR cl_maxcorpses (it had no effect since 98a anymore anyway). [Torr Samaho]
  • Instead of kicking clients that send too many movement commands, the excessive commands are just ignored. [Torr Samaho]

v0.98b

  • Greatly improved the windows server dialog! [Rivecoder]
    • Things that are entirely new:
      • Added COMMAND HISTORY! Made a mistake entering a command? Want to retrieve a previously-entered command? Just hit the "..." button!
        • NOTE: The command box now acts like the in-game console: you no longer have to precede your commands with a "/" to send them. (This was confusing too many people.)
      • "File|Join server" lets you immediately play on your server!
      • Added a HELP menu! This provides information for newbies and veterans alike.
    • Things that are now much easier to use:
      • Completely redid the CONFIGURATION DIALOG! It is now MUCH more intuitively designed, and easier to use.
      • Settings are grouped into tabs!
      • Settings that don't apply to your current game mode are hidden, keeping the dialog nice and clean.
      • Added missing settings (for instance, modifiers and voting settings).
      • Rewrote the STATISTICS DIALOG! You can read everything much more easily.
      • In the CHANGE MAP and MAP ROTATION dialogs, there is now a a list of available maps to choose from! It even autocompletes for you.
      • The dialog itself! The console is bigger, you can now see what game mode the server's using, and it's just more intuitive overall.
    • Smaller things:
      • You can click the status bar to quickly adjust who can see your server and copy its IP.
      • You can also click the labels at the top of the dialog, to quickly change the map or adjust settings.
      • When editing the MOTD, you now get a reference of all the color codes!
      • When you go to close the server, it will warn you if there are players connected.
      • There is now a button to view the logfile.
      • You can now add bots by right-clicking the scoreboard.
        • This menu also now supports temporary bans, and copying IPs is also simpler.
      • You can now very easily tell if you're running a public version because the status bar will simply show the version as "98a", "98b", and so on. Only in testing builds are the SVN revisions shown.
    • Bug fixes:
      • Fixed: the scoreboard would flicker if a timelimit was set, but no players were present.
      • Removed several unneeded or defunct dialogs.
      • The scoreboard and player list have been updated to support newer Skulltag features (like the "award damage instead of kills" DMFlag).
  • Added support for Maxim Stepin's hq2x/3x/4x pixel upsampling algorithm, like Scale2x/3x/4x controlled by the CVAR gl_texture_hqresize. In compliance with the LGPL, the upsampling code itself resides in a dynamically linked library. [Torr Samaho]
    • gl_texture_hqresize == 4 : hq2x algorithm
    • gl_texture_hqresize == 5 : hq3x algorithm
    • gl_texture_hqresize == 6 : hq4x algorithm
  • Added an IWAD setup screen that is shown instead of the fatal error message when no IWAD is found. [Rivecoder]
  • Added new CCMD printjoinqueue that allows the server to list the full join queue. [Torr Samaho]
  • Added new dmflag "only spawn sp actors in coop", controlled by the new CVAR sv_coop_spactorspawn, based on a code submission by TIHan. If this is true in a cooperative game mode, map actors are spawned as if the game was single player. [Torr Samaho]
  • Extended the effect of the MAPINFO flag "islobby": Maps with this flag now behave as if sv_noexit is false (except for A_BossDeath and A_BrainDie). [Torr Samaho]
  • Backported A_WeaponReady from ZDoom revisions 1698, 1711, 1720, 1723, 1776, 1789. [Torr Samaho]
  • Re-added support for 32 player starts for non Strife games. [Torr Samaho]
  • Added new actor properties "visibletoteam" and "visibletoplayerclass". Only players that are in the team specified by "visibletoteam" can see this actor, it is invisible to all other teams. "visibletoplayerclass" is the counterpart for playerclass based visibility. [Torr Samaho]
  • Added flags ALIGNANGLE and ALIGNPITCH to MODELDEF. If both are set, the model always faces the camera. If only ALIGNANGLE is set, the model faces the camera in the x/y plane. Note: ALIGNPITCH is not supposed to be used without ALIGNANGLE. [Torr Samaho]
  • Added flag ROLLAGAINSTANGLE to MODELDEF, a special flag for flat, beam like models. [Torr Samaho]
  • Fixed several problems with D'Sparil (Sorcerer1/Sorcerer2) online. [Torr Samaho]
  • Fixed: In lms/teamlms players didn't get weapons whose game property is "any". [Torr Samaho]
  • Fixed: If an actor with MF_SKULLFLY slams into something online, it possibly stops moving on the clients and starts to teleport around (This affected the Minotaur). [Torr Samaho]
  • Fixed: If a client was removed from the join queue after a map change without being allowed to join, the client was not informed about the removal. [Torr Samaho]
  • Fixed: The join queue was cleared in duel after a "changemap" map change. [Torr Samaho]
  • Fixed: Inventory items that insert themselves into the player's inventory are not restored after a map reset after being used by the player. [Torr Samaho]
  • Fixed: When traveling between maps in a hub online, two different actors possibly use the same network id. Among other things, this can cause clients to crash. [Torr Samaho]
  • Fixed: The weapdrop command doesn't work online. [Torr Samaho]
  • Fixed: CLIENTSIDE enter scripts are not executed after a "changemap" map change. The fix changes the timing of enter scripts: Instead of running them when the server finished loading the level, they are run when the client finished loading the level. This means though that there is a time gap between spawning a player and running the corresponding enter scripts. [Torr Samaho]
  • Fixed: If the server instructed the clients to start a CLIENTSIDE ACS script, each argument was transferred as byte instead of as long. [Torr Samaho]
  • Fixed: Dead spectators that automatically reenter the game after a "changemap" map change in survival don't trigger enter scripts. [Torr Samaho]
  • Fixed: The standing assault gun in Strife can only be picked up once (ported from ZDoom revision 1671). [Torr Samaho]
  • Fixed: The MAPINFO property skyrotate is not parsed properly if the MAPINFO lump uses the new format (ported from GZDoom revision 403). [Torr Samaho]
  • Fixed: The Windows server DMFlags dialog didn't read the compatflags2 value when opened. [Torr Samaho]
  • Fixed: Internally the mapinfo properties islobby and nobotnodes used the same value. Thus, when one of them was set, the other was automatically also set. [Torr Samaho]
  • Fixed: SBARINFO draws things marked as COOPERATIVE also in game modes where the CVAR teamgame is true. [Torr Samaho]
  • Fixed: If all players have negative frags and there are spectators in the game, the number of frags remaining shown on the scoreboard is not properly calculated. [Torr Samaho]
  • Fixed: Skulltag can't be started with certain command line options, e.g. "+map d2inv1 +invasion 1". [Torr Samaho]
  • Fixed: Sprites from a fullbright frame with a brightmap disabling fullbright did not Process dynamic lights touching them (ported from GZDoom revision 635). [Torr Samaho]
  • Fixed: demo_skiptonextmap has problems when the demo contains map changes that were made with the map CCMD. [Torr Samaho]
  • Fixed: When using demo_skiptonextmap, some of the sounds that were supposed to be played during the skipped part of the demo were played while skipping. [Torr Samaho]
  • Fixed: AxeBlood and Bloodsplatter didn't work online. [Torr Samaho]
  • Fixed: ACS translations of type "CreateTranslation(x, a:b=[red1,green1,blue1]:[red2,green2,blue2])" didn't work online. [Torr Samaho]
  • Fixed: ACS translations created by CreateTranslation that remap more than one range didn't properly work online. [Torr Samaho]
  • Fixed server side crashes that can happen during a map reset. [Torr Samaho]
  • Fixed: If stairs are being build while the map is reset, these stairs won't build properly anymore after the reset. [Torr Samaho]
  • Fixed: The console floating icon is possibly not removed when a saved game is loaded. [Torr Samaho]
  • Fixed: Map spawned RandomSpawner actors don't spawn anything after a map reset. [Torr Samaho]
  • Fixed: On maps with a team selection room, the server possibly crashed when a spectator tried to join a team directly with the team CCMD. [Torr Samaho]
  • Fixed: Sector damage didn't work inside 3D floors. [Torr Samaho]
  • Fixed: The code to check the maximal allowed effective skin sprite width/height still could cause to Skulltag to crash at startup. [Torr Samaho]
  • Fixed: A_MLightningAttack didn't update the ammo amount displayed on the clients online. [Torr Samaho]
  • Fixed: The server possibly crashed when a player is spawned and respawn invulnerability is on. [Torr Samaho]
  • Fixed: Changing the dmflags2 value could crash the server. [Torr Samaho]
  • Fixed: Players were told that they can't pick up the flag, when trying to pick up a team's skull if there are no people on the corresponding team. [Torr Samaho]
  • Fixed: When traveling from one map to the next online players with the class "random" were spawned as a new random class, but with the inventory they had on the previous map, causing numerous problems. Now the players keep their class and inventory. [Torr Samaho]
  • Fixed: The secondary shots of Heretic's crossbow were not aimed according to the player's pitch. [Torr Samaho]
  • Fixed: When a player turns into a dead spectator his ready weapon is not cleared properly. If the dead spectator then turns into a true spectator, this causes the clients to think that the last weapon he used is still in his inventory. [Torr Samaho]
  • Fixed: Teleportation could mess up the client side player prediction. [Torr Samaho]
  • Fixed: Line_AlignCeiling and Line_AlignFloor were not working properly online. [Torr Samaho]
  • Fixed: The code to check the maximal allowed effective skin sprite width/height didn't take into account high res sprite replacements. [Torr Samaho]
  • Fixed an exploit that allowed to manipulate the master ban list on a server using a forged UDP packet. [Torr Samaho, SuperGod]
  • Fixed problems with the flat alignment in the GL renderer (ported from GZDoom revisions 384+414). [Torr Samaho]
  • Fixed: Automatic returning of the white flag in one flag CTF didn't work. [Torr Samaho]
  • Fixed skin per surface MD3 model support. Note: The code for this has been there for ages, but it never worked. [Torr Samaho]
  • Fixed problems with the LAN broadcast under Vista and Windows 7. [Torr Samaho, Bond]
  • Fixed sync problems online caused by A_GetHurt. [Torr Samaho]
  • Fixed: A_MStaffTrack could crash. [Torr Samaho]
  • Fixed rendering problems when the MODELDEF flags ROTATING and PITCHFROMMOMENTUM were both used on the same model. [Torr Samaho]
  • Fixed: The model frame interpolation didn't work for frames with the bright flag. [Torr Samaho]
  • Fixed: The medal code could get stuck in an infinite loop. Special thanks to Cannonfodder for finding out how to trigger the freeze. [Torr Samaho]
  • Improved the handling of random state jumps on player weapons online. This hopefully fixes some client side crashes. [Torr Samaho]
  • Fixed: The authentication mechanism for non-map related lumps couldn't find the COLORMAP lump if it was only available in the colormaps namespace. [Torr Samaho]
  • Fixed: Clients that can't enter a server because of a range ban were not told the ban reason or the ban expiration date. [Torr Samaho, SuperGod]
  • Fixed: The team scores in non CTF/ST games are not displayed properly in the new fullscreen HUD if text scaling is activated. [Torr Samaho]
  • Fixed: Clients could crash during a "nextmap" map change. [Torr Samaho]
  • Fixed: Loading a saved game could cause a crash (fixed by backporting the info.h changes from ZDoom revision 1824). [Torr Samaho]
  • Fixed: Mirrors caused severe performance drops and rendering artifacts in GL. Kudos to Spleen for dissecting the GZDoom SVN and finding out what was causing the mirror problems. [Torr Samaho]
  • Fixed: Newly connecting clients were not informed about the actual RenderStyle and Alpha of the actors in the map and used the default values instead. [Torr Samaho]
  • Fixed: The effects of A_FadeIn and A_FadeOut were not properly synchronized online. This could cause client side crashes. [Torr Samaho]
  • Fixed a critical security bug of the server that allowed external RCON connections even if the server didn't set a proper RCON password. [Torr Samaho]
  • Fixed: A_FireCustomMissile didn't take into account the CLIENTSIDEONLY flag properly. [Torr Samaho]
  • You can now have an unlimited number of maps in the map rotation (previously 64). [Rivecoder]
  • Removed the unused sv_masteroverrideip. [Rivecoder]
  • The bounce sound of Skulltag's grenade is not hard coded to the actor name "grenade" anymore, but is controlled by the new actor flag USESTBOUNCESOUND. This way actors derived from Skulltag's grenade should inherit the bounce sound, while new actors called grenade don't automatically get the bounce sound. [Torr Samaho]
  • Changed: Clients can't set the CVAR gl_nearclip to anything but 5 anymore. [Torr Samaho, SuperGod]
  • Removed all custom code for RedArmor. It uses the DamageFactor feature from ZDoom revision 1661 now. [Torr Samaho]
  • GrenadeLauncher doesn't use A_FireSTGrenade anymore. Instead, it uses A_FireCustomMissile with the pitch parameter from ZDoom revision 1685. [Torr Samaho]
  • Clarified the error message that is shown when skulltag_data.pk3/skulltag.wad is not found. [Torr Samaho]
  • Negative movebob values are not allowed anymore. [Torr Samaho]
  • A_FadeOut does not delete player bodies that are still associated to a player anymore. Instead a warning is printed. [Torr Samaho]
  • Fixed: Duel Scoreboard displayed the incorrect number of duels remaining. [Vortex Cortex]
  • Fixed: CCMD "nextsecret" doesn't show intermission and can not be used in online games. [Vortex Cortex]
  • Fixed: CCMD "nextmap" did not handle "enDSeQ" when used on maps such as ExM8 and MAP30. [Vortex Cortex]

v0.98a

    • Thoroughly updated Skulltag's ZDoom base to the latest ZDoom SVN repository revision (currently 1551)! [Torr Samaho]
    • Upgraded the GZDoom renderer to 1.1.04 (revision 127, maintenance fixes from up to revision 322)! [Torr Samaho]
    • Added support for voodoo dolls online, controlled by the new CVARs sv_coopspawnvoodoodolls (default false), sv_coopunassignedvoodoodolls (default true) and sv_coopunassignedvoodoodollsfornplayers (default 32). One of the limitations currently is, that the clients know nothing about the dolls, only the server does. Because of this the dolls are invisible on the clients. [Torr Samaho, SuperGod]
    • Revamped the ping calculation code! [Torr Samaho, SuperGod]
    • Freed the ping from the shackles of Doom's fixed ticrate, i.e. the ping is not forced to be a multiple of 28 anymore, but calculated precisely.
    • The displayed ping of the clients is now averaged over multiple measurements.
    • The ping of the clients is now measured every second instead of every three seconds.
    • Fixed many of the annoyances with the voting system. [Rivecoder]
    • Vote-kicking a player now bans his IP for 10 minutes. [Rivecoder]
    • Vote callers can now cancel the vote they called (i.e., in case they made a mistake) by voting "no". [Rivecoder]
    • Added some flooding protection: [Rivecoder]
      • Each player can only call one vote per 5 minutes. [Rivecoder]
      • Each player can only call one *type* of vote per 10 minutes (to prevent spamming of, for example, "fraglimit 30..fraglimit 31...flaglimit 29...etc"). Kickvotes are ignored (because new mongs come and go) as long as they passed. [Rivecoder]
      • If a specific vote fails, it can't be revoted for 10 minutes. (It failed; let it go). [Rivecoder]
    • Made the client's voting menu nicer and easier to use. [Rivecoder]
      • You can now votekick players by selecting them, instead of having to type in their names. [Rivecoder]
      • Sorted the types of votes into categories and cleared up the difference between map/changemap. [Rivecoder]
      • Fixed several bugs that cropped up when quotes were used in the input strings. [Rivecoder]
    • Added vote reasons. These are brief blurbs explaining why a vote was called. [Rivecoder]
    • Vote-kicking is now more resilient; the mong's IP will be tempbanned even if he ducks out of the server right before the vote passes. [Rivecoder]
    • The actions of each vote ("Player votes yes, etc") are now printed in the client's console. [Rivecoder]
    • When a player is votekicked, the reason ("Vote kick, 5 to 2") is now stated. [Rivecoder]
    • A helpful message is now given if a client's vote is denied ("This server has disabled voting", "that player does not exist", "kick votes are disabled on this server"). [Rivecoder]
    • Added the CCMD "cancelvote", which can be used by the server or original vote caller to cancel the current vote. [Rivecoder]
    • Added the CVAR "sv_minvoters", which lets the server specify the minimum number of players needed to call a vote (default 1). [Rivecoder]
    • Fixed a bug where the wrong player could be kicked by a votekick. [Rivecoder]
    • Fixed: spectators could vote "yes" or "no" even when sv_nocallvote was set to 2. [Rivecoder]
    • The default minimum of eligible voters is now 1. [Rivecoder]
    • The "VOTE PASSED!" string is now drawn at the top of the screen. [Rivecoder]
    • Votes now run for a shorter duration. [Rivecoder]
    • After voting, the "vote" screen is now hidden. [Rivecoder]
    • You can no longer kickvote yourself. [Rivecoder]
  • Extended the OpenGL wallhack protection to catch the updated version of the hack. Kudos to SuperGod for providing extensive background information on how to resolve this. [Torr Samaho, SuperGod]
  • Added new actor flag PUFFGETSOWNER to flags5. If selected, the owner of the puff is set to the player who fired it. [Torr Samaho]
  • Converted BFG10K, GrenadeLauncher, RandomPowerup, TeamItem, Flag, Skull, WhiteFlag, FloatyIcon, PathNode, ReturnZone, SpringPadZone, Hissy, MaxHealth, RuneGiver, RedArmor, PowerTerminatorArtifact, PowerPossessionArtifact, various invasion spawner base classes and various Rune classes to DECORATE. [Torr Samaho]
  • Converted Cacolantern, Abaddon, Belphegor, BloodDemon, Hectebus and SuperShotgunGuy to DECORATE. [Karate Chris, The Doom Master, Theshooter7, Gez, Torr Samaho]
  • Actor flag NONETID is now available in DECORATE. Actors with this flag are not assigned a network id when spawned. Only use it, if you know what you are doing! [Torr Samaho]
  • Added 11 new game mode types to SBarInfo. They are as follows: ctf, oneflagctf, skulltag, invasion, possession, teampossession, lastmanstanding, teamlms, survival, instagib, and buckshot. [Blzut3]
  • Added runeicon to SBarInfo's drawimage. [Blzut3]
  • Vastly improved the server's DMFlags dialog. [Rivecoder]
    • Sorted the flags into clear, logical groups.
    • You can now type in new flags values directly, and see the checkboxes update in real time.
    • Added missing flags, clarified the description of many, and fixed a few bugs.
  • Added the ability to ignore an annoying player's chat messages! Use the new CCMDS "ignore" and "unignore". [Rivecoder, Torr Samaho]
    • You can also ignore the player for n minutes by using "ignore <name> n". [Rivecoder]
    • Added a menu to easily select a player. [Rivecoder]
  • When an IP address is banned, all players using that address are now immediately kicked. [Rivecoder]
  • Added teamscore to SBarInfo's drawnumber and drawbar. Its takes one parameter for team name. [Blzut3]
  • Added new CCMD demo_skiptonextmap. When playing a client side demo, this command jumps the playback to the next map change. [Torr Samaho]
  • Added new CVAR sv_useteamstartsindm (default false). If true, team starts will be used when possible in deathmatch game modes with teams, e.g. TDM, TLMS. [Torr Samaho]
  • Added support for GZDoom's alternate HUD. [Torr Samaho]
  • Added new compatflag "old radius damage", controlled by the new CVAR compat_oldradiusdmg. If this is enabled, the original Doom radius damage code is used, i.e. explosions have infinite vertical range. [Torr Samaho, SuperGod]
  • Added new CVAR sv_logfiletimestamp_usedate. If enabled, the current date "YY:MM:DD" is prepended to the per-line timestamp of the logfile. [Torr Samaho]
  • Added new DECORATE weapon property "preferredskin". While the PreferredSkin value of a player's ready weapon is equal to a skin available to the player's class, the player is forced to use this skin, overriding any personal skin settings. This allows to easily create mods were one can see from the skin which weapon the other players are currently using. [Torr Samaho]
  • Added new CVAR cl_soundwhennotactive (default true). If enabled, the Windows client will keep playing sound as normal when the client is not the currently active application. [Torr Samaho, SuperGod]
  • Extended the launcher protocol to allow launchers to handle one stable version (e.g. 97d3) and one testing version (e.g. 97e-alpha) side by side. [Torr Samaho, SuperGod]
  • You can now specify the IP Skulltag binds its network socket to with "-useip IP". If used, Skulltag only listens on that IP for incoming traffic and uses the corresponding NIC for outgoing traffic. If not specified, Skulltag listens on all NICs, but uses the default NIC for outgoing traffic. May be useful when hosting a server on a machine with multiple NICs to select which one to use. [Torr Samaho]
  • Added new CVAR gl_use_models (default true). If false, all sprite model replacements are ignored. [Torr Samaho]
  • Added new dmflag "no rocket jumping", controlled by the new CVAR sv_norocketjumping. If enabled, P_RadiusAttack doesn't give players any z-momentum if the attack was made by a player. This essentially disables rocket jumping. [Torr Samaho, SuperGod]
  • Revamped the ZDoom dmflag "kill monsters", controlled by the CVAR DF2_KILL_MONSTERS. [Torr Samaho, SuperGod]
    • When the exit is blocked, the player is now teleported back to a random start. This fixes problems when the exit was blocked and the player passed an exit line.
    • The flag is now only used in cooperative game modes, doesn't make much sense in other modes.
    • Added new CVAR sv_killallmonsters_percentage (default 100) that allows to specify how many percent of the monsters have to be killed before the level can be exited.
    • If the flag is used, the scoreboard now displays how many percent of the monsters are still alive instead of the absolute number.
  • Added new ACS script flag CLIENTSIDE. Scripts with this flag are only executed on the clients, not on the server. Therefore, such scripts should not need any network bandwidth while running (only the server instruction that tells the clients to start the script needs bandwidth). Only use it on scripts that don't affect the game in any way (visuals aside) and only use it, if you know what you are doing! [Torr Samaho]
  • Extended the launcher protocol to optionally report the MD5 sum of the main data file (skulltag.wad/skulltag_data.pk3) the server uses. The sum is also shown on startup in the console log. [Torr Samaho]
  • Added new CCMD countactors that counts the number of actors currently in the game, shows how many of them have a network id and how many actors are of which class. [Torr Samaho]
  • In levels with a team selection room, the player's inventory is not given until a team has been picked. [Blzut3, Torr Samaho]
  • sv_maxteams to select between 2, 3, and 4 team games. 4 teams are defined in Skulltag: blue, red, green, and gold. [Blzut3]
  • Extended the master server protocol so that the packets sent by the master containing the server list never exceed 1024 byte. Furthermore, servers with the same IP are sent in blocks now (kudos to bond for this idea), vastly reducing the amount of traffic necessary for the list. [Torr Samaho]
  • Added new dmflag "force gl defaults", controlled by the new CVAR sv_forcegldefaults. If this is enabled, some default OpenGL rendering options are enforced, i.e. clients render as if gl_lightmode == 3 and gl_light_ambient == 20.0. [Torr Samaho]
  • Extended the authentication mechanism for non-map related lumps to check all DEHACKED lumps. [Torr Samaho, SuperGod]
  • The new ingame class selection join menu is now also used in non-team based game modes, allowing to select from an arbitrary number of classes. [Torr Samaho]
  • Added new CVARs sv_coop_loseinventory, sv_coop_losekeys, sv_coop_loseweapons, sv_coop_losearmor, sv_coop_losepowerups, sv_coop_loseammo and sv_coop_halveammo to control the corresponding dmflags. [Torr Samaho]
  • Extended the effect of the MAPINFO flag "islobby": Maps with this flag now behave as if sv_keepteams is false. [Torr Samaho]
  • The name and location of Skulltag's data file (skulltag_data.pk3/skulltag.wad) can be specified with "-skulldata NAME". [Torr Samaho]
  • When the Windows server crashes, it tries to kick all clients before it shuts down. That way the clients have a chance to notice that the server crashed instead of seeing the "waiting for server" message forever. (implementation for Linux planned). [Torr Samaho]
  • Added new compatflag "clients send full button info", controlled by the new CVAR compat_clientssendfullbuttoninfo. This needs to be enabled to make the ACS function GetPlayerInput work on server side scripts with buttons other than BT_ATTACK, BT_USE, BT_JUMP, BT_CROUCH, BT_TURN180, BT_ALTATTACK, BT_RELOAD and BT_ZOOM. Because it increases net traffic, it should only be activated if needed. [Torr Samaho]
  • Added new compatflag "no land", controlled by the new CVAR compat_noland. If this is enabled, players are not allowed to use the land CCMD anymore. [Torr Samaho]
  • Fixed errors while compiling and running 64-bit versions of Skulltag. [Blzut3]
  • The fire background for player setup and class select was not scaled properly. [Blzut3]
  • Fixed crash problems with the bots in the 64-bit version of Skulltag. [Blzut3, Torr Samaho]
  • Fixed error in SECTINFO parser where only one property could be set per map header. [Blzut3]
  • Fixed bots shoot behind them in 64-bit. [Blzut3]
  • Fixed: Under certain circumstance inactive SwitchableDecoration actors were treated as active on the clients. [Torr Samaho]
  • Fixed: In the first map of client side demos the player always started with the fist as ready weapon. [Torr Samaho]
  • Fixed: After a map change in client side demos the player possibly started with the wrong ready weapon. [Torr Samaho]
  • Fixed: The client didn't properly confirm the weapon change that happens when a Tome of Power expires. [Torr Samaho]
  • Fixed: If a client was given a health item, e.g. a stimpack, it always thought that item had the default amount, ignoring the amount specified. [Torr Samaho]
  • Fixed: Enter scripts of bots are never executed online. [Torr Samaho]
  • Fixed: If a non-spectator player spies through the eyes of someone else, weapon bob doesn't work. [Torr Samaho]
  • Fixed: BelphegorBall overrode the SpawnID of BaronBall. BelphegorBall now has SpawnID 222. [Torr Samaho]
  • Fixed: Clients tried to calculate the movement of the other players instead of only relying on the server to do this. The effects of this were nearly unnoticeable, but become apparent if used with the accurate ping code. [Torr Samaho]
  • Fixed: Bad things happened when the server used the CCMDs spectate or join. Now they simply are ignored when issued through the server console or RCON. [Torr Samaho]
  • Fixed: The client calculated falling damage on its own instead of relying on the server. This could cause sync issues where a client thought it's dead, when it wasn't. [Torr Samaho]
  • Fixed: Negative frag counts of teams are not displayed properly in the new fullscreen HUD if text scaling is deactivated. [Torr Samaho]
  • Fixed: If the client was instructed by the server to destroy an actor of type PlayerPawn, the client didn't erase the corresponding pointer to it in the player array. [Torr Samaho]
  • Fixed: Detection of the local IP under FreeBSD did not work properly. [Torr Samaho]
  • Fixed: If no useable network port was found, no proper error message was shown. [Torr Samaho]
  • Fixed: Random state jumps on player weapons weren't synchronized online at all. [Torr Samaho]
  • Fixed: A_PlaySoundEx didn't always work properly online. [Torr Samaho]
  • Fixed: Loading bot script lumps from PK3s/ZIPs didn't work. [Torr Samaho]
  • Fixed: Autoselecting a team wouldn't work properly if you were put in line. [Rivecoder]
  • Fixed: The code that enforces the name restrictions on player names under some circumstances led to escaped, incomplete color codes. [Torr Samaho]
  • Fixed: The DarkImp never used its melee attack. [Torr Samaho]
  • Fixed: ACS scripts using LocalAmbientSound could crash the server if a player left and rejoined while the script was running. [Torr Samaho]
  • Fixed: The mapinfo properties clipmidtextures, wrapmidtextures and checkswitchrange were lost after a map reset. [Torr Samaho]
  • Fixed the error handling when there are no more free network ids: The server now aborts the current game and restarts the map. In addition, the CCMD countactors is called to help analyzing the situation. In single player, there are no more error messages related to network ids. [Torr Samaho]
  • Fixed: The code to check the maximal allowed effective skin sprite width/height still checked some textures it shouldn't have checked. [Torr Samaho]
  • Fixed: SetLineTexture didn't work online if the desired texture name was "". [Torr Samaho, SuperGod]
  • Fixed: It was possible to join "NO TEAM" [Blzut3]
  • Fixed: Using changemap or nextmap after a map was aborted by a recoverable error caused Skulltag to crash. [Torr Samaho, SuperGod]
  • Improved the client side movement prediction of a monster with CANTLEAVEFLOORPIC if the the monster touches the boundary of the floorpic region. [Torr Samaho]
  • Fixed: After changing the gamemode in the general settings window of the Windows serverconsole, the map restart dialog wasn't always shown. [Torr Samaho, SuperGod]
  • Fixed: The RCON utility did not work with Linux servers. [Blzut3, Rivecoder]
  • Fixed: If the main game thread froze, the server close button wouldn't do anything. [Rivecoder]
  • Fixed: The Windows welcome screen didn't take into account the gl_nogl CVAR setting. [Torr Samaho]
  • Fixed: Monsters using A_Recoil to move suffered from severe sync issues. [Torr Samaho]
  • Fixed: Clients sometimes spawned 3D floors locally when they shouldn't or didn't spawn them when they should. [Torr Samaho]
  • Fixed: Spectators in a teamgame mode were possibly assigned to spawn in a team spot of a team that doesn't have any such spots on the current map, causing the whole game to be aborted. Furthermore, spectators were never spawned on starts of the second team. [Torr Samaho, SuperGod]
  • Fixed: When SetPlayerProperty is used to remove PROP_INVULNERABILITY from a player, that player's body is still rendered with the invulnerability color map. [Torr Samaho]
  • Fixed: The CCMD pings didn't display the correct ping values. [Torr Samaho, SuperGod]
  • Fixed: Domination didn't show the score on the status bar. [Blzut3]
  • Fixed: When respawning online in a cooperative game mode after selecting a different player class, a player keeps the old inventory (if the dmflags say so) instead of getting a completely fresh inventory based on the new player class selected. [Torr Samaho]
  • Fixed: In lms/teamlms players possibly got weapons that should have been filtered out by the game actor property. [Torr Samaho, SuperGod]
  • Fixed: When a player left the game online (either by disconnecting of by changing to a spectator) his running scripts were not terminated. [Torr Samaho]
  • Fixed: The internal server browser didn't understand the "You are banned" response from the master server. [Torr Samaho]
  • Fixed: The CCMD playerinfo crashed when an invalid player number was used as argument. Furthermore, fixed the spacing and the wrongly displayed special character in the SwitchOnPickup line. [Torr Samaho]
  • Fixed: The jump sound of the local player stutters online. [Torr Samaho]
  • Fixed: After a map change with intermission online, the console player body lost any non default flags on the client (e.g. NOGRAVITY and FLY when the player had the fly cheat). [Torr Samaho]
  • Fixed: If SetActorProperty was used to set the APROP_Health property of a player online, only the client directly affected by the health change was informed about the changed property. [Torr Samaho]
  • Fixed: A client could be wrongly kicked for level authentication failure, if two (or more) map changes happen too quickly in a row. [Torr Samaho]
  • Fixed: Items that used certain code pointers (e.g. A_GiveInventory) during the first tic of their Pickup state didn't work properly online if used as start items of a player. [Torr Samaho]
  • Fixed: Newly connecting clients were not informed about the team scores in team possession and domination. Furthermore, they were not informed about the individual player frags in game modes where the CVAR teamgame is true. [Torr Samaho, Blzut3]
  • Fixed: Things removed by A_FadeOut are not restored when a map resets. [Torr Samaho]
  • Fixed: Friendly monsters possibly chased spectators when using A_Wander. [Torr Samaho]
  • Fixed: After a map reset online the sector special denoting whether a secret sector was already revealed was not reset on the clients. [Torr Samaho, SuperGod]
  • Fixed: After a map reset, sectors manipulated by Floor_Waggle or Ceiling_Waggle are not properly reset to their initial position. [Torr Samaho, SuperGod]
  • Fixed: Skulltag froze on startup when encountering a non empty SKININFO lump that doesn't have at least one bracket pair or that has an incomplete bracket pair. [Torr Samaho]
  • Fixed: Newly connecting clients are not informed about the current health or ammo of the players already in the game. [Torr Samaho]
  • Fixed some player state sync problems online, e.g. a client possibly put a player body into the missile state though it should be in the pain state. [Torr Samaho]
  • Fixed problems with campaigns on maps with an 8 character name. [Torr Samaho]
  • Fixed: The botskillpicname sprite in a botepisode menu was not centered correctly when it was a scaled graphic. [Torr Samaho]
  • Fixed: When the CVAR screenshot_dir is empty under Linux, Skulltag tries to put screenshots in ~/.zdoom/screenshots/ instead of ~/.skulltag/screenshots/. [Torr Samaho]
  • Fixed: Some crashes that happened when a player got / had an armor with an invalid inventory icon. [Torr Samaho]
  • Fixed: The game crashes, when you exit the game in single player while spying through the eyes of a bot. [Torr Samaho]
  • Fixed: When the TID of an actor is changed online on the server by Thing_ChangeTID, the clients connected are not informed about the TID change. [Torr Samaho]
  • Fixed: The rain spawned by SkullRodPowered online is translated according to the translation of player 1 and not the player that fired the weapon. [Torr Samaho]
  • Fixed: When using sv_awarddamageinsteadkills 1 in survival / survival invasion, the player scores are not reset when the map is reset. [Torr Samaho]
  • Fixed: Map spawned actors that use certain kind of code pointers in their spawn state (e.g. A_SpawnItemEx) possibly were not properly reset during a map reset. [Torr Samaho]
  • Fixed: Spectators could trigger hit floor/ceiling sector actions offline. [Torr Samaho]
  • Fixed: If you are spying someone online while the spied one is turning into a spectator, your eyes return to your body, but your status bar keeps being locked to the player you spied. [Torr Samaho]
  • Hopefully fixed: When a player dies and turns into a dead spectator (e.g. in survival/survival invasion/(T)LMS), the spectator body possibly gets stuck. [Torr Samaho]
  • Fixed: In cooperative game modes, ArtiTeleport only works properly for players that have designated starts on the current map. [Torr Samaho]
  • Fixed: If you are spying someone online in survival and the spied one dies, your eyes return to your body even if the died player still has lives left. [Torr Samaho]
  • Increased Software's freelook to +-56 degrees (in otherwords you can now look up as much as you could down). This is done to reduce the advantage of OpenGL. The old limit can be restored with the new CVAR cl_oldfreelooklimit (default false). [Blzut3, Torr Samaho]
  • Disabled screen wipes on the clients, since they cause more harm than good there. [Torr Samaho]
  • The SECTINFO parser supports use with the LANGUAGE lump to allow translatable locations. [Blzut3]
  • Merged S_SKIN and SKININFO. [Blzut3, Torr Samaho]
  • The Windows server now runs on above-normal priority. [Torr Samaho, SuperGod]
  • The server now reports the full version (including the revision number) over the launcher protocol. [Torr Samaho, SuperGod]
  • The player name restrictions are now also applied to the CVAR name itself, not only to the actually used netname value. [Torr Samaho]
  • The "kill monsters" cheat can now be used by the server (independent of the sv_cheats setting). [Torr Samaho, SuperGod]
  • To restore compatibility with ZDoom, ACS scripts with the NET flag are not treated to be client side anymore. The new compatflag "net scripts are client side", controlled by the new CVAR compat_netscriptsareclientside, allows to restore the old Skulltag behavior. After changing the flag, the map should be restarted. [Torr Samaho]
  • The code to check the maximal allowed effective skin sprite width/height now reports the offending sprite names in case the allowed dimensions are exceeded. [Torr Samaho]
  • Going to intermission now automatically stops any active vote. [Torr Samaho, SuperGod]
  • If a client pukes an ACS script with the NET flag, it now requests the server to run the script instead of silently running it client side on its own. If you want the script to be run client side, either give it the CLIENTSIDE flag or use compat_netscriptsareclientside. [Torr Samaho]
  • For security reasons, aliases can't be called by ConsoleCommand anymore. [Torr Samaho]
  • The Linux server console now flushes the output buffer. This allows other programs, such as Doomseeker, to easily capture the standard input and output. [Blzut3]
  • If cheats are disabled, clients are not allowed to use the CCMD testfade anymore. [Torr Samaho, SuperGod]
  • Spectators don't get the default inventory anymore when initially spawned. This is now consistent with the fact that players who turn to spectators after already being in the game lose all their inventory. [Torr Samaho]
  • Spectators are now always allowed to use freelook. [SuperGod, Torr Samaho]
  • Removed Skulltag's custom player corpse queue, instead the original ZDoom system is used now. Because of this the CVAR cl_maxcorpses is no longer available (as in ZDoom, the corpse queue size is now fixed to 32). This change should resolve the problems that player corpses change their color seemingly randomly. It also fixes the problems that could occur if a client uses a smaller cl_maxcorpses value than the server. Unfortunately, due to a GZDoom bug, this only fixes the color problems in the software renderer. [Torr Samaho]
  • skulltag_data.pk3 is now loaded instead of skulltag.wad. If skulltag_data.pk3 is not found, Skulltag tries to load skulltag.wad. [Torr Samaho]
  • A player whose IP is on the admin list can't be targeted by a kickvote anymore. [Torr Samaho]
  • The CVAR name can't exceed 31 characters (the netname length limit) anymore. [Torr Samaho]
  • In true single player mode (i.e. offline and with no multiplayer emulation) if there is no custom F1 textures defined via MAPINFO for the current map, the standard help screen is shown instead of Skulltag's game-sensitive F1 help screens. [Torr Samaho]
  • When a player starts chat spamming, he is now muted instead of kicked. [Rivecoder]

v0.97d5 security update 1

  • Extended the server side client command protection to protect from commands the client is allowed to use often, but that still can be abused for a DOS attack. If a client floods the server with such commands (more than 100 in 10 seconds), the client is kicked and banned for 10 minutes. Commands of this type include toggling the console, toggling chat status and taunting. [Torr Samaho, SuperGod]

v0.97d5

  • Added server side client command protection. If a client floods the server with protected commands (more than 6 in 60 seconds), the client is kicked and banned for 10 minutes. [Torr Samaho, SuperGod]
  • Fixed: Certain kinds of chat messages that only consist of color codes and white spaces wiped out all other messages currently on the screen. [Torr Samaho, SuperGod]
  • Fixed: Parsing ban, white or admin list under Linux could crash. [Torr Samaho]
  • The server doesn't relay chat messages that only consist of color codes and white spaces anymore. [Torr Samaho, SuperGod]

v0.97d4

  • Extended the authentication mechanism for non-map related lumps to check all lumps included by DECORATE lumps and all ACS library lumps included by LOADACS lumps. [Torr Samaho, SuperGod]
  • Fixed: The map authentication didn't cover the BEHAVIOR lump. [Torr Samaho, SuperGod]
  • The authentication mechanism for non-map related lumps now allows Freedoom/Doom clients to join Doom/Freedoom servers. [Torr Samaho]
  • Fixed: If a server was queried for unknown flags, these flags were not removed from the Flags field in the answer. [Torr Samaho]
  • Fixed: The clients crashed if the server sent them malformed packets. [Torr Samaho]

v0.97d3 security update 1

  • Fixed a critical security bug of the server. Thanks a lot to kgsws for submitting a detailed report on this issue along with an implementation of the exploit. [Torr Samaho]
  • Fixed: A malicious client could skip the map authentication. Thanks to kgsws for his detailed report on this. [Torr Samaho]
  • Fixed: The RCON utility crashed when somebody said a chat string with "%n" or similar printf compatible format parameters. Again thanks to kgsws for reporting. [Torr Samaho]
  • Changed: All line breaks are removed from the comment when an entry is added to the banlist or whitelist. Thanks to kgsws for pointing me to this. [Torr Samaho]

v0.97d3

  • Several improvements to the RCON utility: [Rivecoder]
    • Added support for favorites, with stored addresses and passwords.
    • Added a tray icon to which you can hide the window, and from which you can launch favorites.
    • Added file version metadata and an "about" screen.
    • Fixed: If you tried to reconnect to a nonexistent server, you wouldn't get 3 retries.
  • The authentication mechanism for non-map related lumps now gives detailed warnings on which auto-loaded files contain which protected lumps. [Torr Samaho]
  • Added new CVAR sv_suddendeath (default true). If set to false, CTF or Skulltag games don't go into sudden death mode when the time limit is hit and no team has more points than all other teams. Instead the game is considered to be a draw. [Torr Samaho]
  • Added new MAPINFO flag "islobby". If a duel is made on a map with this flag, the countdown and the map reset are skipped, e.g. useful for a map selection map like AlexMan's duel16. [Torr Samaho, SuperGod]
  • Fixed: The code to check the maximum allowed effective skin sprite width/height didn't work with UDMX under Linux. [Torr Samaho]
  • Fixed: For the purpose of sv_smartaim, players of different teams were considered to be friends in non-deathmatch based team game modes, e.g. CTF. [Torr Samaho, SuperGod]
  • Fixed: A client possibly crashed when the server instructed it to spawn blood of an actor the client doesn't know. [Torr Samaho]
  • Fixed: The network traffic needed by Sector_SetFade and Sector_SetColor increased linearly with the number of sectors that have the given tag instead of being constant. [Torr Samaho, SuperGod]
  • Fixed: If the model flag rotation-speed was used with a value other than 1, the rotation "skipped" every five seconds. [Torr Samaho]
  • Fixed: Friendly actors or actors using A_Chase or A_LookEx could cause the server to freeze completely when the first player connects or the last player disconnects. [Torr Samaho, SuperGod]
  • Fixed: The one and five minute announcer warnings didn't work at all for clients. [Karate Chris]
  • Fixed: The network traffic needed by SetLineTexture increased linearly with the number of lines that have the given identification number instead of being constant. [Torr Samaho, SuperGod]
  • Fixed: The ACS command SectorSound didn't work properly online if it was called by a line. [Torr Samaho, SuperGod]
  • Fixed: Under certain circumstance inactive BatSpawners were treated as active on the clients. [Torr Samaho, SuperGod]
  • Fixed: The chat sound was played even when messages are disabled. [Torr Samaho, SuperGod]
  • Fixed: Unfinished client connections to the server didn't timeout properly. [Torr Samaho, SuperGod]
  • Fixed: Teleport_EndGame caused the server to get stuck. Nevertheless, end sequences are not supported online. They are just skipped. [Torr Samaho, SuperGod]
  • Fixed: The CCMDs dumpmap, initpolymosttest, quickload, quicksave, select, slot, togglemap and vid_setmode caused the server to crash instead of being ignored. [Torr Samaho]
  • Fixed: When the server changed the map while a newly connected client was still loading the map, this client didn't get informed about the map change causing severe sync issues. [Torr Samaho, SuperGod]
  • Fixed: If you died in co-op and somebody else ended the map before you respawned, you would start the next map with only default inventory, no matter what dmflags was set to. (ported from ZDoom revision 691). [Torr Samaho]
  • Fixed: Under rare circumstances a client could crash while connecting. [Torr Samaho, SuperGod]
  • Fixed: Some kind of puffs were not spawned in their crash or melee state on the clients online. [Torr Samaho, SuperGod]
  • Fixed: Sounds of puffs in the melee or crash state were not played on the clients online. [Torr Samaho, SuperGod]
  • Fixed: Projectiles killing a player, never entered their Crash or XDeath state. [Torr Samaho]
  • There is now a 10 second time limit on joining. [Torr Samaho, SuperGod]
  • There is now a 30 second time limit on name changes for clients. [Torr Samaho, SuperGod]
  • CVAR timelimit now also applies to cooperative game modes. [Torr Samaho, SuperGod]
  • Further tuned the UPnP code to make it compatible with more routers. [Torr Samaho]

v0.97d3 RC2

  • Fixed: When using the CCMD kill in the console, the "in console" icon over the player's head was not removed. [Torr Samaho]
  • Fixed: Detection of the local IP under Linux did not work properly. [Torr Samaho]
  • Fixed: The ScaleNx code messed up camera textures. [Torr Samaho]
  • Fixed some seemingly random problems occurring to clients in CTF or Skulltag games. [Torr Samaho]
  • Fixed an exploit that allowed to crash servers. Kudos to kgsws for submitting a detailed report on this issue. [Torr Samaho]
  • Fixed: Seemingly randomly clients completely froze in CTF / Skulltag. [Torr Samaho]
  • Changed: Players are now notified that they can only pick up a team's flag if there are people on that team. [Torr Samaho]
  • Changed the SSDP packet the server sends to find the UPnP root device. This should make the UPnP support compatible with more routers. [Torr Samaho]

v0.97d3 RC1

  • Added temporary bans! [Rivecoder]
  • Added full TEAMINFO support across all game modes. [Karate Chris, Torr Samaho]
  • Optimized the actor spawning code. The name of the actors used to be sent across the network, but now only a 'short' is sent. [Karate Chris, Torr Samaho]
  • Added a custom implementation of the Scale2x/3x/4x algorithm as proposed in http://scale2x.sourceforge.net/ to the OpenGL renderer. This should get rid of the blurriness caused by OpenGL filtering and is controlled by the new CVAR gl_texture_hqresize, which defaults to 0. Textures/sprites whose width or height exceeds the new CVAR gl_texture_hqresize_maxinputsize (default 512) are not upsampled. The new CVAR gl_texture_hqresize_target (default 0) controls whether everything should be upsampled (value 0) or sprites and fonts only (value 1). [Torr Samaho]
    • gl_texture_hqresize == 0 : no scaling
    • gl_texture_hqresize == 1 : Scale2x algorithm
    • gl_texture_hqresize == 2 : Scale3x algorithm
    • gl_texture_hqresize == 3 : Scale4x algorithm
  • Added UPnP support (invoked by the command line parameter "-upnp"). If used, the server tries to automatically add a port mapping on the router that connects the server to the internet. The external port of the mapping can be overridden by #n, if Skulltag is invoked with "-upnp #n". [Torr Samaho]
  • Added medal families: "higher" medals, such as incredible, now immediately replace lower medals, such as excellent. This means that when on a spree, you can go right from excellent to incredible, accuracy to precision, impressive to most impressive, and so on without waiting for the lower medal to slide off. Overall this makes the queue run a lot faster, especially if you have a large backlog of medals. [Rivecoder]
  • Added an "in console" icon that's shown above a player's head when he's in the menu or console. [Rivecoder, Torr Samaho]
  • The five/one minute warning announcer sounds are now played. [Rivecoder]
  • Added chat substitution inspired by ZDoom. [Karate Chris]
  • Added a chat sound for Strife. [Karate Chris]
  • Added a 'singleplayer' console command, complimentary to the 'multiplayer' / 'netgame' console command. [Karate Chris]
  • Added CKeen's submission for an updated Italian language file. [Karate Chris]
  • Significantly reduced the net traffic used by P_MoveThing, e.g. used by SetActorPosition. [Torr Samaho]
  • Added basic SECTINFO support, currently only displayed in coop info. The SECTINFO parser supports use with the LANGUAGE lump to allow translatable locations. [Blzut3]
  • Added Domination as a built in game mode. [Blzut3, Torr Samaho]
  • Added new actor property "limitedtoteam", currently only has any effect when applied to a player class: When a player joins a team with a player class that is limited to be used only by another team, the player is immediately respawned with the first class that is open to the team just joined. [Torr Samaho]
  • Improved Skulltag's response to DOS attacks. Players will be able to keep on playing even if the server is being massively attacked (by several hundred computers or more). In that case, Skulltag will shut off all new connections until the attack subsides. [Rivecoder]
  • Added new team class selection menu: When joining a team from the team selection menu and more than one player class is available, there now is a menu that lets you select among the available classes (respects limitedtoteam). [Torr Samaho]
  • Added new dmflag "award damage dealt instead of kills", controlled by the new CVAR sv_awarddamageinsteadkills. If enabled, a player gets one point per 100 damage dealt and doesn't get any extra points for killing monsters. The scaling is done, so that players don't get outrageous amounts of points. Internally no rounding is done, so you'll get your points no matter if you dealt the damage in one or in several attacks. The flag works in all gamemodes, where kills are awarded (coop, survival, invasion). [Torr Samaho]
  • Added NOINTERACTION flag which completely disables all physics related code for any actor with this flag. Mostly useful for particle effects where the actors just move a certain distance and then disappear. (ported from ZDoom revision 876). [Torr Samaho]
  • Added a new entry to the HUD options menu to toggle cl_drawcoopinfo. [Torr Samaho]
  • Added new DECORATE actor flag CLIENTSIDEONLY. The server doesn't spawn such actors, the clients spawn them on their own. Therefore, they never should need any network bandwidth. Only use it on actors that don't affect the game in any way (visuals aside) and only use it, if you know what you are doing! [Torr Samaho]
  • Added new dmflag "force alpha", controlled by the new CVAR sv_forcealpha. If this is enabled, clients are enforced to display alpha, i.e. render as if r_drawtrans == 1. [Torr Samaho]
  • Added the cvar sv_enforcemasterbanlist; if true, the server enforces the master server's banlist. This is totally optional and is provided as a convenience to the server hoster and Skulltag staff. [Rivecoder]
  • Added new command ClearBots to BOTINFO (has to be used outside the braces), that clears all previously defined bots (including Skulltag's hardcoded bots). [Torr Samaho]
  • Banned clients are now told the reason for their ban. [Rivecoder]
  • Added new DECORATE weapon flag NOAUTOAIM. Weapons with this flag behave as if CVAR autoaim was 0 (as long as the level allows freelook). [Torr Samaho]
  • Added new compatflag "no crosshair", controlled by the new CVAR compat_nocrosshair. If this is enabled, clients are not allowed to use a crosshair. [Torr Samaho, SuperGod]
  • Added new compatflag "old weapon switch", controlled by the new CVAR compat_oldweaponswitch. If this is enabled, players always switch weapons on pickup (as in vanilla Doom). [Torr Samaho, SuperGod]
  • Fixed a positioning bug with rank/spread on the classic HUD when st_scale was off. [Rivecoder]
  • Fixed: the 'ColorSetter' and 'FadeSetter' actors were broken online. [Karate Chris]
  • Fixed: SKININFO skins couldn't use sounds from the Sounds subdirectory of PK3s/ZIPs. [Torr Samaho]
  • Fixed: Save games were missing the number of remaining Archviles in Invasion. [Torr Samaho]
  • Fixed: The Logitech G15 code possibly caused a crash after a map change. [Torr Samaho]
  • Fixed: If a player is respawned online with a different player class than before, neither the skin nor the translation of this player is adjusted to the new class on the clients. [Torr Samaho]
  • Fixed: A client entering a LMS/TeamLMS server crashes, if the wads running on the server give the player no starting weapon at all. [Torr Samaho]
  • Fixed: The server statistics for total data transfer in and out overflowed at 2 gigabyte. Now no overflow should occur before 16 exabyte of traffic are reached. [Torr Samaho]
  • Fixed: If a player disconnected or changed to a spectator while being morphed, various problems occurred. [Torr Samaho]
  • Fixed: If a player is killed online, its death view doesn't follow the killer. [Torr Samaho]
  • Fixed: If a player turns into a spectator, the currently active sounds associated to it are not stopped. [Torr Samaho]
  • Fixed: Using weapnext or weapprev while recording a single player demo crashed the game. Nevertheless, single player demos are not supported and will go out of sync quickly. Use client demos instead. [Torr Samaho]
  • Fixed: Some sight check related problems in A_DoChase occurred in games with more than one player. Offline this caused monsters to move strangely, online this caused monster movement sync issues. [Torr Samaho]
  • Fixed: Spectators could trigger sector transitions offline. [Torr Samaho]
  • Fixed: The scoreboard of the win32 server console is not updated when changing to intermission. [Torr Samaho]
  • Fixed: The game crashed while spawning a player in certain game modes (e.g. lms), when certain inventory items (e.g. weapons) were replaced by actors that are not inventory items. [Torr Samaho]
  • Fixed: When entering the name of the save game in the save menu, the underscore denoting the cursor position is possibly displayed too far to the right. [Torr Samaho]
  • Fixed: The points of the teams in team possession are not displayed on the new fullscreen HUD if text scaling is activated. [Torr Samaho]
  • Fixed: A single malformed packet could possibly crash any client. [Torr Samaho, SuperGod]
  • Fixed: Under rare circumstances the server crashed when creating a FlashFader. [Torr Samaho, SuperGod]
  • Fixed: If an actor is spawned client side with A_SpawnItemEx, A_SpawnItemEx calls without the client side flag made by this actor don't spawn anything at all. [Torr Samaho]
  • Fixed: Bots were not affected by PROP_FROZEN or PROP_TOTALLYFROZEN. [Torr Samaho]
  • Fixed: Player names ending with "\c" caused various glitches. [Torr Samaho]
  • Fixed: The ACS function CreateTranslation with syntax "a:b=[red1,green1,blue1]:[red2,green2,blue2]" didn't work properly online. [Torr Samaho]
  • Fixed: The code to check the maximum allowed effective skin sprite width/height checked some textures it shouldn't have checked. [Torr Samaho]
  • Fixed: If a spectator that is waiting in line leaves the game, the join queue is not updated properly. [Torr Samaho]
  • Fixed: After a map change in CTF/ST to a map without a team selection room, the players who were waiting in line in the previous map were not removed from their join queue positions. [Torr Samaho]
  • Fixed: Under some conditions one could exit a map during the countdown in survival, e.g. with line special LS_Teleport_NewMap. Now players trying to exit during the countdown are killed. [Torr Samaho]
  • Fixed: Several code pointers didn't work properly online in the death state of a player, e.g. A_PlaySound. [Torr Samaho]
  • Fixed: The ACS command FadeTo didn't work online if the last argument (seconds) was 0.0. [Torr Samaho]
  • Fixed: Under certain conditions the CMPGNINF parser didn't accept proper botteam entries. [Torr Samaho]
  • Fixed: Player classes using certain code pointers caused "ghost" players to appear under certain conditions. For example this affected Sjas in GvH. [Torr Samaho]
  • Fixed: Under certain circumstances changing the CVAR playerclass messed up the ColorRange property of the console player skin (fixed itself upon respawning). [Torr Samaho]
  • Removed the default values for sv_motd, sv_website, and sv_hostemail. sv_motd would show the wrong version over time, and the others should be blank if not set by the server hoster. [Rivecoder]
  • Fixed: Online a player and all its corpses used the same translation, i.e. if a player changed his color all corpses of this player changed their color too. [Torr Samaho]
  • Fixed: The new fullscreen HUD doesn't respect the maxhealth property of the current player class. [Torr Samaho]
  • Fixed: Instagib ignored the ammo types of Railgun replacements. [Blzut3]
  • Fixed: After changing the map online or a map reset, the game possibly crashes when using cl_stfullscreenhud == false. [Torr Samaho]
  • Fixed: ParticleFountain doesn't work properly online for the first player that connects to a server. [Torr Samaho]
  • Fixed: Things like DeadDemon are not spawned on the clients online. [Torr Samaho]
  • Fixed: Legacy-style 3D floors/liquid linetypes didn't work for Doom-format maps. [Torr Samaho]
  • Changed up the display of medals when you have the key down. Higher medals are now on the right, opposite their subordinates. [Rivecoder]
  • Each player's "ready to go on" status, shown at the intermission, can now only be turned on. Hopefully, this will help clear up what this command is for and prevent rapid toggling of it. [Rivecoder]
  • Rank/Spread is no longer drawn if there's only one player. [Rivecoder]
  • Armor is no longer drawn on the new HUD if you don't have any. [Rivecoder]
  • You can now join the game while spectating during intermission. [Rivecoder]
  • You no longer have to wait 10 seconds to change your team during the team last man standing countdown. [Karate Chris]
  • Changed: The FLOATBOB flag is not applied to spectators anymore, no matter if the corresponding player class has it or not. Furthermore, spectators now always have flags3 = MF3_NOBLOCKMONST, flags4 = 0 and flags5 = 0. [Torr Samaho]
  • Changed: Spectators now always have forwardmove 1, sidemove 1 and viewheight 41 (default values from PlayerPawn), no matter how the values of the corresponding player class are. [Torr Samaho]
  • Changed: Spectators are fixed in their spawn state and don't execute any code pointers. [Torr Samaho]
  • Changed: If a player selects the "Random" player class, a new class is selected randomly every time the player respawns. [Torr Samaho]
  • Changed: In a single player campaign with a team based game mode, you can now rejoin after spectating with the in game join team menu, if you select the team the campaign wants you to have. [Torr Samaho]
  • Hard-coded bots have been exported to BOTINFO. [Blzut3]
  • Changed: If ArtiTeleport is used in a team game and the user is on a team with valid starts on the current map, the user is now teleported to a random team start of the user's team. [Torr Samaho]
  • Changed: GrenadeLauncher doesn't auto aim anymore (it now has the NOAUTOAIM weapon flag). [Torr Samaho]

v0.97d2

  • Fixed: The sv_maxclientsperip code didn't take into account timeouts of non finished connection attempts. [Torr Samaho]
  • Fixed: the pissed of player face should not work in spectator mode. [Karate Chris]
  • Fixed: In game modes that reset, P_DoCrunch and A_BarrelDestroy gave the actor to be destroyed the MF_NOBLOCKMAP flag without unlinking it from the blockmap by calling UnlinkFromWorld(). This possibly caused some strange survival crashes. [Torr Samaho, SuperGod]
  • Fixed: Monsters that are alive when a countdown is started in Invasion are not handled properly causing online sync problems. Clients wrongly deleted friendly monsters locally two waves after they have been spawned. Furthermore, the server deleted living hostile monsters that didn't come from an Invasion spawner without notifying the clients about this. Now all living hostile monsters (that can only exist because of bugs or cheats anyway) are deleted when the countdown is started. [Torr Samaho, SuperGod]
  • Fixed: In game modes that reset, the server tells newly connecting clients to spawn certain kind of actors even though they are already destroyed, e.g. exploded ExplosiveBarrels. [Torr Samaho, SuperGod]
  • Fixed: When a player respawns while a time freezer owned by another player is active, the respawned player can't move anymore as long as the freezer is active. [Torr Samaho, SuperGod]
  • Fixed: In cooperative game modes, when the players travel from any map to a map with fewer player starts than players, some of them may end up in a zombie like state. [Torr Samaho, SuperGod]
  • Fixed: When an Archvile raises a monster online, on the clients the total monsters counter is increased by two instead of one. [Torr Samaho, SuperGod]
  • Fixed: If an invasion monster spawner is hijacked to spawn something that is not a monster, the remaining monster count is not adapted accordingly. [Torr Samaho]
  • Fixed: In game modes that reset, when an actor is hidden instead of being destroyed, P_DelSector_List() is not called. This caused some strange survival crashes. [Torr Samaho, SuperGod]
  • Fixed: If there is only one player class, the client tells the server that it's going to send the name of it's class (on connect and when changing the CVAR playerclass), but didn't actually do so. This led to network packet parsing errors on the server. [Torr Samaho, SuperGod]
  • Fixed: In game modes that reset when using COMPATF_LIMITPAIN, hidden lost souls were counted to the number of lost souls when checking if a pain elemental may spawn a new lost soul. [Torr Samaho, SuperGod]
  • Fixed: When a client is kicked because of user info change flood, the server doesn't finish parsing the user info packet, resulting in network packet parsing errors. [Torr Samaho, SuperGod]
  • Fixed: The line special Ceiling_CrushStop doesn't work properly online, the crusher is stopped on the server but continues to move on the clients. [Torr Samaho, SuperGod]
  • Fixed: The server doesn't inform the clients about the arguments of the SoundEnvironment actor. This prevented reverbs from working online. [Torr Samaho, SuperGod]
  • Fixed: A_PlaySound and similar functions didn't work online on actors that don't have a net id, e.g. Blood and derived actors. [Torr Samaho, SuperGod]
  • Fixed: A minor grammar error in the possession scoreboard code. [Torr Samaho]
  • Changed: Instead of crashing the game when being called twice, AActor::UnlinkFromWorld() now just gives a warning to signal that a bug in the code was encountered. [Torr Samaho]
  • Changed: Calling a vote during intermission is not allowed anymore. [Torr Samaho, SuperGod]
  • Changed: Clients can't set the CVAR turbo higher than 100 anymore. [Torr Samaho, SuperGod]
  • Changed: For consistency with the handling of the CVARs dmflags and dmflags2, the value of the CVAR compatflags is not archived in the ini any more. [Torr Samaho, SuperGod]

v0.97d2 RC6

  • Optimized the monster movement code. Under some circumstances this drastically decreases network traffic. Compare map09 of dr2008v2.zip to see an example, where a lot of bandwidth is saved. Special thanks to SuperGod for finding a way to reproduce the excessive net traffic. Without it, this problem would still silently be wasting net traffic. [Torr Samaho]
  • Added new CVAR sv_nodrop. If set to true on a server, clients can't use the drop CCMD online. [Torr Samaho]
  • Added constant SXF_CLIENTSIDE for the "client side spawn" option of A_SpawnItemEx. [Torr Samaho]
  • Fixed: The reflection rune's obituary would read "[victim] was killed via [victim]'s reflection rune". [Rivecoder]
  • Fixed: Joining a survival invasion server with "start as spectator" off would make you join immediately. [Rivecoder]
  • Fixed: Clients sometimes accidentally switch the weapon of one of the other players locally. [Torr Samaho]
  • Fixed a typo in the callvote code. [Rivecoder]
  • Fixed a typo in the BFG10k's obituary. [Rivecoder]
  • Fixed the fake players exploit; introduced sv_maxclientsperip, which defaults to 2. [Rivecoder]
  • Fixed an exploit in the name code which allowed invisible names. [Rivecoder]
  • Fixed: Clients may completely freeze, i.e. get stuck in an infinite loop, when handling actors with a looping death state that loops over multiple frames, but doesn't loop back to the beginning of the death state. [Torr Samaho]
  • Fixed: The first player waiting in line in a survival invasion game joins the game when one of the in game players leave. [Torr Samaho]
  • Fixed: After using the CCMD map on the server, clients may accidentally be blocked for 10 seconds before they can enter the new map. [Torr Samaho]
  • Fixed: Clients are not informed if the current sky differs from the default map sky when connecting to a server. [Torr Samaho]
  • Fixed: In competitive game modes with sv_noexit == true, players are not killed when trying to exit a map while being in a sector with sector special 75 (dDamage_End). This happened for example in exec.wad on map09. [Torr Samaho]
  • Fixed online monster sync problems involving the MF2_BLASTED flag. Among others, this affected A_RadiusThrust. [Torr Samaho]
  • Fixed: The 'GetPlayerInfo' ACS command didn't return the correct team. [Karate Chris]
  • Fixed: Maps using ACS possibly crash during a map reset. Kudos to SuperGod for finding a way to reproduce this nasty bug! [Torr Samaho]
  • Fixed: When a client disconnects from a server, then changes its name in the console, and then reconnects, the server is not informed about the name change. [Torr Samaho]
  • Fixed: A single malformed packet could crash any server. Again thanks to Luigi Auriemma for a detailed report on this issue. [Torr Samaho]
  • Fixed: Assigning a net id to a moving ceiling used much more CPU time than necessary. This caused certain wads to be displayed at less than 1 fps. [Torr Samaho, SuperGod]
  • Fixed some map change related crashes. [Torr Samaho]
  • Fixed: Thing_Hate caused serious monster position sync issues online. [Torr Samaho, SuperGod]
  • Fixed: Removing SectorAction and derived actors in game modes that reset, didn't remove those from the sector's list of actions. [Torr Samaho]
  • Changed: Clients are now always informed when other players are pressing any attack buttons. This is done in a way that doesn't increase net traffic at all and fixes several problems: [Torr Samaho]
    • Now fully fixed: Attack animations are not always displayed properly in demos if you are spying a player that you didn't spy when recording the demo.
    • When using coop spy, other players may get stuck in the attack state locally.
  • Changed default value of the CVAR sv_showwarnings to false. Should only be turned on for debugging purposes. [Torr Samaho]
  • Increased the packet buffer size from 256 to 1024. Hopefully this reduces the chance of being forced to quit a network game due to packet loss. [Torr Samaho]
  • The maximum allowed effective skin sprite width/height is now limited corresponding to the width/radius of the player class the skin belongs to. This fixes an exploit of the skin dir. [Torr Samaho]
  • Added the ALLOWCLIENTSPAWN flag to the DynamicLight actor. This fixes that map spawned dynamic lights are not working online, but comes with the drawbacks of ALLOWCLIENTSPAWN. [Torr Samaho, Karate Chris]
  • Renamed the Heretic spawner HexenGhostSpot to HereticGhostSpot. [Torr Samaho]

v0.97d2 RC3

  • Completely NEW and expanded encryption of the executable, so that hacking it is now even more difficult than before. [SuperGod]
  • Added support for OpenGL texture compression. Depending on the GPU capabilities up to four new texture formats (COMPR_RGBA, S3TC_DXT1, S3TC_DXT3, S3TC_DXT5) are selectable with gl_texture_format. [Torr Samaho]
  • Actor flag ALLOWCLIENTSPAWN is now available in DECORATE. The server doesn't tell clients to spawn actors with this flag, the clients spawn them on their own when loading the map. This is useful for decorations that will never be moved, removed, or changed in any way. Only use it, if you know what you are doing! [Torr Samaho]
  • Added CKeen's submission for an updated Italian language file. [Karate Chris]
  • Added new CVAR sv_pure (default true). If set to false, the extended authentication mechanism for non-map related lumps is disabled. This is mainly intended for testing purposes and LAN play, official servers will always set sv_pure to true. [Torr Samaho]
  • Added UDP server console flood protection and improved the messages generated by unexpected challenges. [Torr Samaho]
  • Added a workaround that allows to inform 97d-beta4.3 (or earlier) clients trying to connect to a 97d2 (or newer) server that there version is outdated. [Torr Samaho]
  • Fixed: The activator of the alarm should receive a message. [Karate Chris]
  • Fixed: The Sigil was broken client side. [Karate Chris]
  • Fixed: Strife's AlienSpectre, EntityBoss, Inquisitor, LoreMaster, Programmer's lightning, Sentinel and Templar didn't work properly online. [Karate Chris]
  • Fixed: Dead spectators aren't revived after a map change in survival invasion. [Torr Samaho]
  • Fixed: A single malformed packet could be use to freeze a server for about 5 seconds. Kudos to Luigi Auriemma for submitting a detailed report on this issue. [Torr Samaho]
  • Fixed: Coop info possibly covers the keys displayed in the fullscreen HUD. [Torr Samaho]
  • Fixed: Players may get stuck after a map reset in invasion. [Torr Samaho]
  • Fixed: The kill count is not reseted after a map reset in invasion. [Torr Samaho]
  • Changed: Changes to the CVAR sv_maxlives are now applied on the next map change (like done with sv_cheats). This fixes the problems that previously occurred when changing sv_maxlives during a game. [Torr Samaho]

v0.97d2 RC2

  • Added basic HUD model support. [Torr Samaho]
  • Added survival invasion! In particular, added new CVAR sv_maxlives. This specifies how many times you are allowed to respawn in survival and invasion. sv_maxlives == 0 means no respawing in survival, but unlimited respawning in invasion. [Torr Samaho]
  • Added coop info display to show the status of the other players (health, armor, weapon, ammo) in cooperative game modes. Can be toggled by the new CVAR cl_drawcoopinfo. Inspired by the Zalewa/SuperGod enhanced version of VoltlocK's Ally Display. [Torr Samaho]
  • Added double definition support for the old DECORATE standard. In this case, the new actors override the old ones. [Rivecoder]
  • Under Windows, choosing "browse servers" in the Multiplayer menu brings up a new menu, letting you choose between IDEse and the internal browser. Hopefully, this should prevent newbies getting stuck at the old browser. [Rivecoder]
  • Added the CVAR chat_sound. With it, you can turn chat sounds off (0), play the default (1), or the Doom 2 (2) or Doom 1 (3) sounds. [Rivecoder]
  • Added the dynamic light definitions for Strife made by Dark_Knight. [Torr Samaho]
  • The error message of the float parser under Linux now mentions the LANG enviroment variable as possible cause for the error. [Torr Samaho]
  • Added CVAR cl_allowmultipleannouncersounds (default true). If true, multiple announcer sounds can be played at once (like in 97D beta 4.3 and earlier), otherwise any announcer sound stops all previous announcers (like in 97D). [Torr Samaho]
  • Extended the authentication mechanism for non-map related lumps to get rid of more exploits. [Torr Samaho]
  • All the server side code that manipulates actors on the clients now checks for valid net ids. A warning is printed if it's not possible to manipulate an actor because of a missing net id. [Torr Samaho]
  • Added: sv_maxlives can now be configured from the "General settings" Windows server window. [Torr Samaho]
  • Added new CVAR sv_showwarnings (default true). If set to false, the new server side warning messages are suppressed. May be necessary for certain mods to prevent the warnings from flooding the log. [Torr Samaho]
  • Fixed: The 'summonfoe' console command didn't work online. [Karate Chris, Torr Samaho]
  • Fixed: Using the CCMD stat crashes the server. [Torr Samaho]
  • Fixed: A_Chase doesn't work properly online when a custom missile or melee state is specified as argument. [Torr Samaho]
  • Fixed: Summoning a monster that doesn't count as a kill with the CCMD summonfriend messed up the invasion monster count online. [Torr Samaho]
  • Fixed: If a spawn by A_SpawnItem or A_SpawnItemEx is blocked, the server still instructs the clients to spawn the thing, leading to a "ghost" actor on the clients. [Torr Samaho]
  • Partially fixed: Attack animations are not displayed in demos if you are spying a player that you didn't spy when recording the demo. By design this has display problems with weapons using A_ReFire. [Torr Samaho]
  • Fixed: The summon commands should inform a client when an invalid class is specified. [Karate Chris]
  • Fixed: The Cleric's staff didn't animate correctly when draining health. [Karate Chris]
  • Fixed: 'A_SetBlend' didn't work online. [Karate Chris]
  • Fixed: Heretic survival crashes within seconds after the countdown ends. [Torr Samaho]
  • Fixed: SetFont() doesn't work properly online. [Torr Samaho]
  • Fixed: A_Mushroom possibly causes problems with the invasion monster count. [Torr Samaho]
  • Fixed: Level spawned actors revived by an Archvile aren't restored by GAME_ResetMap(). [Torr Samaho]
  • Fixed: Level spawned actors that have been respawned in nightmare aren't restored by GAME_ResetMap(). [Torr Samaho]
  • Fixed: Level spawned actors that have been removed by A_FreezeDeathChunks aren't restored by GAME_ResetMap(). [Torr Samaho]
  • Fixed: GAME_ResetMap() didn't properly restore the total number of monsters in case of monsters that were not spawned by the map and removed during the game, e.g. killed lost souls spawned by a pain elemental. [Torr Samaho]
  • Fixed: Enter scripts were run twice in all game modes that reset (expect for invasion). For example this broke the custom HUD of sp_usimp.pk3 in survival. [Torr Samaho]
  • Fixed: If the ACS function SetActorPitch was called on a server, the clients were not notified about the updated pitch. [Torr Samaho]
  • Fixed: No melee sound is played online by A_CustomComboAttack. [Torr Samaho]
  • Fixed: For some actors the server tried but failed to instruct the clients to set the actor to a certain frame. [Torr Samaho]
  • Fixed: A_Print crashes the server online. [Torr Samaho]
  • Fixed: When starting a new survival game offline, while one is currently in progress, you immediately get "mission failed". [Torr Samaho]
  • Fixed problems with A_Respawn online. [Torr Samaho]
  • Fixed: In coop games a client didn't keep track of the ammo of other players when they were firing / reloading their weapons. [Torr Samaho]
  • Changed: Spectators are now allowed to use chasecam in all game modes. [Torr Samaho]
  • Changed: When a jump is done online in A_JumpIfCloser, the server now synchronizes the actor position with the clients to reduce the sync issues caused by the client side monster movement. [Torr Samaho]
  • Dormant actors are no longer removed in Invasion countdowns. [Rivecoder]
  • Extended the 'sv_nocallvote' console variable. When 'sv_nocallvote' is at 0, all players can call votes, when it's at 1, no players can call votes, when it's at 2, only players in game can call votes. [Karate Chris]
  • Removed the tediously annoying crouching console variable. [Karate Chris]
  • Restored the plasma bump compat flag handling from the pre 97b era. This doesn't perfectly resemble the vanilla Doom behavior, but should be better than nothing. [Torr Samaho]
  • The IWAD is now displayed in the internal browser. [Karate Chris]

v0.97d

  • Added an authentication mechanism for several non-map related lumps to get rid of some exploits. [Torr Samaho]
  • Added flood protection to the drop/invdrop command. You can't use it online more than once per second anymore. [Torr Samaho]
  • Added CCMD kickfromgame_idx, works like kickfromgame but uses the player index instead of the name. [Torr Samaho]
  • Added new inventory flag FORCERESPAWNINSURVIVAL. Items with this flag are respawned in survival even if sv_itemrespawn is false. [Torr Samaho]
  • Fixed: Damaging a charging lost soul online leads to serious sync issues regarding the lost soul between client and server. [Torr Samaho]
  • Fixed a z position client/server sync issue of floating monsters. [Torr Samaho]
  • Fixed: Enter scripts are not executed in team games when a spectator joins a team. [Torr Samaho]
  • Fixed exploit: Dropping ammo at baby and nightmare skill levels would give you back more than you dropped (ported from ZDoom revision 708). [Torr Samaho]
  • The drop/invdrop command is not allowed online in non-cooperative game modes anymore. [Torr Samaho]
  • RadSuit now has the FORCERESPAWNINSURVIVAL inventory flag. This was necessary because some maps are nearly impossible to finish in survival with sv_itemrespawn == false. [Torr Samaho]

v0.97d RC10

  • Restored Windows 98/ME compatibility. [Torr Samaho, Rivecoder]
  • Added one missing dmflag2 and seven missing compatflags to the "Configure DMFlags" server window. [Torr Samaho]
  • Added CCMD addbanexemption to add entries to the whitelist. [Torr Samaho]
  • Added CCMDs delban and delbanexemption to remove entries from the banlist/whitelist. [Torr Samaho]
  • Added CCMD viewbanexemptionlist to print the whole whitelist. [Torr Samaho]
  • If (sv_banfilereparsetime > 0) the whitelist is now reparsed in addition to the banlist. This also applies to the CCMD reloadbans. [Torr Samaho]
  • Added admin list support. Clients with an IP on this list can now join even if the server is full. The new CVAR sv_adminlistfile specifies the filename of the list. [Torr Samaho]
  • Fixed: The red/blue team scores messages in CTF online are at the wrong position. [Torr Samaho]
  • Fixed: A successful kick vote doesn't kick the target. [Torr Samaho]
  • Fixed: A client with idmypos set to true crashes when connecting to a server. [Torr Samaho]
  • Fixed: In case cl_medals == true, carrier floating icons are not removed immediately after the carrier looses the item. [Torr Samaho]
  • Fixed: The new icon and medal hierarchy doesn't always prevent medals from overriding carrier icons. [Torr Samaho]
  • Fixed: The fraglimit code is executed on client and server, causing several problems. Among them is the incorrect number of wins display in duels online. [Torr Samaho]
  • Fixed: Toggling the "Lose half ammo (CO-OP)" box in the "Configure DMFlags" server window doesn't automatically update the dmflags value in the window. [Torr Samaho]
  • Fixed: Thing_Remove doesn't properly remove invasion spawners. [Torr Samaho]
  • Fixed: OPEN NET scripts are not executed on the clients online. [Torr Samaho]
  • Fixed: AActor::CopyFriendliness doesn't update the the invasion monster count. For example this fixes problems with friendly Painelementals in invasion. [Torr Samaho]
  • Moved "Lose powerups (CO-OP)" and "Lose half ammo (CO-OP)" boxes to the DMFlags section of the "Configure DMFlags" server window. [Torr Samaho]
  • Raised CLIENT_TIMEOUT from 25 to 40 seconds. This should fix the timeout problems after intermission in Heretic. [Torr Samaho]
  • Changed the default value of vid_renderer to 0 (software renderer) to reduce compatibility problems with systems that can't use the GL renderer. [Torr Samaho]
  • Increased the maximal number of servers that can be handled by the internal server browser from 256 to 512. [Torr Samaho]

v0.97d RC9

  • No more paper thin sprites: Added x/y axis billboard mode for sprite rendering! It is controlled by the new CVAR gl_billboard_mode, which defaults to 2. [Torr Samaho]
    • gl_billboard_mode == 1 : y axis billboard (the way GZDoom renders sprites)
    • gl_billboard_mode == 2 : x/y axis billboard (the mode countless of people have requested :D)
  • Added support for 3d floors in coop game modes, i.e. Coop, Survival and Invasion. [Torr Samaho]
  • Added custom states and custom damage types (ported the change from ZDoom revision 368-378). [Torr Samaho]
  • Added Linux OpenGL support! [Torr Samaho, Costja]
  • Completely revamped monster movement online! Monsters now move much more smoothly, and require far less bandwidth than before. [Carnevil]
  • Thoroughly updated Skulltag's ZDoom base to the latest ZDoom SVN repository revision (currently 622). [Torr Samaho 366-554+558-622, Carnevil 555-557]
  • Crash logs should finally work on all Windows machines. [Torr Samaho]
  • Added a completely new 97d announcer that was made by SuperGod in a professional sound studio based on the voice of Carnevil. [SuperGod, Aabra, Carnevil, Rivecoder]
  • Added new sprites for the Abaddon. [Jimmy91]
  • Upgraded the GZDoom renderer to 1.0.29! [Torr Samaho 1.0.25-1.0.26+1.0.28-1.0.29, Carnevil 1.0.27]
  • Added client-side scripts! Scripts with the NET tag are now purely executed on the client end. This reduces bandwidth usage, and allows things like custom HUD displays to work properly. [Carnevil]
  • Added Logitech G15 support! Skulltag now natively supports a (fairly basic) LCD applet which displays the HUD, console, and a few other things. [Rivecoder]
  • Added the dynamic light definitions for Heretic and Hexen from ZDoomGL. [Torr Samaho]
  • Added invasion spawners for Heretic! [Carnevil, Aabra, and Tun]
  • Added invasion spawners for Hexen! [Gez, Torr Samaho]
  • Enhanced the IWAD selection box, allowing users to see their version, select their IWAD, and set video settings. It also looks nicer. [Rivecoder]
  • Improved the revision display in the console. [Rivecoder]
  • Added the r_drawspectatingstring CVAR, which can be used to hide that message for screenshots or movies. [Rivecoder]
  • Skulltag can be build and run without FMOD now (without sound, of course). This makes it possible to build servers for systems that FMOD doesn't support, like FreeBSD. [Torr Samaho]
  • Added CVAR sv_markchatlines (default false). If set to true, all chat lines will be preceded by a string saying "CHAT " in the server console / logfile. This is to make the chat lines readily identifiable, necessary for MiX-MaN's IRC server control tool for example. [Torr Samaho]
  • Added Player.RunHealth property (ported the change from ZDoom revision 448). [Torr Samaho]
  • Server console: you can now kick, ban, and IP check directly from the main scoreboard. [Rivecoder]
  • Server console: when kicking or banning, reasons can now have spaces. [Rivecoder]
  • Server console: added a statusbar - you can now see your IP, Public/Private/LAN status, current map, and version. [Rivecoder]
  • Improved the display of the bottom string; 'x allies/opponent' display now reflects that of the player you're spying; added a few missing linebreaks. [Rivecoder]
  • Added a GTK+ version of the IWAD selection box (ported the change from ZDoom revision 451). [Torr Samaho]
  • Ported the updated startup screen code from GZDoom 1.0.24 to ST. This includes simulations of Heretic's, Hexen's and Strife's startup screen. [Torr Samaho]
  • Class selection screen is now shown when joining a multiplayer non Hexen, not team based game with more than one available player class. [Torr Samaho]
  • sv_banfile can now be a path, so that banfiles can be placed anywhere. [Rivecoder]
  • Added "Class" to the player setup menu. [Carnevil]
  • Ban reasons are read from the banfile now. [Torr Samaho]
  • Revamped the way the ban list is handled internally. This allows an unlimited number of bans and fixes a memory leak. [Torr Samaho]
  • Added basic inventory drawing support to the Skulltag Doom HUD (doesn't respect scaling yet). [Torr Samaho]
  • Revamped the way double defined actors are handled: If a definition of an already defined actor is encountered, "2" will be appended to the name and the new actor replaces to old one. This should give full compatibility with PWADs that use actors whose name conflict with Skulltag actors. [Torr Samaho]
  • If a replaced weapon is added to a slot with setslot, the replacement weapon will also be added to the slot. [Torr Samaho]
  • Added MD2/DMD/MD3 model frame interpolation, controlled by the the new CVAR gl_interpolate_model_frames. [Torr Samaho]
  • Added model skin color translation support. The skin texture may only use colors from the game palette, otherwise it won't work properly. [Torr Samaho]
  • Models respect the actor render style now, e.g. a model of a player with an invisibility sphere is rendered translucent. To reduce the problems caused by missing depth sorting, back face culling is used. This doesn't work if the model is not a closed surface. [Torr Samaho]
  • Added z-offset support to MODELDEF. [Torr Samaho]
  • Added flag ROTATING to MODELDEF. If this is set, the model constantly rotates like the weapon pickup models in Doomsday. [Torr Samaho]
  • Made the model rotation customizable: [Torr Samaho]
    • rotation-speed float: Specify the speed of the rotation
    • rotation-vector float float float: Specify the x, y and z component of the vector of the rotation
    • rotation-center float float float: Specify the x, y and z coordinate of the center of the rotation
    • (Defining rotation initializes the speed to 1, the vector to (0,1,0) and the center to (0,0,0))
  • Added flag IGNORETRANSLATION to MODELDEF. [Torr Samaho]
  • Added workaround to smooth the model interpolation of actors that use the same frame twice in a row. Most of the standard Doom monsters do this in their see state. Can be activated by the new model flag INTERPOLATEDOUBLEDFRAMES. [Torr Samaho]
  • Added flag PITCHFROMMOMENTUM to MODELDEF. If this is set, the pitch of a model is estimated from the momentum of the corresponding actor. For example this can be used to render the models of rockets fired with a vertical angle different from zero properly. [Torr Samaho]
  • Added flag NOINTERPOLATION to MODELDEF. If this is set, the model frame interpolation is deactivated for this actor. [Torr Samaho]
  • Added DECORATE flags FORCEYBILLBOARD and FORCEXYBILLBOARD. If set, the selected billboard mode is enforced (overriding the gl_billboard_mode setting) when the sprite of the actor is drawn. This only affects the OpenGL renderer. [Torr Samaho]
  • Added CCMD getIP for server admins, which can be used to the IP address of a player. [Rivecoder]
  • Added CCMD getIP_idx for server admins, uses indexes from playerinfo. [Rivecoder]
  • Added CCMD ban_idx for server admins, to ban by index. [Rivecoder]
  • When you run playerinfo from the server or RCON, player IPs (including port) are now displayed. [Rivecoder, Torr Samaho]
  • The compact vote screen now obeys text scaling and displays nicely after voting. [Rivecoder]
  • You can now see who voted for what on the scoreboard. [Rivecoder]
  • On the scoreboard, multiple icons can be shown next to players (bot, talking, ready, handicap, vote). [Rivecoder]
  • Crash logs can now be configured by the new CVAR crashlogs, which defaults to 1: [Torr Samaho]
    • crashlogs == 0 : crash logs are turned off (not recommended)
    • crashlogs == 1 : the standard crash dialog is shown
    • crashlogs == 2 : the crash report is automatically written to disk using an unused filename of type CrashReportXXX.zip in the directory controlled by the new CVAR crashlog_dir (very useful for server admins)
  • Added different particle drawing options to the GL renderer, controlled by the new CVAR gl_particles_style (default 2). [Torr Samaho]
    • gl_particles_style == 0 : square (the way GZDoom renders particles)
    • gl_particles_style == 1 : round
    • gl_particles_style == 2 : smooth
  • Added "give stdweapons" cheat that gives all weapons except for the Skulltag ones. Useful if you want to start a game in the middle of a Doom coop megawad for example. [Torr Samaho]
  • Added A_SpawnItemEx (ported the change from ZDoom revision 392+393+545 and made a few changes for the client/server architecture). [Torr Samaho]
  • Added a "client side spawn" option to A_SpawnItemEx. [Torr Samaho]
  • The "following" string is now drawn in that person's team color (if playing a teamgame). [Rivecoder]
  • Added customizable gravity per actor (ported the change from ZDoom revision 456 and added necessary netcode). [Torr Samaho]
  • Added VSpeed DECORATE property so that an actor can be given an initial vertical speed (ported the change from ZDoom revision 373). [Torr Samaho]
  • Added the possibility to build a server only binary that needs less depdendencies than the client. [Torr Samaho]
  • Skins that the server does not have can now be seen by all players who have them. [Carnevil]
  • Added disconnect scripts! They execute when a player leaves a game after being a non-spectating player. [Carnevil]
  • The "showmedals" key can now we used while playing back demos. [Carnevil]
  • Added the "stopdemo" command, which stops a client-side demo if one is playing. [Carnevil]
  • Any weapons given by default to a player when he spawns (such as the railgun in instagib) can now be replaced via DECORATE. [Carnevil]
  • Buckshot and instagib can now be set for campaigns. [Carnevil]
  • The "Held by:" and "Scored by:" messages now display in one flag CTF. [Carnevil]
  • Weapon flag NOLMS is now available in DECORATE. Weapons with this flag are not given to the player in LMS. [Torr Samaho]
  • Added whitelist support. IPs on this list are always considered not to be banned. This can be used to define exemptions from a range ban. The new CVAR sv_banexemptionfile specifies the filename of the list. [Torr Samaho]
  • Code pointer A_CheckRailReload is now available via DECORATE. [Torr Samaho]
  • Converted Minigun and Railgun to DECORATE. The DECORATE code of the Minigun was inspired by the STMinigun from tutnt.pk3. [Torr Samaho]
  • Added buckshot and instagib to the Skirmish menu. [Rivecoder]
  • Added netcode for the CCMDs invdrop and drop. [Carnevil, Torr Samaho]
  • Added CCMD kick_ip to kick players based on their IP. Usage: kick_ip <ip:port> [reason]. [Torr Samaho]
  • Added new dmflag "keep teams", controlled by the new CVAR sv_keepteams. If this is enabled, players keep their team after a map change. [Torr Samaho]
  • The server now informs the client if it tries to call a map/changemap vote to a map that is not in the rotation. [Torr Samaho]
  • You can now tab-complete RCON commands in the console. [Rivecoder]
  • Improved the resolution and quality of Skulltag's icon. [Kristus]
  • Added new CVAR sv_nokill. If set to true on a server, clients can't use the kill CCMD online. [Torr Samaho]
  • Added new CVAR cl_alwaysplayfragsleft (default value false). If set to true, the "x frags left" announcer sounds will always be played (no matter if already played before). [Torr Samaho]
  • Fixed: values for text scaling under 4 would crash. [Rivecoder]
  • Rank/spread/DM stats and team scores now show up in the ZDoom - and hence Heretic - HUD. [Rivecoder]
  • Fixed: Ignoring definitions of already defined decorate actors which use ":" or "replace" didn't work. [Torr Samaho]
  • Fixed: After a map change some type of custom weapons are lost on the client side (Fist and NewPistol in KDiZD for example). [Torr Samaho]
  • Fixed many problems with Heretic and Hexen during network games. Both games should be quite playable now online! [Carnevil]
  • Flags and skulltag skulls now work in any Doom engine-based game. [Carnevil]
  • If you're spying someone and aren't allowed to view their stats, Skulltag now draws dashes on the original HUD. [Rivecoder]
  • Monsters that do not leave a corpse now respawn properly in survival co-op. [Carnevil]
  • Monsters that are crushed by moving ceilings now respawn properly in survival co-op. [Carnevil]
  • Items now properly have their specials reset when a map resets. [Carnevil]
  • Enter scripts are now executed whenever the map resets. [Carnevil]
  • HUD messages that are broken into two or more lines that are centered horizontally now display properly in all scaled resolutions. [Carnevil]
  • Fixed the LMS/TLMS column display on the scoreboard. Wins are no longer shown in TLMS, as players do not obtain wins. [Rivecoder]
  • Players no longer get stuck in their idle animation if they bump into something in network games. [Carnevil]
  • All escape codes (such as linebreaks) are now removed from chat, except for color codes. [Rivecoder]
  • Players are now properly spawned when switching to a map with less player starts than players in cooperative mode. [Carnevil]
  • You can no longer crash the server by banning somebody with an extremely long reason string. [Rivecoder]
  • The list of players displayed by the server console should no longer have any ghost players. [Carnevil]
  • Fixed glitchy screen shaking that would occur when riding moving sectors in network games. [Carnevil]
  • Fixed a potential crash when using kick_idx on numbers greater than 32. [Rivecoder]
  • Fixed glitch that could result in a duel being reset when a spectator leaves the game. [Carnevil]
  • Players can now join a team from spectator mode when the "players cannot switch teams" dmflag is enabled. [Carnevil]
  • Removed CVAR sv_stay97c3compatible, since Skulltag has been incompatible with 0.97c3 since beta 4. [Torr Samaho]
  • When respawn telefragged in LMS and survival games, you no longer instantly respawn when the "Allow instant respawn" compatflag is enabled. [Carnevil]
  • Players can no longer be put into a team game without being assigned a team. [Carnevil]
  • The cast pics in the finale are now scaled properly. [Carnevil]
  • Stealth monsters now work properly on the client end. [Carnevil]
  • Thing_Activate and Thing_Deactivate not work properly in network games. [Carnevil]
  • Fixed a bug in which under certain circumstances, incorrect sounds would play in network games if the server and client didn't have the same wads loaded. [Carnevil]
  • Rune icons now show up correctly on the HUDs. [Rivecoder]
  • Seconday ammo is now displayed on the fullscreen HUD. [Rivecoder]
  • Improved the display of the bottom string; 'x allies/opponent' display now reflects that of the player you're spying; added a few missing linebreaks. [Rivecoder]
  • The Linux version now uses the directory "~/.skulltag/" instead of "~/.zdoom/". [Torr Samaho]
  • Fixed: A disconnecting Linux client doesn't tell the server that he is quitting. [Torr Samaho]
  • Fixed crash that would occur when flags/skulls were returned on maps where point (0,0) was an instant return zone. [Carnevil]
  • The "actor hits ceiling" sector action now works properly. [Carnevil]
  • Objects moved by thing_move now show up in the proper location on the client end. [Carnevil]
  • The class selection menu now properly animates. [Carnevil]
  • Players who become spectators when killed now have their bodies left on the field. [Carnevil]
  • Fixed glitches that would occur when changing to a map without enough starts for the number of players playing. [Carnevil]
  • Reorganized and regrouped a good chunk of the classic HUD code - item holders, team scores, and rank/spread. [Rivecoder]
  • Improved: The white flag 'held' display now always strips color codes, text scaling or not. [Rivecoder]
  • Heretic/Hexen invasion HUD now displays properly. [Rivecoder]
  • One Flag CTF now uses the classic HUD's iconic score display, and not the basic team scores one. [Rivecoder]
  • Removed cl_alwaysdrawdmstats and cl_alwaysdrawteamstats. [Rivecoder]
  • The reminder about how you cannot talk to players/spectators in LMS is now affected by text scaling. [Carnevil]
  • Fixed: If you loaded a game while a demo was playing, you'd be stuck. [Rivecoder]
  • The dmflag "Don't spawn multiplayer weapons in co-op games" now works properly. [Carnevil]
  • Skulltag score pillars now go into the correct frame when the blue team scores a point. [Carnevil]
  • The number of found and total items on the map now updates properly. [Carnevil]
  • Ambient sounds now work properly in network games. [Carnevil]
  • Classic HUD elements now show up in all games. [Rivecoder]
  • Heretic: CTF and Skulltag scores now use icons. [Rivecoder]
  • Classic HUD: In LMS, the top-right counter now reflects your wincount, not fragcount. [Rivecoder]
  • The neutral color that the crosshair takes on when spying has been improved. [Rivecoder]
  • In modes without a 'new HUD', the setting is now ignored. [Rivecoder]
  • The music now stays off when you pick up a second time freeze sphere. [Carnevil]
  • Heretic key markers now display the proper color in network games. [Carnevil]
  • The inventory bar now closes if you use an inventory item in network games. [Carnevil]
  • Fixed: Players using a scaled skin (such as Massmouth) would look like midgets to players with skins off. [Rivecoder]
  • Monsters killed during the countdown and other similar phases are no longer counted towards the killed monster total in invasion mode. [Carnevil]
  • Fixed: The server doesn't tell the clients about the changed ammo capacity when executing the SetAmmoCapacity ACS function. [Torr Samaho]
  • Fixed: The muzzle flash on the chaingun and minigun only works online properly for player one. [Torr Samaho]
  • Stacked sectors now work properly in network games. [Torr Samaho]
  • Changing bloodcolor via DECORATE now works properly online. [Torr Samaho]
  • Fixed: Teleport in Sector doesn't tell the clients the correct player angles online. [Torr Samaho]
  • ASkyViewpoint and ASkyPicker now work properly online. [Torr Samaho]
  • Fixed: If the ACS function SetActorAngle was called on a server, the clients were not notified about the updated angle. [Torr Samaho]
  • Changed: If the CCMD changemus is called on the server, the music is changed on all clients now. [Torr Samaho]
  • Fixed the decorative images in the DMFlags and Settings server windows. [Rivecoder]
  • The "player team" menu item now has the proper number of options. [Carnevil]
  • Friendly monsters no longer add to the monster total in invasion mode. [Carnevil and Torr Samaho]
  • The option to display bullet puffs as particles now works properly on the client end. [Carnevil]
  • The number of duels remaining is now reflected correctly on the scoreboard. [Carnevil]
  • Players other than the first player can now see locked door messages in network games. [Carnevil]
  • When spying a player in survival who dies, your HUD is now properly updated. [Rivecoder]
  • Color codes that span multiple characters are now properly removed when stripping color codes from strings. [Carnevil]
  • The number of consecutive regular and railgun hits are now reset whenever a new duel, LMS round, or possession round begins. [Carnevil]
  • The bots now retain their userinfo properties if you change your during the course of a bot match. [Carnevil]
  • Fixed: Thing_Remove called on an invasion pickup spawner leads to crashes when a player picks up something spawned by the destroyed spawner. [Torr Samaho]
  • Fixed: The line special Scroll_Floor doesn't work properly online. [Torr Samaho]
  • Fixed: ExtraFloor LightOnly didn't work in GL. [Torr Samaho]
  • The CCMD puke didn't do anything when executed on a client. Now clients can always puke net scripts and if sv_cheats is true they may puke all scripts. Puke should also work on the server now. [Torr Samaho]
  • Fixed: Clients using an armor with savepercent 100 don't get informed by the server if they lose armor but no health. [Torr Samaho]
  • Fixed: The ACS function GiveInventory doesn't update the armor amount to a client properly, if it's used to give an armor to the player of the client. [Torr Samaho]
  • Custom invasion spawners now signal that a map is an invasion map. [Carnevil]
  • The arch-vile active sound now plays properly in network games. [Carnevil]
  • The "turn180" command now works properly in network games. [Carnevil]
  • The FadeTo ACS command now works properly in network games. [Carnevil]
  • Fixed ally icons: they now show properly when spectating or spying. [Rivecoder]
  • The quad damage power no longer wears off if the doomsphere expires while possessing the terminator artifact. [Carnevil]
  • Fixed an issue with crushing ceilings in which they would stop after making contact with a thing on the client end. [Carnevil]
  • Fixed: A client could crash when using spynext, before being fully spawned into the level. [Torr Samaho]
  • Fixed: Playing the intro of KDiZD with the software renderer in low resolution could lead to a freeze (ported from ZDoom revision 492). [Torr Samaho]
  • Fixed: A client using a custom playerclass in Doom that doesn't have fist and/or pistol could crash when spawning. [Torr Samaho]
  • Fixed: SSG loading sound doesn't play online. [Torr Samaho]
  • Fixed: The ACS function Scroll_Texture_Both doesn't work properly online. [Torr Samaho]
  • Fixed: Clients picking up dehacked items aren't always told the correct item amount online. [Torr Samaho]
  • Changed: The positions of all actors with the MF3 flag ISMONSTER are now updated online. This fixes problems for example with NeoDoom (mouse) and Njzd2001.wad (super imp). [Torr Samaho]
  • Partially fixed: SetPlayerProperty not working properly online. [Torr Samaho]
  • Clients are now informed of a bot's team when a bot is added in team games. [Carnevil]
  • Fixed bug that allowed the total items count on a level to be inaccurate. [Carnevil]
  • Fixed bug in which sector sounds would continue to play for moving sectors after a map was reset. [Carnevil]
  • Additive translucency now works properly in multiplayer games. [Carnevil]
  • When Floor_LowerInstant is used on a sector, actors within that sector now properly have their sector z height updated properly in network games. [Carnevil]
  • The revent's melee sounds now play properly in network games. [Carnevil]
  • Demos no longer end when the server changes maps using the "map" command. [Carnevil]
  • The Strife popup screens now display properly under all resolutions. [Carnevil]
  • The flag/skull dropped announcer sounds now play properly in network games. [Carnevil]
  • Objects in water zones now exhibit the proper physics on the client end. [Carnevil]
  • Spectators waiting in line now have their position in line updated when someone in line leaves. [Carnevil]
  • Special case puffs, such as the blaster claw puff in Heretic, now spawn in the proper state on the client end. [Carnevil]
  • Chaingunners and spider masterminds now go to the proper state after killing a player when playing as a client. [Carnevil]
  • Going to a new map in single player as a spectator no longer results in weirdness. [Carnevil]
  • Bots no longer become dormant when switch maps in team-based modes. [Carnevil]
  • The "pushable" flag now works properly. [Carnevil]
  • Colorized strings that print quotations now work properly. [Carnevil]
  • Custom status bar faces no longer reset when another player respawns. [Carnevil]
  • The F1 help screens for team possession and OFCTF now work properly. [Carnevil]
  • Votes are now cleared out if there is a map change during the vote. [Carnevil]
  • When watching through another players eyes while playing a demo, the camera now stays in that person's eyes if you respawn. [Carnevil]
  • Fixed a crash that would occur when saying something with "%n" in the server console. [Carnevil]
  • The random powerup no longer displays its pickup string twice in network games. [Carnevil]
  • Fixed a glitch in which frags as a result of the reflection rune would create ghost players when hitscan weapons were used. [Carnevil]
  • Dehacked actors that are dropped items now appear properly on the client end. [Carnevil]
  • When connecting to a server in which the game mode is undergoing a countdown, the countdown ticks now display properly. [Carnevil]
  • A_CustomPunch and A_ThrowGrenade now work properly in client mode. [Carnevil]
  • Sounds originating from puffs now play properly in network games. [Carnevil]
  • Spectators can no longer trigger terrain effects. [Carnevil]
  • Removed the "connection type" cvars (they weren't being used anyway). [Carnevil]
  • The chat text color options in the messages menu now work properly. [Carnevil]
  • Thing translations now work properly online. [Carnevil, Torr Samaho]
  • Fixed a crash that would occur occasionally when dead bodies become submerged. [Carnevil]
  • The mancubus fireball and hectebus fireball no longer have the same spawn ID. [Carnevil]
  • Fixed glitch in which cycling through weapons using the "weapnext" and "weapprev" would occasionally display the weapon name. [Carnevil]
  • HUD message logging now works properly on the client end. [Carnevil]
  • Improved the scrolling of the server console. When you scroll up, it no longer snaps back down a new message. [Rivecoder]
  • Fixed: Bots would be put on "no team" after an intermission. [Rivecoder]
  • Fixed: Bots cause hudmessages to appear for player 1 offline. [Torr Samaho]
  • Fixed: Clients with activated prediction ignore the CF_FROZEN and CF_TOTALLYFROZEN flags locally. [Torr Samaho]
  • Fixed: Display problems with the CPU name string shown on startup. [Torr Samaho]
  • Fixed potential crashes, when trying to add a ban even though the maximum number of bans is already reached. [Torr Samaho]
  • Fixed: P_MorphPlayer and P_UndoPlayerMorph don't work online. [Torr Samaho]
  • Fixed: The dynamic lights of the Hectebus and the grenade caused major slowdowns. [Hidon, Torr Samaho]
  • Fixed: If a client is forced to leave a server due to an error, the client doesn't tell the server that it's leaving. [Torr Samaho]
  • Prevented the "Tried to render from a NULL actor." error from occurring in software. [Torr Samaho]
  • Fixed: A_GiveToTarget does not work properly online. [Torr Samaho]
  • Fixed: Firing the minigun with only one bullet still made it play its sound twice. [Torr Samaho]
  • Fixed: The give cheats online overwrote the item amounts on the client instead of increasing them. [Torr Samaho]
  • Converted DarkImp to DECORATE. [Kinsie, Torr Samaho]
  • Fixed memory leaks during map changes on the server. [Torr Samaho]
  • Fixed: When a bot is removed, its memory is not freed. [Torr Samaho]
  • Fixed: During every tick in which a client receives a network packet, it potentially does a DNS lookup of the master server, even if only receiving packets from the server. This fixes the freezing issues on the client occurring online every five minutes. [Rivecoder, Torr Samaho]
  • Fixed: Using nextmap or changemap when not in a level leads to a crash. [Torr Samaho]
  • Fixed: Clients don't play the attack sound of A_CustomBulletAttack. [Torr Samaho]
  • Fixed: A_CustomPunch doesn't update the remaining ammo amount on the clients online. [Torr Samaho]
  • Fixed: Starting a conversation online crashes the server. NOTE: Only the crash is prevented, the conversation still won't work properly online. According to the code, ZDoom doesn't support conversations in multiplayer yet. [Torr Samaho]
  • Fixed: sv_fastweapons is not synchonized between clients and server. [Torr Samaho]
  • Fixed: A_CustomComboAttack doesn't spawn the missile on the clients online. [Torr Samaho]
  • Fixed: Entering a command in the console with 64 or more chars may cause a crash. [Torr Samaho]
  • Fixed: If a client collects all pieces of one weapon online, but not all on the same level, it won't get the completed weapon before the next map change. [Torr Samaho]
  • Fixed some potential issues during map authentication. [Torr Samaho]
  • Fixed: Attempting to spawn a monster with A_SpawnItem, A_SpawnItemEx or any of the ACS spawn functions always increased the number of remaining monsters in invasion, no matter if the spawn was successful or not. [Torr Samaho]
  • Fixed: SKININFO ignores crouchsprite definition. [Torr Samaho]
  • Fixed: SelectRandomCooperativeSpot always returned the first spot. This should resolve the massive telefragging in coop when there are more players than player starts. [Torr Samaho]
  • Fixed: Under some circumstances the server told the clients to set CF_REVERTPLEASE in LS_ChangeCamera even though it shouldn't. [Torr Samaho]
  • Fixed: client_SetPlayerCamera should remove "past viewer" information from the renderer in case the camera changed position or direction since the last time it was looked through. [Torr Samaho]
  • Fixed: Non spectator players in coop game modes could "spynext" to spectators. [Torr Samaho]
  • Fixed: Position and angle of polyobjects are not reverted to the starting values when a map resets. [Torr Samaho]
  • Fixed: r_deathcamera doesn't work online if the player possesses the terminator artifact. [Torr Samaho]
  • Fixed: Things removed by Thing_Remove are not restored when a map resets. [Torr Samaho]
  • Fixed: When trying to refresh the server list in the internal server browser more than once within 10 seconds, you got a "Unknown command from master server: 4" message instead of a proper warning. [Torr Samaho]
  • Fixed: When selecting a powered weapon with "weapnext" or "weapprev" the name of the non-powered version of the weapon was displayed (in case cl_showweapnameoncycle is set to true). [Torr Samaho]
  • Fixed: Using addbot on a map with no appropriate player starts for the selected game mode leads to a crash. [Torr Samaho]
  • Fixed: Every LAN broadcast called gethostname() to get the local IP. This could lead to serious lag on servers. [Torr Samaho]
  • Survival co-op is now disabled in hubs. [Carnevil]
  • Skulltag's invasion spawners are now defined in skulltag.pk3. [Carnevil]
  • Skulltag.wad is now loaded before doom2.wad. This should fix certain texture errors. [Carnevil]
  • Changed Skulltag's connection process so that the map is now loaded before a full snapshot of the map is sent. This should result in a smoother connection process. [Carnevil]
  • You can no longer exit a map during the countdown in survival invasion. [Carnevil]
  • Starting a new game from the main menu now disables multiplayer emulation and resets dmflags. [Carnevil]
  • Enter scripts are now called whenever a player joins a game without being a spectator. [Carnevil]
  • Changed the order of some of the elements on the player setup menu. Hopefully it's a little more organized now. [Carnevil]
  • Spaces no longer count towards the three character minimum on player names. [Rivecoder]
  • There is now a 10 second time limit on suicides. [Carnevil]
  • Changed the default team chat text color to brick. [Carnevil]
  • Announcer sounds can no longer overlap each other. The second sound now stops the first. [Carnevil]
  • "x frags left" announcer sounds are no longer played if a sound for a lower anount of frags left has already been played. [Carnevil, Torr Samaho]
  • The possession countdown is now bolder in higher resolutions. [Rivecoder]
  • The win32 server console now uses Tahoma as its font, and should be easier on the eyes. [Rivecoder]
  • Skulltag.exe's metadata now includes the SVN revision number it was built with, and whether it's a released or internal build. [Rivecoder]
  • Merged the 'kick player' and 'ban player' server dialogs. [Rivecoder]
  • Updated the grenade sprite name from GREN to SGRN to fix Strife conflicts. [Aabra, Rivecoder]
  • Renamed the PANEL1-7 textures to PWPANEL1-7 to avoid naming conflicts. [Carnevil]
  • The 5 column scoreboard can now show up in resolutions of 600x and up. (Changed from 800). [Rivecoder]
  • Accessing the console no longer ends a demo if watching one. [Carnevil]
  • In the three column scoreboard display, ping is now shown instead of time. [Rivecoder]
  • The local.txt file generated from the crash dialog now says Skulltag instead of ZDoom and also reports the SVN revision number. [Torr Samaho]
  • All of the classic HUD elements (scores, holders) are hidden when you hide the entire HUD. [Rivecoder]
  • You can now see item holders and team scores while spectating in the classic HUD. [Rivecoder]
  • The chase cam selection of the consoleplayer is now applied also when spying another player. [Torr Samaho]
  • Replaced con_messagecolor with con_colorinmessages, and made it a three way var. 0 disables all color, 1 enables it, and 2 just removes color from the chat part. [Rivecoder]
  • Changed the icon and medal hierarchy. It is now Hellstone > Terminator > Flag/Skull > Lagging > Chatting > Ally. Also, when a player gets a medal it overrides only lagging, chatting, and allied status. [Rivecoder]
  • A proper error message is given when Skulltag is started with a shareware IWAD. [Torr Samaho]
  • If a monster is killed in invasion, one monster corpse from the previous wave is removed (if there still is such a corpse). This should improve the speed on maps like ALINV11. [Torr Samaho]
  • Changed: sv_fastweapons is now clamped to values between 0 and 2. [Torr Samaho]
  • Changed: The server doesn't call P_Ticker anymore if there are no players. This significantly reduces CPU usage on maps with many monsters (of course only as long as there are no players). [Torr Samaho]
  • Changed: If a player selects a new player class, the class will now be changed when respawning. So it's not necessary anymore to spectate and rejoin to change the class. NOTE: Players are still not allowed to change their class in single player or coop game modes offline. [Torr Samaho]
  • Changed: playercount() now returns the number of active players, i.e. number of players - number of spectators. [Torr Samaho]
  • Team Deathmatch games now display proper messages, and (if a draw game) enter sudden death, when the timelimit is hit. [Rivecoder]
  • Changed: The buckshot modifier is now ignored in non Doom 2 games. [Torr Samaho]
  • Replaced the CVARs cl_masterip and sv_masterip by the new global CVAR skulltag_masterip (default value skulltag.servegame.com). [Torr Samaho]
  • Reduced CLIENT_TIMEOUT from 65 to 25 seconds. [Torr Samaho, SuperGod, Rivecoder]
  • Changed: Client side demos now save the game version including the revision number. [Torr Samaho]
  • Raised the big team game messages so that they don't block your view. [Rivecoder]

v0.97d-beta4.3

  • Fixed vulnerability that allowed clients to crash all other clients by saying a chat string with "%n". [Carnevil]

v0.97d-beta4.2

  • Fixed vulnerability that allowed servers to be crashed be a remote party. [Carnevil]
  • Fixed vulnerability that allowed clients to be crashed by another playing saying a very long chat string. [Carnevil]
  • Fixed a crash that would occur frequently in game modes in which the map experiences a map reset at some point (LMS, duel, survival, etc.). [Carnevil]
  • Players no longer lose their team affiliation when they die in team LMS. [Carnevil]

v0.97d-beta4.1

  • Added a new display on the 'Target Identification' to help shift to the new ally icon. [Rivecoder]
  • Added a new 'information unknown' display for when spying. [Rivecoder]
  • When spying somebody who's health you don't know, the crosshair is now a neutral color. [Rivecoder]
  • If a definition of an already defined decorate actor is encountered, instead of exiting with an error, it's simply ignored. [Torr Samaho]
  • Refined the code that hides health/armor in instagib. It now only hides it in deathmatch. (You could set the instagib flag and play coop, for example). [Rivecoder]
  • Fixed client-side crash that would occur when connecting to buckshot servers. [Carnevil]
  • Fixed server-side error that would result in numerous overflow messages and strange behavior on the client end. [Carnevil]
  • Fixed client-side crash that would occur when a sound played with the original sound curve compatflag enabled and the player's view was not active. [Carnevil]
  • Fixed crash that would occur if the level time became too high (or in the case of clients, joining servers that have been up for more than two days without a map change). [Carnevil]
  • Pointlimit is now properly implemented in team games. [Carnevil]
  • The console player's states now update properly in client mode. [Carnevil]
  • Error handing (not the same as a crash) is now properly handled on the server end. [Carnevil]
  • The correct name is now highlighted on the scoreboard. [Carnevil]
  • Fixed issues with player prediction that could cause noticeable issues when running up stairs. [Carnevil]
  • Ping is now displayed on the scoreboard during client demo playback. [Carnevil]
  • Restructured the way the contents of the autoload directories are loaded. Now the Linux version also loads files in the subdirectories of the Skulltag directory. [Torr Samaho]
  • Removed d2st10 from Skulltag's maplist. It should no longer appear in the Skirmish menu or default rotation. [Aabra and Rivecoder]

v0.97d-beta4

  • Added Linux client and server support! [Torr Samaho]
  • ADDED CLIENT-SIDE DEMO RECORDING! You can now record a demo when connecting to a server with the "-record" <demo name> command line argument. Demos can be played back with the "playdemo" console command. [Carnevil]
  • Added custom invasion spots! You can now use your own custom monsters, pickups, and weapons in invasion mode! [Carnevil]
  • The crash dialog now works for servers as well! Now, if a Skulltag server crashes, it can be debugged and fixed! [Carnevil]
  • Added new messages for Skulltag and Capture the Flag for returned and taken skulls/flags! [Rivecoder]
  • Improved the display of the scored messages, adding support for self assists and making them smaller. [Rivecoder]
  • Blood brightness is now properly applied in OpenGL mode. [Carnevil]
  • All weapons are now given in LMS/team LMS mode, except for those excluded by the allowed weapon flags, and those flagged as not appearing in LMS mode. [Carnevil]
  • When time expires in a possession game, it now goes into sudden death until someone holds the stone. [Carnevil]
  • Added a specific error message for WSAEHOSTUNREACH in NETWORK_LaunchPacket. This makes it easier to see if an error is caused by a failed LAN broadcast. [Torr Samaho]
  • Skins now support names of up to 24 characters in length. [Carnevil]
  • D_AddDirectory now auto loads all wads and pk3s in a directory, not only wads. This leads to autoloading of pk3s in the skins directory. [Torr Samaho]
  • You can now join a full server if you are connecting from localhost. [Torr Samaho]
  • The Linux server doesn't need a frame buffer anymore. [Torr Samaho]
  • Linux server accepts console input. The console input reading can be disabled with "-noinput". [Torr Samaho]
  • IDESE now supports zip files! [Bond]
  • IDESE: Adapt to new color scheme (in player names), increase max startserver configs to 200. [Bond]
  • Changed: LAN broadcast now don't go anymore to 255.255.255.255 but instead to the broadcast address depending on the class of the network the server is in. This should improve the behavior under Windows and is essential under Linux, since the Linux kernel doesn't seem to permit broadcasts to 255.255.255.255. [Torr Samaho]
  • Added CVAR sv_logfilenametimestamp (default true). If it's true, a timestamp will be appended to the name of the logfile generated by the CCMD logfile. [Torr Samaho]
  • Added CVAR sv_logfiletimestamp (default true). If it's true, a timestamp will be added before every string printed to the logfile generated by the CCMD logfile. [Torr Samaho]
  • Fixed issues with the IWAD/PWAD list for servers when hosting .pk3s with embedded .wad files. [Carnevil]
  • The crash dialog now displays properly whenever Skulltag crashes. [Carnevil]
  • Fixed bug in which obituary messages would get screwed up when players had long names.
  • Fixed bug in which some BOOM format maps would mistakenly have lines that block players. [Carnevil]
  • Custom invisible bridges now have their radius/height properly updated in network games. [Carnevil]
  • Decals now properly disappear when maps reset. [Carnevil]
  • The muzzle flash on the chaingun and minigun now works properly. [Carnevil]
  • The "block players" flag on lines is now cleared when SetLineBlocking sets the line to BLOCK_NOTHING. [Carnevil]
  • Monsters' radius, height, and other properties are now properly restored when resurrected by arch-viles and other means. [Carnevil]
  • Your color now updates properly when making changes to your color in the player setup menu. [Carnevil]
  • Setting your gender to "other" now works properly. [Carnevil]
  • Fixed the 'ZDoom found more than one IWAD' message. [Rivecoder]
  • Fixed: SetFont() not working online. [Torr Samaho]
  • Fixed: AInterpolationPoint and APathFollower not properly working online. This should also fix the problems with AAimingCamera online in KDiZD. [Torr Samaho]
  • Fixed: Online clients may crash during the attack of the Hexen monsters Demon1 or Demon2. [Torr Samaho]
  • Fixed: Projectiles shot by Hexen/Heretic monsters are not spawned on the client in an online game. [Torr Samaho]
  • Fixed: a Hexen client crashes if the server changes the map with the CCMD map. [Torr Samaho]
  • Fixed: ACS function HudMessage online only working for the first player. [Torr Samaho]
  • Fixed: A client connected to a server may crash when using the CCMD playerclass followed by a name of a nonexistent class, e.g. a typo in the class name. [Torr Samaho]
  • Partially fixed: If the ACS function setThingSpecial is called on the server, the clients are not informed about the new specials. For now only the arguments are updated on the clients, updating the special still has to be implemented. [Torr Samaho]
  • Fixed: After choosing a random class with "New Game" or a non existing class with the CCMD playerclass, the player setup menu in Hexen crashes. [Torr Samaho]
  • Fixed: Position of AChicken is not updated online. [Torr Samaho]
  • Fixed: P_MorphMonster and P_UpdateMorphedMonster don't work online. [Torr Samaho]
  • Fixed: Calling AMorphedMonster::Die on a client can cause a crash. [Torr Samaho]
  • Fixed: Using the noclip cheat online leads to jerky movement after a map change. [Torr Samaho]
  • Fixed: Monsters don't gib online. [Torr Samaho]
  • Fixed: CCMD summonfriend doesn't work online (netcode for this was nonexistent). [Torr Samaho]
  • Fixed: The line special Thing_Damage (tid, amount, MOD) doesn't work in case of tid == 0. [Torr Samaho]
  • Fixed: Keys aren't displayed in the new fullscreen HUD in multiplayer cooperative games. [Torr Samaho]
  • Fixed parsing problems of the "bot" key in the campaign info parser. [Torr Samaho]
  • Fixed: A_CustomMissile and A_SpawnItem spawn the actors on the client and on the server. [Torr Samaho]
  • Changed: The server doesn't spawn dead actors that are not corpses any more on the client during a full update. [Torr Samaho]
  • Fixed: RIPPER weapons deal damage on the server and on the client. [Torr Samaho]
  • Fixed: If the angle can't be derived from the momentum of a missle, the missle is spawned with the wrong angle on the clients. [Torr Samaho]
  • Fixed: User info is in some cases not updated to the server properly on connect, if it was changed when not connected to a server. [Torr Samaho]
  • Fixed: A few strings in error messages were referring to ZDoom instead of Skulltag. [Torr Samaho]
  • Fixed: ST crashes if a bot is spawned outside a map. Although bots should not be spawned there, ST should not crash in case such a thing happens. [Torr Samaho]
  • Fixed: ACS function GiveInventory doesn't tell the correct inventory amount to a client. [Torr Samaho]
  • IDESE: Changed server gametype setup: "+gametype 1" in .rsp file. This fixes that some dmflags were not respected in some gametypes. [Bond]
  • IDESE: Fixed a problem with bot names (prevented to add bot>6). [Bond]
  • Changed the "enemy" to an "ally" icon that displays over your allies in team games. [Carnevil]
  • Brought back elements of the old invasion HUD. [Carnevil] (And made them show up at appropiate times - [Rivecoder])

v0.97d-beta3

  • FIXED THE SPECTATOR WEAPONS BUG! All of the information is updated properly now. No more rocket shotguns. :*( [Torr Samaho]
  • Fixed the silent railgun shots bug, and other sound related errors. [Torr Samaho]
  • Rewrote the scoreboard code! The scoreboard now shows fewer columns in lower resolutions, has a new 5 column display for CTF/ST/LMS (in 800x600 or higher), and sports a 'chatting' icon for when players are typing. [Rivecoder]
  • Added Hectebus fireball and several new light definitions. [Metalhead]
  • Added a new female skin, Illucia! [Lazureus]
  • Added support for hosting/joining servers with PK3 files! [Torr Samaho]
  • Added CVAR sv_stay97c3compatible. If it's true the server will allow 97c3 clients to connect and won't use any network commands they don't understand, i.e. bug fixes, which require network changes, won't be used. If it's false, 97c3 clients can't connect or will desync. [Torr Samaho]
  • DECORATE guns now spawn decals online with cl_hitscandecalhack=true. [Torr Samaho]
  • DECORATE guns now award accuracy/precision medals to players. [Torr Samaho]
  • DECORATE guns now notify bots if the DECORATE versions of the Doom weapons are used. [Torr Samaho]
  • Enhanced the 97 fullscreen HUD! [Rivecoder]
  • When a team scores in ST/CTF, it now shows who scored and who assisted! [Rivecoder]
  • All gamemodes: A small blurb in the top-right corner, next to your frags/points, shows the amount of remaining frags/scores/etc until the level ends. [Rivecoder]
  • Team Games: Team scores now appear on the HUD. [Rivecoder]
  • Instagib: Health/armor display is automatically hidden. [Rivecoder]
  • Infinite ammo: the ammo display is automatically hidden. [Rivecoder]
  • LMS: The 'x opponents left' display at the bottom now appears in the fullscreen HUD. [Rivecoder]
  • Survival: A new line in survival now shows similar to that of LMS -- it shows how many allies are still alive. [Rivecoder]
  • Invasion: Your kill count is now shown in the top-right of the screen. [Rivecoder]
  • Duel: Rank is now hidden. [Rivecoder]
  • LMS: The line about how spectators can't talk to living players now shows next to the chat prompt, and shows for players too. [Rivecoder]
  • Team Possession: Now shows who scored in online games. [Rivecoder]
  • Added netcode to handle the use of inventory items online. This should fix the CCMDs "invuseall", "invuse" and "use" - dropping items is not yet supported. (Needs *heavy* testing - brand new code). [Torr Samaho]
  • Pistol, shotgun and chaingun decals now work online. [Torr Samaho]
  • Added the 'chatting' icon to the scoreboard. [Rivecoder]
  • IDESE now supports pk3 files! [Bond]
  • Fixed: BlueColumn emits red light, not blue. [Metalhead]
  • The Reflection rune announcer is now played on pickup. [Torr Samaho]
  • Converted Fist and Chainsaw to DECORATE. [Torr Samaho]
  • Fixed ACS functions ClearInventory/DoClearInv online. [Torr Samaho]
  • Players' extra data is now update when spying after joining (possible in coop, for example). [Torr Samaho]
  • Deactivated chasecam cheat message, in any non deathmatch/teamgame game. [Torr Samaho]
  • Fixed: The Chainsaw's kickback was initialized to the default - not 0. (ported from ZDoom) [Torr Samaho]
  • Fixed: Hirestex replacements for sprites didn't work properly (ported from GZDoom, kudos to Graf for fixing this in no time!) [Torr Samaho]
  • server_GenericCheat only tells the client who toggled chasecam of the cheat, the others don't need to know about it. This fixes display problems, when spying someone who has chasecam on. [Torr Samaho]
  • Fixed: jerky movement online in a WaterZone. [Torr Samaho]
  • Fixed: Game crashes directly in a cooperative skirmish, e.g. if you start with "+multiplayer +map map01". [Torr Samaho]
  • Fixed: player classes not working online. (Needs extensive testing) [Torr Samaho]
  • Single player class selection menu now works in singleplayer. (Tested with Hexen and Ghouls vs Marines) [Torr Samaho]
  • Class selection are respected in offline skirmish. [Torr Samaho]
  • Fixed crashes of the player setup menu. [Torr Samaho]
  • Cleaned up the F1 help code; it now only shows during a level or intermission, fixing some bugs. [Rivecoder]
  • Positions of Heretic monsters are now updated properly online. [Torr Samaho]
  • Positions of Hexen monsters are now updated properly online. [Torr Samaho]
  • Fixed: Server crashes at startup, if you try to host a Hexen server without selection a map. [Torr Samaho]
  • "addmap", "callvote map" and "callvote changemap" now work on maps contained in pk3s. Maplist now works as well. [Torr Samaho]
  • Fixed the "Using unknown weapon type" bug, which happened in Ghouls vs Marines, if you are a Ghoul and fire your weapon after a map change. This should fix this bug once and for all (it occurred for Metal occasionally before) and could also fix the "player starts with fists" in coop bug. [Torr Samaho]
  • Fixed: a Heretic client crashes if the server changes the map with the CCMD map. [Torr Samaho]
  • Fixed: With switchonpickup == 1, some weapons are brought up powered up on pickup, even if the player doesn't have a PowerWeaponLevel2 active. Affects the mace in Heretic, for example. [Torr Samaho]
  • Generalized the way key letters are handled, which are used for weapon changes to reduce network traffic. [Torr Samaho]
  • Added the join game menu, which now shows in a team-less game instead of the y/n prompt. This way there can be the 'how to play' choice. [Rivecoder]
  • In the oldstyle fullscreen HUD, keys are only shown in coop now. [Rivecoder]
  • Reorganized the Display Options menu; added the HUD menu. [Rivecoder]

v0.97d-beta2

  • Skulltag now erases ZDoomGL settings (any renderer settings, really) the first time you run it on an old profile. [Rivecoder]
  • Added spread support rune for your custom DECORATE weapons! [Torr Samaho]
  • Upgraded the GZDoom renderer to 1.0.24! [Torr Samaho]
  • Updated to Randy's new vector math routines. [Torr Samaho]
  • This new vector code fixes a Software bleeding sector rendering bug.
  • Fixed the 'change renderer' messages and fixed a typo. [Torr Samaho]
  • When hosting a server, sound is automatically disabled. This fixes problems when running Skulltag on servers without sound cards. [Torr Samaho]
  • Fixed a server crash with custom ambient sounds (and possibly other undiscovered crashes). [Torr Samaho]
  • Fixed transparent textures that blocked projectiles or monsters. [Torr Samaho]
  • Fixed the TESTCOLOR grayscale bugs and crashes. [Torr Samaho]
  • (Possibly) fixed the respawn invunerability palete bug. This needs testing. [Torr Samaho]
  • Fixed the cooperative HUD armor display bug! [Torr Samaho]
  • Dynamic lights with a duration of -1 work now. [Torr Samaho]
  • Fixed the server maplist "FRAGS" bugs! This needs thorough testing. [Torr Samaho]
  • Console command 'addmap' now will only add the map if it exists. [Torr Samaho]
  • Console command 'changeteam' now gives an error when used in non-teamgame modes. [Torr Samaho]
  • Fixed a crash when the map was reset after the countdown. [Torr Samaho]
  • The online hitscan decal fix has now been declared bug-free and officially included for the SSG. [Torr Samaho]
  • You can toggle the hitscan decals with the CVAR cl_hitscandecalhack. [Torr Samaho]
  • Increased the prescision of texture scaling from GZDoom. [Torr Samaho]
  • Removed the old tx and ty CVARs, as they've been removed in ZDoom. [Torr Samaho]
  • Reactivated 3DMidtex support and changed ML_3DMIDTEX from 0x4000 to 0x40000000 (same as GZDoom) to fix conflicts. [Torr Samaho]

v0.97d-beta1

  • ADDED GZDOOM RENDERING! Skulltag has switched renderers and we've dropped the slow and buggy ZDoomGL renderer. This entails fantastic support for ZDoom's features, blistering speed, and fewer bugs! [Torr Samaho!]
  • Added dynamic lighting for ALL items for the new renderer! These include Doom items and Skulltag ones. Torches now cast light, plasma shots let out an eeire glow, and the spheres pulse ominously. [Metalhead]
  • Added name restrictions on all player names! Players can no longer create line breaks in the middle of their names, use invisible or strange characters, or use blank names! This should make vote kicking easier, and help stem name abuse. [Rivecoder]
  • NEW minimal vote screen! A display option, the "Vote Now!" screen takes up a small area at the top of the screen, instead of the entire screen. This should make votes less painful. [Rivecoder]
  • Added game-sensitive F1 help. What this does is changes the help screen to match whatever mode you're playing. If, for example, you are playing Possession, the help screen will show you how to play, etc. This can help new players learn the modes, as well as relieve experienced members from having to explain them. Ever had someone not know to score in Skulltag? "F1 DAMMIT!" [Rivecoder]
  • Created a new mapinfo entry, "f1"! Mappers can create CUSTOM F1 screens that can explain their ACS mod or level! Each map can have its own screen. Hopefully this should become the standard place to explain your game mode. [Rivecoder]
  • Voting can be fined tuned! Added these server cvars: sv_nokickvote, sv_nomapvote, sv_nochangemapvote, sv_nofraglimitvote, sv_notimelimitvote, _nowinlimitvote, sv_noduellimitvote and sv_nopointlimitvote. This way each vote type can be deactivated individually. [Torr Samaho]
  • You can longer leave the map rotation with a vote. [Torr Samaho]
  • Updated Skulltag's internals to use a hybrid of ZDoom 2.1.8 trunk and GZDoom 2.0.22 code. Not all of the new features (such as custom states) have been used yet. [Torr Samaho]
  • Added support for Terminator and Possession starts! TIDs 6000 and 6001, these allow mappers to choose where the Terminator ball and Hellstone spawn at the start of a level! If you don't use these starts, a deathmatch start will be used as normal. [Rivecoder]
  • When a player leaves a server, in addition to his frags and wins, his playing time is saved. This means that if you reconnect, your time isn't reset. [Rivecoder]
  • Added death frames for Ultimus! [Doomjedi]
  • When you get the Doom or Guard sphere, your vision is properly rendered. [Torr Samaho]
  • Fixed Teleport to Map special online. [Torr Samaho]
  • Fixed a server crash when monsters left a level. [Torr Samaho]
  • A player using a doom or guard sphere is rendered in the correct color for the other players. [Torr Samaho]
  • Removed the 1 frame delay between when the BFG10K shot explodes and the damages is dealt. This fixes time freeze mode. [Torr Samaho]
  • Fixed a crash where if you try to join a server, when having wads with the correct names, but which don't contain the map the server is running. [Torr Samaho]
  • Fixed bug where runes weren't stored when you saved the game. Wart 04 is playable now! [Rivecoder]
  • Bots ignore additional events if their queue is full (since the queue fills easily in time freeze mode). This should fix the "Event queue size exceeded" bug. [Torr Samaho]
  • Added a experimental hack to fix the decals of the super shotgun online. If this works properly, it will be used for all hitscan weapons. [Torr Samaho]
  • Fixed the give cheats online. [Torr Samaho]
  • When a team scores in possession, the name of the scorer is also shown. [Rivecoder]
  • Reorganized the player setup and multiplayer menu. [Rivecoder]
  • Some internal changes how Actors are spawned online. I hope this can be used in the future to reduce the problems some have joining a server hosting UTNT. [Torr Samaho]
  • Skulltag does not include most of GZDoom's gl-only features for now, such as 3D floors and reflective flats, to prevent advantages over software users.
  • 0.97d briefly used ZDoomGL 0.81, but it caused more bugs than it helped. Major props to Torr for his hours of work to get both renderers working.
----------------------------------------------------------------------------------------------------------
One remark about texture filtering: Because of countless complains in the past that the GL mode in general (regardless if ZDoomGL or GZDoom) is just too blurry and not doomish at all we decided to set the default filtering values in such a way, that the filtering resembles the software mode as closely as possible. These are not the recommended values, but the default ones, so that hopefully software renderer fans won't get scared away by the new renderer seconds after starting it for the first time.
The recommended values are as follows:

If you want to keep the sharpness of software more, but still enjoy filtering benefits, we recommend the settings

texture filter mode = none (mipmapped)
anisotropic filter = 16x

If you don't mind loosing a bit of the sharpness and want to enjoy all OpenGL benefits (as I do), we recommend

texture filter mode = trilinear
anisotropic filter = 16x

Especially if you use the high res textures, the latter is the way to go. Depending on the speed of your graphics card you can lower the anisotropic filter to improve performance.
----------------------------------------------------------------------------------------------------------

v0.97c3

  • Disabled several underground hacks, cheats, and hooks that have been circulating through the community.
  • NoIntermission is now recognized in multiplayer. Mappers can now use this to create their own intermissions.
  • Improved Skulltag's credits, which can be seen by waiting at the menu screen. They also use the DEMO3 slot.
  • Strengthened the voting mechanism. Kicking should now be easier and less troublesome.
  • Disabled loading of zvox.wad, which plagued servers since the release of 97b.
  • Fixed the display of server flags.
  • Fixed a ZDoom software bug that causes flashing between the MAPINFO and skybox skies.
  • Health now correctly updates once you complete a level in cooperative.
  • Removed the unused, pre-0.96 credit lump. Skulltag no longer shows this.

v0.97c2

  • Improved packet loss handling! Much less bandwidth and CPU power is now required to handle packet loss. Maps that previously were unplayable due to ACS effects should now be playable.
  • Added sv_nocallvote, a console variable that gives servers the ability to disable voting.
  • The skirmish menu now includes the lump name of the selected map in its display (ex. "MAP01 - Entryway").
  • Added the "use old fullscreen HUD" option to the display options menu.
  • Fixed infinite loop bug that would occur if a player tried to join the blue team, but all blue team starts were blocked.
  • The voting module now only allows valid votes to take place. People can no longer call votes like "fraglimit sex time".
  • The server statistics and server information dialogs work once again.
  • Enter scripts now execute in deathmatch and in teamgames.
  • Fixed crash that would occur when killing a summoned doomplayer.
  • Fixed crash that would occur when trying to connect to a server and go to a map at the same time in the command line.
  • Enter scripts now execute at the proper time in network games so that their effects are visible.
  • Custom weapons that use bullet attacks now work properly in network games.
  • The A_FireCustomMissile DECORATE function now works properly in network games.
  • A new line occurs before printing ALL of the various display messages above the status bar.
  • Barrels now respawn properly when the "barrels respawn" dmflag is enabled in network games.
  • Increased the resolution of the camera texture on D2LMS2.
  • The lava now animates properly on D2LMS5.
  • Updated the version info within skulltag.exe so that the program's internal name, internal version, etc. are accurate.
  • Values of 0-65536 are now acceptable for pointlimit in network games, as opposed to 0-255.
  • Memory for clients' saved packets (which are resent in the case of packet loss) are now allocated based on sv_maxpacketsize when the server starts. This results in less memory being used, but if sv_maxpacketsize changes, the effects don't take place until the server starts.
  • Lowered the possession hold time on a few maps to make scoring a bit easier.

v0.97c

  • In invasion, ammo spawners now never run dry in network games.
  • Added a new cvar, sv_usemapsettingswavelimit! When true, this automatically sets the wavelimit when a map changes based on whatever the wavelimit is for the map during the single player campaign.
  • Added a new cvar, sv_usemapsettingspossessionholdtime! When true, this automatically sets the possession hold time when a map changes based on whatever the possession hold time is for the map during the single player campaign.
  • Added a new property that can be set to campaign info for maps: possessionholdtime! This sets the amount of time the possession artifact should be held for to score a point on possession maps.
  • Added a new lindef special, Teleport_NoStop (154)! This special works like Teleport, except your momentum is not brought to a complete stop. This is now used in D2ST2.
  • Fixed crash that would occur when entering the text scaling menu with con_virtualwidth and con_virtualheight uninitialized.
  • Fixed bug in which if you got respawn telefragged in survival co-op, you would remain dead for the round (now you can play when the number of players exceeds the number of player starts!).
  • Fixed crash that would occur if you had cl_skins set to 0, and someone joined the game.
  • Fixed crash that would occur when an obituary with the same person as the victim and the attacker was printed.
  • Fixed crash that would occur when trying to select a weapon using the slot command while in spectator mode.
  • Fixed glitches that would occur when connecting to a server in which large number of packets are sent out (such as the "no player 1 start" issue that would occur when connecting to large in-progress invasion maps).
  • Fixed bug in which the game would go into an infinite loop on a map where a non-monster had the dormant flag when the map tries to reset (ex. at the start of a duel).
  • Dehacked pickups now work properly in network games.
  • Disabled the cosmetic scripts in D2LMS6 so that it no longer lags people out.
  • D2LMS10 now has items placed on it, so it's playable in possession/team possession mode.
  • Fixed bug in which after a map change in survival co-op, respawned dead players would float like spectators.
  • Fixed bug in which the possession and terminator artifacts would not be properly dropped when someone disconnects from a server.
  • Fixed bug in which if a player who was carrying the hellstone got crushed by a ceiling, it would leave behind a ghost hellstone.
  • Fixed bug in which monsters respawned on nightmare mode would be invisible on the client end.
  • Fixed bug in which if a line's blocking status changed during the course of the map (ex. it started off blocking everything, but was changed to not blocking anything), this information would not be passed along to connecting clients.
  • Fixed bug in which ghost flags and skulls could sometimes be present on a map when connecting to a server.
  • Fixed bug in which a player's pointcount would not be correctly updated after scoring a point in skulltag.
  • Ambient sounds now work properly in network games.
  • The SetActorProperty() ACS command now works properly in network games.
  • The SetLineTexture() ACS command now works properly in network games.
  • Fixed display issue in which there would be too large of a gap between notify messages in certain resolutions/scaling settings.
  • Fixed display issue in which HUD messages with newlines would not display properly.
  • The grenade launcher spawner now spawns actually spawns the grenade launcher.
  • When connecting to a possession or team possession server, the game state is now properly updated.
  • The "map", "changemap", and "nextmap" commands now take you to the proper map.
  • The join queue now properly lets multiple join at certain events (such as when a round of LMS ends).
  • The "centerview" command now works properly in network games.
  • Lookspring now works properly in network games.
  • Powerups that are given as part of a player's inventory between maps are now handled properly.
  • Dead players now spawn in the right location when the "spawn in the same spot" dmflag is enabled after a map change.
  • Scripted marines now work properly in network games.
  • Actors summoned with the summon cheat now show up properly in network games.
  • Fixed bug in which spectators would flicker due to their respawn invulnerability when entering games.
  • Speed trails now inherit their x/y scale from their owner.
  • Items in sectors that have had their floor height change during the course of the map now revert to the correct Z position when a map resets.
  • The countdown for various modules no longer ticks if the game should be paused (ex. if the menu is activated in single player).
  • Fixed bug in which lead changes would be announced improperly when spying through the eyes of someone else.
  • Fixed bug in which the announcer pickup entry for the random powerup would always be played, even if the person picking it up wasn't the player's camera.
  • Fixed bug in which starting a new game while playing a game of survival co-op on a server resulted in the new game being in survival mode as well.
  • The BFG10K now uses the proper pickup message.
  • The "FIGHT!" message now apperears when a duel begins.
  • You can now edit the dmflags for a skirmish while a demo is playing.
  • Weapon DECORATE mods that use the "MELEEWEAPON" or "EXPLOSIVE" properties no longer cause an error when loaded.
  • A "Victory!" or "Perfect!" medal is no mistakenly awarded to player 0 or player 1 at the conclusion of a team LMS round.
  • The melee sound for imps and barons of hell now play properly in network games.
  • The HUD now displays the correct number of opponents remaining in LMS games when somebody dies.
  • In team possession, the left column on the scoreboard now displays players' points, as opposed to fragcount.
  • The correct intermission screen (depending on whether you win or lose) is now displayed in possession.
  • First frag medals can no longer be awarded during the countdown phase of a duel.
  • Fixed D2DUEL10 so that are no more areas of the void that you can walk on.
  • Servers no longer display the "Unknown texture: STFST01" message during intermission.
  • Fixed some missing textures on D2LMS5.
  • Fixed some missing textures on D2ST4.
  • Fixed some texture misalignments on D2INV3.
  • The texture WOOD10 is no longer bugged.
  • The texture ICKWALL7 is no longer bugged.
  • The texture N_CMPT2R now has the proper height.
  • The server no longer cares what version of Skulltag you're using, as long as the network version is the same.

v0.97b

  • ADDED OPENGL RENDERING! Skulltag now has the ability to use hardware accelerated rendering through the OpenGL graphics library. Enjoy! :)
  • Added POSSESSION DEATHMATCH mode! In this mode, players gain points by possessing a demonic stone that spawns at a random spot when the level begins. Hold onto it for a certain period of time, and you win the round! ... oh yeah, and did I mention you can't use any weapons while in possession of the stone? :)
  • Added TEAM POSSESSION mode! This is just like possession DM, but it is played in teams.
  • Added SURVIVAL COOPERATIVE mode! In this new cooperative mode, players stay dead until one of his buddies ends the level, or all of his buddies die. This new mode is much more hardcore, and should be lots of fun! :D
  • Added INVASION COOPERATIVE mode! In this new cooperative mode, players fight off waves of monsters. Play in single player, or with friends! Whoever survives the longest wins!
  • Added a new EPISODE, "The Impending Nightmare!" This is episode three in the main menu, and features maps from the INVASION game mode!
  • ADDED 8 NEW MAPS of an entirely new type, DUEL! These maps are D2DUEL1-D2DUEL10 (D2DM3 became D2DUEL2, and D2DM9 became D2DUEL9).
  • ADDED 10 NEW MAPS of an entirely new type, LAST MAN STANDING! These maps are D2LMS1-D2LMS10.
  • ADDED 5 NEW MAPS of an entirely new type, INVASION! These maps are D2INV1-D2INV5, and are playable from the episode in the "NEW GAME" menu!
  • ADDED 3 NEW DEATHMATCH MAPS! D2DM3: Combat Center, D2DM9: Infernal Chamber, and D2DM10: Final Atonement.
  • ADDED 2 NEW CTF MAPS! D2CTF9: Disaster, and D2CTF10: Doomed Sea.
  • ADDED 7 NEW ST MAPS! These new maps are D2ST1 (the old D2ST1 has become D2ST3), and D2ST4-D2ST9 (too many to list :D).
  • Added a new powerup, called the "Guardsphere"! This new powerup causes you to take 1/4 of the damage you normally take.
  • Clients now have the ability to call a vote! Clients can now vote on whether or not to kick or ban a player, change the map, or change the limits (fraglimit, timelimit, etc.). Simply use the "callvote" console command, or use the "Call vote" command under the "Multiplayer" menu.
  • Added simple skulltag mode! You can now create a skulltag teamgame map by simply placing two skulls, team starts, and score pillars! NO SCRIPTING REQUIRED! More on how to set up the score pillars later (it's easy!).
  • Instead of being its own game mode, "instagib" is now a cvar that you can set to true or false and use with ANY OTHER GAME MODE! This means that you can how have instagib FFA matches, or instagib duels, or even instagib SKULLTAG!
  • Added the "buckshot" cvar! Similarly to instagib, when this is set to true, players start off with just the SSG, and no items spawn on the level, creating a SSG-only battle!
  • Made changes to almost all of the existing maps to improve their gameplay! Now, Skulltag's existing maps should be even better!
  • Completely rewrote the packet loss system! This fixes MANY of the glitches encountered during multiplayer play, such as ghosts, having a weapon but not being able to switch to it, etc.! This will also make existing games smoother!
  • Upgraded the ZDoom version to 2.1.7! Enjoy all the benefits that result from this, such as greatly advanced DECORATE support!
  • Added the "text scaling" menu! This menu allows you to scale text to make it display as it would in ANY resolution! So, for all of you who use giant resolutions, now you can easily make the text readable, without making it TOO big!
  • In cooperative games, players now spawn at a random cooperative starts if they don't have one themselves! This means that you can now have up to 32 man cooperative games, even if the map only has a single player start!
  • Added cooperative backbacks! Backpacks containing all your items are now dropped whenever you die in cooperative mode! This can be disabled with the "compat_disablecooperativebackpacks" flag. (CURRENTLY DISABLED)
  • The HUD now displays whomever is the terminator in terminator mode!
  • The HUD now displays however many players are left standing in LMS mode!
  • Added several new skins! These include "Nazi Guard", "Nazi Chaingunner", "Seenas" and "Synas"!
  • The BFG10K has been almost completely redone! The weapon now charges before it fires, and has new graphics! It now also uses the same amount of ammo per shot in deathmatch and teamgames as in single player games.
  • Improved the fullscreen HUD! Now it does a far better job of arranging things, and shows you what your max. health/armor is, and shows you if you're carrying the flag/skull in CTF/ST! If you wish, you can use the old fullscreen HUD by setting cl_stfullscreenhud to false.
  • Added a new and improved medal display screen! Now, when you hit the "show medals" button, it shows you the number of medals you've earned in the current match in a much nicer fashion!
  • Dramatically improved the display of various HUD elements in fullscreen (aka when the status bar doesn't display), such as the scores in CTF and ST!
  • Added a way to configure the privliges of spectators during LMS games! Now, the server can set "lms_spectatorview" and "lms_spectatorchat" to true or false, to allow/disallow spectators to have the ability to view players or chat respectively while spectating during LMS games.
  • Added the "First frag!" medal! This medal is awarded to the person who gets the first frag in a deathmatch game.
  • Added the "Termination!" medal! This medal is awarded when you frag the terminator in terminator mode.
  • Added the "Spam!" medal! This medal is awarded when you kill more than one person at the SAME TIME with the BFG9000!
  • Added the "Capture!" medal! This CTF medal is awarded when you successfully capture your opponent's flag.
  • Added the "Tag!" medal! This ST medal is awarded for successfully tagging your opponent's skull on a score pillar.
  • Added the "Defense!" medal! This CTF/ST medal is awarded when you frag a flag carrier.
  • Added the "Assist!" medal! This CTF/ST medal is awarded when you return your flag, prior to your team capturing the flag.
  • Rewrote the announcer module, so that now CUSTOM announcer entries can be specified! The new entries can be played by specifying an object's pickup announcer entry in DECORATE.
  • "Victory!" is now awarded for winning a LMS match, and "Perfect!" is now awarded for winning a LMS without losing any health.
  • Added the ability to use wildcards in server bans! Bans such as 38.38.*.* are now possible.
  • Added a new cvar, sv_flagreturntime! This sets the amount of time flags/skulls will return in after dropped. The default value is 15.
  • Added tall versions of the Doom and Doom 2 skies! Thanks, EarthQuake (aka Seismos)! :)
  • The map now resets to its original state at the start of each duel, and round of LMS.
  • Added some new textures, featuring blood coming from a cacodemon's mouth, and also a Hell Knight splattered against a wall! Thanks, Baphomet!
  • Added red and blue evil eye objects, as well as red and blue candles.
  • Added silver versions of all the red teleport flats.
  • Text now displays and an announcer sound now plays when a flag or skull is dropped in CTF or skulltag mode.
  • Added a new "nextmap" command! This is similar to "changemap", except ST advances to the next map, instead of the map specified. The next map is determined by the order in MAPINFO or the map rotation.
  • Added a new linedef flags that only blocks PLAYERS! It is usable with the new Skulltag DB config file.
  • Added a new menu option in the server console for managing LMS settings! This option can be used for configuring the allowed weapons in an LMS match, as well as setting the privliges for spectators (can they watch the game, talk to players in the game, etc.).
  • Addded many, many new textures! Thanks, Nick Baker! :)
  • You can now choose which powerups the random powerup item cycles through! For instance, you could have it only cycle between the doomsphere and guardsphere! More on this later.
  • On the HUD during one flag CTF, players names now display entirely in their team's color, so you can tell which team possesses the white flag at a glance.
  • When spectating through the eyes of another player, a message saying "FOLLOWING - <name of player>" is now displayed at the bottom of the screen.
  • White flag pickup messages now indicate which team picked up the flag, instead of it merely saying "White flag taken!"
  • Cameras now work in multiplayer games!
  • Added death frames for the "Hissy Hogger" skin... eons after being relevant.
  • Bots can no longer be added past the sv_maxclients limit in servers.
  • Slightly improved the win sequence of normal deathmatch modes, and team games! Now, instead of exiting to intermission immediately, there's a slight pause where "<name of winner> WINS!" is displayed, similarly to duels and LMS.
  • Added the "kickfromgame" command for server admins! Instead of kicking the player from the game, this simply removes them from the game by forcing them to spectate.
  • Added a new "Auto-select" option that is now the default option when choosing a team in various team modes. This selects the most appropriate team for the player to join based on scores, number of players, etc. "Join random" now selects a purely random team.
  • Added new decorative items: tall and small white torches, tall and small yellow torches, and tall and small red tech lamps!
  • Made some minor cosmetic improvements to D2DM6 and D2DM7.
  • Added a new cvar called sv_banfilereparsetime! This new cvar allows servers to periodically re-parse the banfile, with sv_banfilereparsetime being the time in seconds between parsings. This can be quite helpful when running multiple servers, since now if you ban someone, you don't have to manually add the ban on each server!
  • Added a new cvar called r_maxparticles. This sets the maximum number of particles allowed on the screen. It default value is the same as the previous default value for max. particles, which is 4000. You can still load Skulltag with -numparticles to override this.
  • Added unique sound lumps for grenades' launch and explosion. Now it's possible to make a new sound for rockets or grenades that do not affect one another.
  • Increased the power of the prosperity rune! You can now pick up green armor past 100%, AND it raises both your max. health and max. armor to 250%!
  • The sprites for the red armor have been completely redone, and greatly improved!
  • The railgun color specified by your userinfo now applied to the inner railgun trail in teamgames (where the outer trail corresponds to your team color).
  • Added a set of gray nukage flats.
  • Added a bunch of gory new decorations featuring the doomguy!
  • Added more frames of animation to the flags, as well as improving their quality.
  • Added a set of blue teleport flats.
  • Added a display message and announcer sound for when the white flag is returned.
  • When r_drawtrans is false, instead of players with the invisibility sphere being fully visible, their effect instead changes to that of the partial invisibility sphere.
  • Skulltag now displays the ZDoom version along with its version in the lower left corner of the console.
  • Improved the shading on the shoulder pads of the Base II skin.
  • Added cleaned up versions of FLAT22 and FLAT24 (the red and blue jump pad flats). These don't have stray red/blue pixels around the edge.
  • Spectators spying through someone's eyes can now see the effects of that person's regeneration rune.
  • Fixed single player demo recording! You can now record demos in single player without ST crashing immediately.
  • The "no exit" dmflags now applies to teamgames as well as deathmatch games.
  • The resistance rune (and also the guardsphere) now protects against damage not originating from a player (nukage, etc.)
  • Removed D2ST2.
  • Fixed bug that allowed certain map specials that execute when all of a certain monster are dead (such as the arachnotrons on MAP07) to execute more than once.
  • Fixed bug that allows you to set sv_cheats to true, log onto a server, and use the automap cheat to see other players on the map.
  • Fixed bug that allowed you to strafe or run backwards with turbo enabled without getting kicked from the server.
  • Frags are no longer awarded for respawn telefragging.
  • Grenades no longer bounce off of "line_horizon" lines.
  • If the music changes at some point during the level, clients who connect afterwards now have the correct music play on the map (this fixes the problem in which 8bitctf.wad wouldn't play any music in network games).
  • You can no longer change teams continously in teamgames.
  • Weapons now give you give you the correct amount of ammo in teamgames.
  • Fixed several flats that were either duplicates, or had names of existing textures. As a result, some flats have either been deleted or renamed. I apologize since I know this will screw up some (hopefully not a lot) existing wads, but I would be more than happy to update the wads.
  • Your armor points now properly update whenever you're damaged in network games.
  • Fixed bug where in terminator mode, the player's body was not flagged as being solid, allowing you to run through other solid objects.
  • When connecting to a server, players who are dead when you connect now appear dead.
  • People carrying flags/skulls in CTF/ST no longer have the flag/skull appear next to their name on the scoreboard (there's no need; it displays nicely in the bottom-right corner).
  • Fixed bug where if you spectated after grabbing a flag in CTF, the scoreboard would still show you as carrying the flag.
  • When a player is killed while possessing the terminator orb, the terminator orb is now properly removed from his possession (no more dead players with terminator icons above their head).
  • Removed the "cl_scalescoreboard" cvar (it's no longer needed; just use the "text scaling" menu instead).
  • The megasphere and soulsphere announcer events now works properly.
  • "Spawn farthest" is no longer defaulted to "true" in duel mode.
  • Latched cvars are no longer unlatched during map changes on the client end.
  • Fixed bug where the white flag would not properly return in simple CTF games if it was dropped in an instant return sector.
  • Monsters flagged as multiplayer only no longer count towards the total number of monsters in a level in single player.
  • FOV can now be set in client games when the "Disable FOV" dmflags is disabled.
  • The terminator ball now respawns if it's destroyed by a closing door, etc.
  • Simple CTF mode now works properly if you have two types of player starts in your CTF map (ex. single player starts and teamgame starts).
  • The white flag now returns after 30 seconds after being dropped whenever a player switches teams, leaves the game, etc. (previously, it would only return if a player died while holding it).
  • Fixed bug where ledges next to spring pads would behave like spring pads.
  • Players no longer lose frags for respawn telefragging a teammate, due to lack of starts.
  • Monster bodies now disappear upon respawn in multiplayer.
  • The red teleport texture from Hexen now animated properly.
  • In network games, Teleport_Line now behaves properly.
  • Removed instagib mode, team instagib mode, and instagib CTF mode (see above).
  • Removed oldschool mode. Deal with it.
  • Removed the cacodemon skin and bot.
  • Fixed the shape on many of the powerup sprites so that they're more spherical.
  • Chasecam can now be used in cooperative mode in multiplayer games.
  • Railgun colors are now red/blue in teamplay deathmatch.
  • Fixed the misnamed "D2M3_5" flat. It is now as it should be: "DEM3_5".
  • Weapon sounds no longer play multiple times when spectating through someone else's eyes.
  • Players' max. ammo in LMS/TLMS is now based on the player's editable internal max. ammo setting, instead of hard-coded values.
  • In cooperative games, you now respawn properly if you're dead during intermission.
  • Removed the survival DM gameplay mode (it's been replaced by survival coop which is MUCH better!).
  • The "x frags left!" announcer events now play even if you're a spectator.
  • Fixed the sprite alignments on the random powerup.
  • Removed "r_drawweapon". "r_drawplayersprites" already exists and does the same thing.
  • Fixed bug where the chat bubble could still appear over someone's head even when they run around.
  • Reduced the occurance of "SERVER_Addcommand: Server command queue size exceeded!", which would often occur when working with the map rotation list dialog.
  • Removed the ZDoom portion of skulltag.wad, and placed it in a new file: skulltag.pk3.
  • Replace the skulltag episode, "Tournament of the Damned," with the invasion episode, "The Impending Nightmare."
  • D2DM3 has now become D2DUEL2, and D2DM9 has now become D2DUEL9.
  • D2ST3 has now become D2ST2, and D2ST1 has become D2ST3 (confused yet?).
  • Spawn protection is now disabled when once a new weapon is fully raised.
  • Invisibility objects can no longer be carried while carrying a flag or skull.
  • Flag icons that display over someone's head when they carry a flag have been scaled down.
  • You can now press the "fire" key to resapwn when you die, in addition to being able to press "use".
  • Reverted the fix for executing dead boss specials multiple times to the way it was before, because people just have to have their Dehacked patches.
  • The "duellimit" and "winlimit" cvars is no longer archived.
  • The bots' chat files are now located within skulltag.pk3.
  • Skulltag now defaults to being in a window, rather than fullscreen. That way, if people have issues with firewalls (such as ZoneAlarm), they can more easily deal with the problem, and not get hung up.
  • blood_fade_scalar, which controls the blood fade brightness, now defaults to "0.5" (it used to be 1.0). Now, new players aren't blinded when they get hit by something.
  • Changed the bots "Charon" and "Pluto"'s name to "Seenas" and "Synas" respectively (they also have their own skins!).
  • In duel mode, a new duel now starts after intermission, instead of everyone being made a spectator.
  • Skins based off monster sprites now have sprite names that are unique.
  • cl_startasspectator now defaults to "false," so that new players have a chance to configure their settings without getting shot at.
  • Health, armor, etc. now appears blank on the status bar when spectating through the eyes of someone whose health, armor, etc. you are not allowed to know.
  • Changed the hectebi's attack to something more reminiscent of a mancubus.
  • "cl_cheatskins", the cvar that allows cheat skins to be used, is now "false" by default.
  • To score on skulltag mode score pillars, you no longer have to press space! You can now simply bump into them.
  • Red/blue skulls can now be picked up like normal in non-skulltag teamgame modes like normal (CTF, default teamgame, etc.)
  • If you suicide or are killed by the enviornment while possessing the terminator orb, you now lose 10 frags as opposed to one.
  • "Incredible!" medals are now awarded if you get another kill within two seconds of receiving an "Incredible!" medal. In previous versions, an "Excellent!" medal would be awarded in this situation.
  • "Most Impressive!" medals are now awarded for every 2 consecutive hits you make with the railgun after receiving a "Most Impressive!" medal. In previous versions, an "Impressive!" medal would be awarded in this situation.
  • "Total Domination!" medals are now awarded for every 5 frags you get without dying after receiving a "Total Domination!" medal. In previous versions, a "Domination!" medal would be awarded in this situation.
  • "Precision!" medals are now awarded for every 5 consecutive hits you make after receiving a "Precision!" medal. In previous versions, an "Accuracy!" medal would be awarded in this situation.
  • The player who "You've taken the lead!", "You've lost the lead", etc. announcer events refers to is now the display player, not the console player.
  • Instead of randomly being able to get invulnerability with the random powerup, you now get the guardsphere instead.

v0.96f

  • FIXED THE INFINITE LOOP BUG! This means that not only do servers no longer lock up and eat all the CPU, but the "Abnormal number of movement commands" kick should not occur anymore as well (unless of course you're actually cheating!).
  • Team scores that do not trigger the announcer are done appropriately in network games.
  • Skins that are scaled now appear properly in the finale.
  • Players no longer spawn with the super shotgun in Doom 1 in LMS.
  • Fixed problem where if you're in freeze mode, and respawn or end the level, you cannot move until turning off freeze mode.
  • SetHudSize() now works properly in network games.
  • Fixed problem where if the "map" or "changemap" commands were used with map rotation on, it wouldn't adjust the current position in the map rotation list properly.
  • Skulltag now allows reuse of the LAN socket. This means that if you have two instances of Skulltag open, you can see LAN servers in the local server browser in both instances.

v0.96e

  • Rewrote the "checksum" aspect of network games! It's now referred to as "level authentication". Now, level authentication is done prior to joining servers (so no more joining the game, and then immediately being kicked afterwards), and has a nicer error message.
  • Fixed the bug where clients would get kicked for "Abnormal level of movement commands detected!" if the CPU on the server machine was overloaded.
  • Rewrote the ban system so that it no longer parses the ban file each time it checks to see if an IP is banned. This should eliminate the "Couldn't open banfile!" warning messages.
  • If you fire a missile, die, and respawn, you now get credit for the frag if it hits someone.
  • Fixed bug where players who joined servers in the middle of a game would sometimes appear in-game on the scoreboard, when they were actually spectators.
  • Fixed bug where holding down a button during intermission could sometimes rapidly toggle your "ready to go on" status.
  • Fixed bug where bots could not open doors.
  • The score in the bottom left now properly displays during Team LMS games.
  • Fixed bug where when joining some teamgame maps, you would be spawned as an active player without a team.
  • You can now spynext out of the eyes of your teammates in Team LMS when you are killed.
  • You can no longer suicide during a duel using the "kill" command.
  • Slightly adjusted the position of the "You have the blue flag!", etc. messages so they don't overlap the "You fragged <name>!" messages.

v0.96d

  • Upgraded the ZDoom version to 2.0.63a! That means that you can now create custom actors with the DECORATE lump! REJOICE!
  • Revamped the entire sector system in client/server games! Floors, plats, doors, etc. ought to sync up much better now. In addition, many new types of floors, plats, doors, etc. that didn't work before now do (such as perpetually moving floors).
  • Made a number of small improvments to the "WAITING FOR PLAYERS" and "SPECTATING" displays.
  • Added a new "Messages..." option in the menu of the server console! The window that comes up has options for timestampping, logging, and more! This is accessible through the "Settings" menu.
  • Servers now minimize to the system tray! You can disable this if you'd like, by setting "sv_minimizetosystray" to "false".
  • The server window caption now reflects sv_hostname, instead of always being "Skulltag v0.xxx Server". Now you should be able to distinguish between servers when alt+tabbing through them, and having them all pop up from the taskbar in Windows XP.
  • Added new and improved Hectebus sprites! Thanks Agent Spork!
  • Added the ability to configure which weapons you start with in LMS/TLMS! The weapons that you start with are now controlled by the variable "lmsallowedweapons", which can now be changed with the commands "lms_allowpistol false", "lms_allowshotgun true", etc.
  • Added a nice new set of messages that display in the upper-portion of the screen whenever you frag someone, or are fragged in deathmatch games. Yet more stuff inspired by Quake 3! :) You can disable this in the "Display Options" menu if you wish to.
  • Greatly improved the method of selecting maps when sv_randommaprotation is enabled! Now, maps are not repeated twice in a row, and there's much more randomization.
  • Completed the "Server information" dialog box for servers.
  • Added a new "Statistics" dialog box, selectable in the server menu! It shows you statistics for your server, such as the total data transferred, maximum number of players on the server at one time, etc.
  • Updated the graphics on the SPREAD rune! It looks great now! Thanks, killingblair! :)
  • Improved the team picking mechanism for whenever the server chooses a team for a player, and whenever a player selects to pick a random team.
  • Improved the "Spectating" message that displays when you're spectating. Now, it displays more helpful messages, including your position in line, should be you be in line waiting to play!
  • If everyone leaves a map when playing on a server, the map now restarts after 5 minutes.
  • Bots can now use "$level_mapname" and "$level_levelname" in their chat strings to substiture the lump name of the map, and level name of the map respectively.
  • Added a "Cycle with original order" option to the weapon menu. When enabled, this will pick the next/previous weapon in your weapon slot list when using the weapnext/weapprev commands, instead of using your weapon preference order.
  • Added a nice little display that shows the current weapon selected when cycling through weapons with the weapnext and weapprev commands. It can be disabled by setting "cl_showweapnameoncycle" to false.
  • Rewrote a good portion of the scoreboard code. Players are now grouped together better (ex. all spectators are drawn next to each other, all dead players are drawn next to each other, etc.)
  • Added a new "sv_disallowbots" option. When set to "true", this will prevent bot pathing nodes from being created, and also disallow bots from being used. This allows the memory usage of servers to go down drastically.
  • The "Frags" column in the server console now changes to "Kills" in cooperative, and "Points" in teamgame modes.
  • LMS matches can now end in a DRAW GAME! Now, if the last two players left standing die in the same frame, the match ends in a draw game, instead of the loser being whoever's death code was executed first!
  • Updated the Skulltag parts of the TNT and Plutonia map info lumps to match the default Doom 2 parts. (ARE YOU HAPPY NOW LIN? :P)
  • Added the ability for maps to disable to creation of bot nodes by specifying "nobotnodes" in the MAPINFO lump. This is to help large levels load faster. (Oh yeah, this also means bots won't work on those levels).
  • Servers now ignore launcher queries that occur within 10 seconds of each other.
  • Servers now ignore launcher queries from IPs that have been banned from the server.
  • Hectebus fireballs now leave scorch marks.
  • Made a small change to the automatic team picker to avoid constantly having the same teams between maps.
  • Added a "cap framerate" option to the "Display Options" menu.
  • A more detailed error message now displays if the ban file could not be opened.
  • You can now switch multiple weapons at a time when using the "weapnext" and "weapprev" commands.
  • Text colors are no longer a shade brighter than they should be.
  • Fixed bug where player's names would remain on the scoreboard window after disconnecting.
  • Fixed bug that allowed a sped up computer hack to cause players to move and shoot many times faster.
  • All players are now hidden from view for spectators in LMS/TLMS games. Spectators are also no longer allowed to spynext in LMS/TLMS games. This prevents spectators from giving away locations, and other valuable information about players still in the game.
  • Fixed the "You lost your body. Bad dehacked work is likely to blame." bug that would happen periodically in multiplayer games.
  • The "consecutive deaths without a frag" counter is now reset at the beginning of each duel/LMS match. As a result, you can no longer receive "You Fail It" or YSINE medals after dying once, twice, or any amount lower than the required number of deaths for those medals.
  • Fixed bug where if you changed teams, your old body remained solid (you could bounce grenades off it, etc.)
  • Fixed bug where some items would always face east in network games, even if they had a different angle.
  • Fixed bug where players who joined servers in the middle of a game would sometimes appear in-game on the scoreboard, when they were actually spectators.
  • Fixed a problem with the Team_GivePoints() ACS function. It now works properly.
  • Spectators can no longer telefrag (however, this only had the potential to occur in single player games).
  • Terrains that splash when you land on them (such as water) no longer create multiple splashes in multiplayer.
  • Fixed D2DM7, so that you can no longer rocket jump "outside of the level".
  • Then proper weapon now displays when spynexting your buddies when you are not a spectator.
  • Made some tweaks to D2ST1, so now you're less likely to get snagged on posts.
  • Rewrote a portion of the launcher query protocol to make it use less bandwidth.
  • You no longer get kicked for cycling through connection types at the multiplayer menu.
  • Fixed a problem where you couldn't toggle your "ready to go on" status during intermission in network games.
  • Made a fix so that it should now be impossible to be kicked for userinfo flooding while connecting to a server.
  • Fixed cooperative problem where the total number of monsters remaining could be negative, due to the total of monsters not being increased when a monster was revived by an arch-vile.
  • The level end delay is now reset if you change maps using the "map" command.
  • Platforms that aren't activated by a line now work properly.
  • The appropriate bullet puff type is set before enemies fire the railgun. This fixes a bug where if the enemy fired the railgun after the BFG10K would shot, all bullet of blood puffs would be BFG10K explosions.
  • "Timelimit hit." now displays on the client end when time expires in a multiplayer game.
  • Hidden skins are no longer displayed when the "skins" console command is used.
  • You can no longer join LMS games during the win sequence.
  • Removed the "droprune" command (it didn't do anything).
  • Spectators are no longer factored into deciding whether or not your lead state has changed in a deathmatch game (ie. You can't take the lead against a player who's spectating).
  • The BFG10K shots now show up properly when "Bullet puff type" is set to "particles".
  • Fixed a small problem where a backslash ("\") at the end of a chat string would not show up properly.
  • Banning a player with two words in his name now works properly from the "Kick/ban player..." menu item.
  • Bot pathing nodes are no longer created in client games. This should cut down on the memory usage.
  • Your view is now reset if you're spy's through the eyes of someone who becomes a spectator.
  • Players are now sorted by fragcount on the scoreboard in team LMS.
  • If a player gets another frag within two seconds of receiving an "Incredible!" medal, he now receives another "Incredible!" medal, instead of an "Excellent!" medal.
  • The "Server information" dialog box is now accessible under the "Server" menu, instead of the "File" menu.

v0.96c

  • Skulltag now runs FASTER! Skulltag is now compiled with a different program, giving it quite a boost in speed!
  • You can now set the "chatfrequency" property of custom bots in BOTINFO lumps.
  • Added a new "mustwinallduels" property in campaigns, which defaults to true. When this is set to true, the player loses the level if he loses ONE duel against a series of bots!
  • When defining new episodes, you can now set "botepisode"
  • You can now set compatflags in campaigns.
  • Added a new skin, "Slyor"! This skin is based on Klesk from Q3A, and is now used by the bot Slyor. Thanks RottKing!
  • Added new abilities when defining a new episode in MAPINFO lumps. Now, you can specify whether or not an episode is a bot episode, and what graphic/text to display atop the botskill menu. More on this later.
  • The saving of player's frags mechanism has been expanded and totally redone. In addition to storing frags, wins and points are saved now as well. Also, players frags, etc. are no longer saved when kicked from a server.
  • Added placeholders for Daisy's death frames. Daisy no longer disappears upon dying.
  • Added a new "GetFavoriteWeapon" botscript command. Like it says, it returns the favorite weapon of the bot.
  • Added a "Currently showing <x> servers" display message in the internal server browser window.
  • Made a fix to a section of the client code that should result in less slowdown.
  • Bots can now have their chat strings in wads! Several new botscript functions have been added to support this: SayFromLump, SayFromChatLump, ChatSectionExistsInLump, and ChatSectionExistsInChatLump. You can also specify "chatlump" for each bot in BOTINFO.
  • You can now continue to see what place you're in during LMS games on the scoreboard after you've been killed.
  • Added a new warning message for whever you try to specify a script lump or chat lump for bots that exceeds 8 characters.
  • The "invalid checksum" error now has a better error message for clients who get kicked because of it.
  • Fixed bug that crashed servers whenever HudMessage was used within scripts. This prevented the D2ST1-3 from being played in multiplayer games.
  • Fixed error in how deactivated actors are sent to clients who are connecting to a server. This prevented D2DM6 from being played in multiplayer games.
  • Fixed the major slowdown problem with the bots on D2DM2.
  • User info sent when a player is connecting to a server is no longer counted towards userinfo spam kick mechanism. This means that players who don't connect to servers quickly are no longer kicked. This hopefully fixes all of the player names left on the scoreboard problems, as well as an error causing the server to be full, when really it wasn't.
  • Fixed problem where you could bounce grenades off some dead bodies in Last Man Standing.
  • Fixed an exploit that allowed you to change visiblity to full brightness in single player, then connect to a server, retaining full visibility.
  • Fixed bug where if a map was changed in a the middle of a Team LMS game, players couldn't rejoin the game because Skulltag still thought a match was going on.
  • Fixed problem where after an intermission during some sort of team-based skirmish, bots would constantly respawn.
  • When creating no bots in BOTINFO lumps, if no chat frequency is specified, it defaults to 50 (percent). Before, the chat frequency was not initialized, and would often be some completely random. This is why custom bots would rarely (if ever) say their roaming strings, killed strings, etc.
  • Winning/losing in campaign maps other than basic deathmatch modes now works properly.
  • Servers now spawn clients with their proper handicap on their first spawn.
  • The true position and angle of polyobjects that have been either rotated or moved now appear accurately for clients connecting to a server.
  • Fixed problems where the handicap would have strange effects if it was set over 200 or less than 0.
  • Player's true starting health is now displayed properly on the scoreboard. Before, it could display as less than 1, which isn't possible.
  • Fixed all problems with the internal server browser. It should work fine now.
  • Frags now display appropriately in the "Frags" column of the scoreboard in Team LMS.
  • "Ready to go on" icons now work properly during the intermission of LMS and Team LMS games.
  • Fixed a frame of the SS Nazi skin that had a pink spot on it. Thanks RottKing!
  • The Duel and Last Man Standing are now properly reset after a level ends. This fixes a bug where if you played a campaign duel map to completion, a second duel map wouldn't load up with the countdown.
  • Fixed problem where in multiplayer, sometimes players could run, but not have their body animate properly.
  • You can now spynext/spyprev in teamplay deathmatch, Team LMS, team instagib, and cooperative mode, like you're meant to be able to.
  • The botscript command CalcSpread() now works appropriately in team-based games.
  • Ambient sound triggering now works properly in multiplayer games.
  • Fixed a problem where a player could join a server and have wins, even if that player hadn't played on the server (the wins of a previous player weren't cleared).
  • The titles of the botskill menus ("DEATHMATCH", "SKULL TAG", etc.) are now properly centered.
  • Changing your weapon pickup preference at the weapon setup menu no longer can result in getting kicked from the server in network games.
  • Fixed bug where particle fountains that were dormant to the server would appear to be active for clients connecting to that server.
  • Made a small change to the bots' roaming function to eliminate an infinite loop that occured in extremely small maps. You can now play with bots in canthide.wad. Ugh.
  • Scrolling through autoaim choices on the player setup menu during a network game no longer results in you getting kicked.
  • Fixed strange display problem in the server console where two lines would display on one merged line.
  • Fixed server console display glitch that would happen in strings that had two or more color codes in a row (ex. "say \cg\cgHI!").
  • The "Champion is <name> with <x> wins" string on the server console scoreboard no longer looks odd if the player has colors in his name.
  • Scrolling sectors now work in network games.
  • The appropriate railgun color now used in Team LMS games.
  • Eliminated "You cannot change deathmatch/teamgame during a campaign." messages when trying to start a new game through menus after playing a campaign.
  • Spectators are no longer respawned when a match starts in LMS/TLMS.
  • Fixed the SINMAP and ABRICK3 textures that somehow got renamed.
  • Fixed a problem where players telefragged by their own team members at the beginning of a round in Team LMS couldn't respawn.
  • Made a change to reduce, if not eliminate the occurance of no items spawning on a level when connecting to a server.
  • Fixed problems relating to the number of duels that have been played on a map.
  • Fixed bug where bots would rapidly open and close doors.
  • The "Kick player..." and "Kick/ban player..." menus now works properly on the server console.
  • Fixed bug where picking up the random powerup would display the pickup message to everyone, not just the person picking it up.
  • Decals placed on a map now spawn for clients in a network game.
  • Fixed problem in CTF network games where if a player was carrying a flag, the spectated, it spawned two flags on the client end (and one would remain as a ghost if the flag was returned).
  • Spawning a bot with an invalid script name no longer results in the game crashing.
  • Specifying new start maps for new episodes with the MAPINFO lump now works properly.
  • Fixed bug where setting a fraglimit could cause strange problems with Team LMS.
  • Fixed a problem with the last frame of the invisibility sphere animation.
  • Fixed problem with the SS Nazi's front firing animation.
  • "Intellect" is now spelled properly in use with BOTINFO and botscript functions. Setting the "intelect" property in BOTINFO lumps however still works for compatability.
  • Fixed bug where people leaving LMS games could produce bizarre results, such as restarting the countdown.
  • Botskill icons and players' handicap now show up on the scoreboard in team-based modes.
  • Fixed problem where actors who were not players did not have their water level status updated to clients.
  • Light_Fade and Light_Glow now work properly in network games.
  • Your player rank in LMS is now determined by your number of wins, instead of your fragcount.
  • Fixed a problem with a few flats used in D2CTF8 that was causing them to show up as a slightly different color.
  • Fixed a number of minor texture misalignments on D2DM8. Thanks Assmaster :P
  • Fixed a number of patches for textures that weren't showing up properly in Doom Builder's texture selection window.
  • Abaddon no longer fight with Cacolanterns, and Belphegor no longer fight with Hell Knights.
  • Removed the "RBAN1" texture, since ST already has a texture that has this. If a map used it, and this breaks it, I can put it back.
  • The "Nightmare!" graphic on the botskill menu now uses a different graphic lump than the gameskill menu. The lump name is "M_BNMARE".
  • Color codes are no longer used in logfiles. Now, lines with colors in them shouldn't cause logfiles to look strange.
  • You can now change variables with the campaign lock flag during a campaign when sv_cheats is enabled.
  • Removed the campaign lock from the "botskill" var. You can now change botskill mid-campaign.
  • Slyor now appears on D2DM7, instead of Torrent.
  • Changed the fraglimit on D2DM7 to 25.
  • sv_duelcountdowntime now defaults to 10, instead of 20.
  • Handicap can now be set up to 200 in the player setup menu, due to you starting with 200% in LMS and TLMS games.
  • Botskill is now clamped between 0 and 4. This should eliminate graphical errors on the scoreboard that would occur when set higher or lower than that range.

v0.96b

  • THE BOTS ARE BACK! The bots are once again fully functional, and greatly improved! Enjoy! :)
  • Players can now create their OWN CUSTOM BOTS, with CUSTOMIZEABLE AI! This is due to the fact that all the bots' logic is now scripted! More on this later.
  • Bots now work in multiplayer games!
  • Added two new deathmatch levels! D2DM4: Containment Facility, and D2DM8: Temple of Pain.
  • Added a new skulltag level! D2ST3: Ring of Fire.
  • Added two new CTF levels! D2CTF7: Den of Sanctity, and D2CTF8: Ghastly Abode.
  • D2DM1 and D2DM2 have been completely redetailed! They look fantastic now!
  • D2DM3 has been completely redone! It's much better now! :)
  • Reimplemented, and completed revamped the CAMPAIGN system! (The campaign system controls the single player botmatches.) Now, users can create their OWN campaigns, using the CMPGNINF lump! More on this later.
  • Added new Last Man Standing, and TEAM LMS mode! This works very similarly to Rocket Arena. Players battle each other until only one man is left standing, and then the match restarts.
  • Added Team Instagib mode! It's essentially the teamplay deathmatch mode combined with instagib deathmatch!
  • Added Instagib CTF mode! You can now play capture the flag games... instagib style!
  • Added a new monster, the Hectebus! This monster is a level two Mancubus. Thanks TheDarkArchon for the sprites, and Espi for the fireballs!
  • Added a new monster, the Abaddon! This monster is a level three Cacodemon. Thanks Tormentor667 for the sprites!
  • Added a new SIMPLER method of creating CTF maps! Now, all you have to do is place your flags and starts, and you're done! This also creats a compatible CTF standard with other ports, such as ZDaemon. This also works with ONE FLAG CTF!
  • Added Legacy style weapon preferences! Players can now set their weapon preferences in the weapon setup menu (accessible through the player setup menu), and change their switch weapon on pickup preference to "Never", "Only for higher ranked weapons", and "Always"!
  • Added a graphical server console! It is now far easier for server admins to manage their servers. It's also prettier :)
  • Servers can now ban players! Bans can now be set in the server console, as well as turned on/off with the sv_enforcebans cvar.
  • Improved the spam chat kicking functionality. People now cannot get away with as much spamming of macros, etc.
  • Added several new bots! ... but you'll just have to find them yourself! :)
  • Improved how players join teams in teamplay deathmatch! Now, all players start as spectators, and when they hit space to join the game, select which team they want to join.
  • The way players now join a team in teamplay deathmatch now applies to teamgame maps that do not have temporary starts (so now level designers aren't forced to make a team selection room).
  • Rerecorded all the announcer sound effects, so hopefully they're even better! (NOTE: The old one has been left in as a seperate profile!)
  • Added a new "Fisting!" medal, which is awarded for fragging an opponent with your fist!
  • Added "You have the flag!", "Your team has the flag!", "The enemy has the flag!", and "White flag returned" announcer events for One Flag CTF.
  • Implemented "ready to change maps" functionality at the intermission in network games! Players can now hit a button during intermission to incidcate that they're ready to change to the next map.
  • When bots chat, they can now include player names in their chat string! This is done simply by placing codes such as "$player_killedby", "$player_random_notself", etc. in their chat strings. More on this later.
  • Chubbs now has more frames of animation! In addition, some of his existing frames have been improved! Thanks Seth Gorden for coming back to us! :)
  • Improved the hidden bot/skin system! Now, when you add a hidden bot or select a hidden skin, it is then selectable when choosing your skin at the player setup menu, or selecting a bot at the skirmish menu. Revealed bots and skins are also now saved into your config file, so they're available next time you load Skulltag!
  • Added the "SS Nazi" skin! Now you can play Skulltag as a Wolfenstein character!
  • Added the "Super Shotgun Guy" skin! Now you can play as one of Skulltag's new monster, the Super Shotgunner!
  • Added a touched-up "Phobos" skin, based on the character in Q3A! Thanks RottKing!
  • Added the "Strife Guy" skin, who is based on the guy from Strife! (duh)
  • Added a new linespecial (153) called Team_GivePoints! This ENSURES that Domination can now be scripted with no problems!
  • Added several new textures that can be helpful to teamgame map authors! Thanks exp(x)!
  • The turbosphere is now complete, graphic-wise!
  • The haste rune is now complete, graphic-wise!
  • The high jump rune has now been significantly improved, graphic-wise!
  • The server window now displays "FIGHT!" when duels and last man standing matches start.
  • Now, when using "rcon", you can see the output on the server window on the client end!
  • Massmouth is back! He's also sporting a new skin, and new chat lines! Thanks Cyb! :)
  • Added "sv_randommaprotation", which when used with "sv_maprotation", randomly selects a map from the map rotation list for the next map.
  • Teammates can now chat with each other by using say_team in teamplay deathmatch.
  • Added "winlimit", which works similarly to fraglimit, duellimit, etc., but works with Last Man Standing games.
  • Team scores are now reset to 0 if everyone on the server leaves.
  • Added a new compatflag for using old intermission screens and music during intermission, as opposed to the new Skulltag ones.
  • Added a new compatflag to disable stealth monsters.
  • Your color is now saved while cycling between skins. If you switch to a skin that has a preset color, then switch back to a skin that doesn't have a preset color, your old color will be retained.
  • Now, when you switch to a map using the "map" command that's in the map rotation list, the current position in the map rotation list is set to that spot in the list.
  • The "Accuracy" and "Precision" medals now work again.
  • Skulltag now keeps track of the amount of time each player has been in the current map, and it is displayed on the scoreboard.
  • In cooperative mode, players are now sorted on the scoreboard based on their kill count.
  • When Skulltag tries to bind to a port, if the port is not available, it simply finds an available port, and bind to it.
  • The puff type display options now work in network games.
  • Added support for skins with sounds that start with '*' in SKININFO.
  • Added thing 9991, which performs the action attached to it whenever an actor is in the same sector.
  • If a player has a changed colormap along with the turbosphere or haste rune, the colormap is now applied to the trails.
  • Added improved the Belphegor's sprites. Thanks Nanami!
  • Added tall versions of the Doom episode 3 and 4 skies! Thanks Seismos!
  • Skulltag's invisible bridges now possess the "act like bridge" flag, allowing objects to rest on them. This also fixes the problem on D2CTF1 where flags could drop down below the bridges.
  • The minigun has new on-ground graphics! Thanks Scuba!
  • Added "don't restore frags" options for clients who don't want their fragcount to restored when they reconnect to a server.
  • The fan flats in skulltag.wad now animate by default.
  • Fixed problem where the client side player prediction would cause jerkiness when running up stairs. This means that games will now be much smoother!
  • Fixed annoying problem in network games where you would bob up and down if you were standing on a ledge.
  • Fixed all reported crashes.
  • Players who spam user info changes (ex. running scripts that change your skin every few ticks) are now kicked from the server.
  • Fixed problem where occasionally hitting the use key against objects (like you do to open doors) would not work right.
  • The railgun attacks are now armor piercing, like they were meant to be.
  • Fixed problem where you could set a negative handicap, thus allowing you to reach very high health levels.
  • Fixed problem where monsters would continue to attack your invisible body if you went into spectator mode.
  • The respawn invulnerability now protects against railgun shots in instagib.
  • Fixed memory leakage caused by idle servers.
  • Thing_Activate/Deactivate now work properly in multiplayer games (YOU'RE WELCOME SPUNKMAN!)
  • Fixed STSKY5 so it now repeats vertically properly.
  • Fixed bug where the game would freeze up if you tried to suicide during the win sequence of a duel.
  • Fixed bug where you could activate the IDDT map cheat in single player, and then connect to a server with the cheat still active.
  • Fixed problem where if you ran a server and tried to change a variable that's archived and part of the server info (such as compatflags) with the command line or a config file at startup, it would not set properly.
  • Fixed problem where if a player's speed was changed through ACS over the network, his movement could appear to be all jerky.
  • The "SetWeapon" ACS command now works properly in multiplayer.
  • Fixed problem where if the server had their blood type display option set to "particles only", clients connected to the server would not see any blood sprites.
  • Timelimit is now applied in team games.
  • Removed the FWFALL1 and FWFALL2 textures. Hope no one was using them! They were the essentially the same as WFALL1.
  • Did the same for the WFALLxx patches.
  • The sound once again works on the polyobject doors on D2CTF4.
  • Fixed the skies on many of the CTF maps so that they scroll, as originally intended.
  • Fixed bug that prevented "Press space to see front/back" from showing up on the player setup menu in high resolutions.
  • Fixed problem where players' orientations weren't correct after using a teleport without fog in network games.
  • A_FireRailgunRight/Left now works correctly in multiplayer games.
  • Fixed bug where you couldn't pass arguments that had spaces in them using rcon.
  • Fixed bug where intermission animations would display in Doom 1 even when the Skulltag win/loss screen would display.
  • Fixed bug where if you joined a game while spectating through someone else's eyes, you continued to spectate through their eyes.
  • Fixed bug where the first player would always be the winner of a duel if a timelimit was set and time ran out.
  • Fixed the wallrun problem when the "plasma bump bug" or oldschool modes were set.
  • Fixed problem where if you tried to connect to a server that was full, you got a garbled error message.
  • Spectators no longer make the "oof" noise when slamming into walls.
  • Fixed problem where if you were spectating through someone's eyes, and they died, you wouldn't continue to spy through their eyes when they respawned.
  • Fixed the IDCHOPPERS cheat. It now works properly.
  • Removed the "no respawn" dmflag. It has been replaced by the new "last man standing" mode.
  • For items to respawn in cooperative mode, the "alwaysapplydmflags" cvar no longer needs to be set to true.
  • Slightly moved where the player who is in your crosshair's name is drawn so that it is not overlapped by "Waiting for players", "Spectating", etc.
  • Wads placed in the \BOTS directory are now automatically loaded.
  • Gamma has been changed from a human bot to being one of the robot bots. Cygnus is now who he used to be as a human.
  • Spectators are now skipped when using the spynext and spyprev commands.
  • Gave the "Skulltag" game mode its own cvar. Now, "teamgame" by itself is more generic.
  • In team games, players are now sorted according to their frags/points on the scoreboard.
  • When messages are off, you no longer hear the "beep" sound when someone talks.
  • Running a server with -private now merely makes sv_updatemaster false.
  • Changed the amount of time the server gives clients to send their checksum from 5 to 15 seconds. This will hopefully reduce instances of kicks due to "did not receive player's checksum".
  • Cheats can now be used in any single player mode (including DM and teamgames) without required sv_cheats to be enabled.
  • sv_updatemaster is no longer archived.
  • Each level in Skulltag now uses a unique music lump.
  • "connectiontype" now defaults to "cable".
  • Greatly cleaned up skulltag.wad. It ought to be much less of a pain to navigate now :) (Thanks XWE!)
  • Made some slight changes to the player setup menu to accomidate the "user info spam" functionality.
  • All the CTF maps included in Skulltag now use the simple CTF map standard.
  • The white flag now returns after 30 seconds in One Flag CTF mode, just like normal flags do.
  • Weapon switching on pickup is now forced in oldschool mode.
  • Oldschool now uses the old intermission screens and music, as opposed to the Skulltag ones.
  • The scoreboard and all its messages now display from the display player's point instead of view, instead of the console player's.
  • The Reflection rune now hurts the attacker with 75% of the damage done to the one with the rune, instead of 50%.
  • Made some tweaks to D2DM1, including minor visual changes and the removal of some health.
  • Changed D2DM2 so that you can no longer get up to the rocky waterfall area (and fixed missing textures that were previously viewable from up there).
  • Bringing up the "join game" prompt while a spectator is now always activated by hitting space, instead of whatever key "+use" was bound to.

v0.95k

  • Duels no longer restart when a spectator leaves the game.
  • Fixed problem where dropped flags were often invisible to clients not using the cable connection type.
  • Fixed problem where the duel countdown didn't show up on the client end after the duel limit is hit.
  • Spectators can no longer suicide.
  • Fixed glitched lift on D2CTF2.
  • The settings sv_forcepassword and sv_forcejoinpassword are no longer archived (meaning you have to explicitly set them to TRUE if you want them to be on when you launch a server).

v0.95j

  • The join queue now works in ALL gameplay modes; not just duel. So now, in packed servers, you can "wait in line" to play when all the server slots are taken. When a slot opens up, you will then automatically spawn in, instead of having to manually join the game.
  • Spectators can now pass through teleports. No more being stuck in the team selection room while spectating!
  • Added a Doom 64 guy skin. Thanks RottKing!
  • The room now lights up when you fire the railgun like with other weapons.
  • Added a missing announcer sound for the Perfect medal.
  • Added "Wins" display alongside "Rank" and "Spread" while dueling.
  • That annoying bug where a letter would rarely, randomly drop out while typing in a chat string should be fixed.
  • The time freeze sphere is disabled in multiplayer for now.
  • Fixed problem where the effect of the random powerup could be different on the client end from the server end.
  • Fixed a bug where dropped weapons were giving twice as much ammo as they were supposed to.
  • When a duel begins, any missiles fired during the warmup are now removed.
  • Fixed problems relating to duellimit. It should work fine now.
  • Fixed problem where you could have up to 350% armor with 150 max. armor bonuses.
  • Fixed a small bug where the fragcount would display on the scoreboard under the deaths column in teamplay DM.
  • Fixed some problems with the dynamic wad loading related to the MAPINFO lump.
  • You can no longer get Excellent/Incredible/Domination/Total Domination medals by fragging your teammates with friendly fire on.
  • Players who join a team and them spectate now lose their team affiliation.
  • Improved the gameplay and visuals of d2ctf6.
  • Improved the gameplay of D2ST2. The lifts have been sped up, and additional ammo and armor has been added.
  • Improved the gameplay and visuals of D2ST1. It is now more clear which team the bases and goal areas belong to, and an alternate path into each base has been added.

v0.95i

  • Added dynamic wad loading! Wads can now be loaded from inside Skulltag with the "load" command.
  • Added checksum checks on wads! Now, the server makes sure that players aren't using any cheat wads!
  • The ingame browser now automatically loads the appropriate wads when connecting to a server.
  • Upgraded Skulltag to ZDoom version to 2.0.60.
  • Added "Allow cheat skins" option. When off, players that use skins flagged as cheat skins will appear to have the default skin. Hissy, Doomcrate, Romero, and Daisy are considered cheat skins.
  • Added Victory and Perfect medals! Victory is awarded when you win a duel, Perfect is awarded when you win a duel with the other player having zero or less frags.
  • Added "You Skill Is Not Enough!" medal! This is awarded for dying 10 straight times without a frag.
  • Implemented join passwords! Servers can now set it so that players must have a certain password to join the game. sv_forcejoinpassword and sv_joinpassword control this on the server end.
  • Added the "duellimit" variable! Now, when this is set, the level will change after the number of duels equals the number you have "duellimit" set to.
  • Added an option to scale the scoreboard! The scoreboard now automatically stops scaling when a lot of stuff is being displayed on it so that everything fits onto it!
  • Filled in missing Daisy skin frames with dummy frames.
  • Added "r_drawweapon", which controls whether or not to draw your current weapon. Can be useful if you'd like to not draw your weapon while taking a screenshot, for instance.
  • Fixed major security hole where clients could rcon a server that didn't have a password set.
  • Fixed reported crashes.
  • Fixed bug where gibbed bodies would turn into normal corpses after the player respawned in network games.
  • Fixed co-op bug where if people connected to a server where monsters were already dead, and had a DSL connection type or less, they would see blood and missiles would explode if they shot over a corpse.
  • Fixed "double explosion" problem that would occasionally happen with missiles.
  • Fixed problem where players could hear the chainsaw idle sound from other players even when they weren't using the chainsaw.
  • Fixed problem where the railgun could shoot past "block everything" lines.
  • Fixed bug in the ingame server browser where you could not scroll down when there were more than 8 servers in the list.
  • Fixed bug where the face would sometimes not show up.
  • Fixed bug where occasionally, players would get a "Server is full" message when a slot was still left.
  • Fixed bug where there was an item on a lowered sector, new clients joining the game would see the item in the original, unlowered position.
  • Fixed bug where if you did "weapnext" or "weapprev" while spectating, the game would crash.
  • Removed the invisibility sphere from D2DM1.
  • Railgun shots that strike team members no longer go toward earning Impressive and Most Impressive medals.
  • Made it easier to read chat strings in the console.
  • You can no longer kill yourself during intermission.
  • Cvar "password" changed to "cl_password".
  • Disabled the "kill" console command in oldschool mode.
  • The "no exit" dmflag is now applied in oldschool mode. Also, if you try to hit the exit switch while "no exit" is on, the switch will simply not work instead of killing you (oldschool only).
  • The behavior of the "allow instant respawn" compatability flag is now always applied in oldschool mode.

v0.95h

  • Added the in-game server browser.
  • Greatly revamped the DUEL gameplay mode! Now, players can wait in line and join once the current duel ends. Also, instead of the level changing when a duel ends, the loser is kicked into the spectators, and the next person in line joins him!
  • Dramatically improved the player prediction. Movement is now much less jerky, especially on high ping servers!
  • Skulltag now broadcasts server information, meaning that if a launcher (such as the in-game browser) listens properly, it can pick up servers on a LAN! (Translation: If you host a server on a LAN, and browser for local servers in the in-game server browser, it will show up!)
  • Added sv_duelcountdowntime, which controls how long a duel counts down in seconds.
  • Upgraded Skulltag to ZDoom version 2.0.57.
  • Skulltag can now go between client mode and single player mode without having to restart.
  • Now, if users launch a server with "-host #", "#" will become the maximum number of clients.
  • Made a slight tweak so that plasma bumping on MAP01 behaves exactly like doom2.exe when the plasma bump compat flag is set. (Thanks cph!)
  • Added dmst-duel.cfg and dmclassic-duel.cfg to the install package.
  • Fixed problem where BFG9000 sprays were being done on the client end if you had connection type at 56k or DSL.
  • Fixed all reported crashes.
  • In co-op, game boes back to the initial episode map after getting to a finale of some sort.
  • Fixed problem where scaled skins didn't appear to be scaled in multiplayer.
  • Fixed overlapping text problem that occured when some messages were displayed in video modes where the width isn't a multiple of 320.
  • Fixed problem where rejoining a teamplay DM server resulting in your saved number of frags being readded to the frag total.
  • Icons now inhereit the render properties of their tracers. (ex. If you have an invisibility sphere, your icon will appear invisibile too).
  • The quit and exit console commands can no longer be called with the ConsoleCommand ACS function.
  • You frag total is no longer subtracted from the team frag total when you go into spectator mode.
  • Summon cheats now work in multiplayer if sv_cheats is enabled.
  • Sound is now played even when the window is not in focus.

v0.95g

  • Upgraded Skulltag to ZDoom version 2.0.53.
  • Made a massive fix to speed up item spawning on the server end. This results in much smoother, less laggy games. (Especially in levels with tons of objects. Co-op games should be MUCH better now.)
  • Made large optimizations to how sectors work over the network. They are now smoother and less laggy!
  • Applied "connection type" to ALL weapons. 56K users are simply told when a weapon is fired, and by who. DSL users are told that, and the actual XYZ, angle, and pitch of the shot, so they can recreate the shot on their end. Cable users get the information about each actual pellet or missile spawned by the weapon firing. The higher the connection type setting, the higher the precision, and the higher bandwidth used.
  • Added sv_maxplayers, which limits the amount of active players in the game. People who join the game beyond this limit spawn as spectators.
  • Added a trail effect for when players have the turbosphere or haste rune.
  • Added field for the password that clients use to connect to passworded servers to the multiplayer menu.
  • Added new compatibility flag that enables the original Doom sound curve.
  • Add safety measures to the ConsoleCommand ACS function.
  • Applied logic for all dmflags that I hadn't gotten around to doing.
  • Added option to start as a spectator when connecting to servers. The option can be toggled via the multiplayer menu.
  • Drain and reflection runes now work properly.
  • Spread now works with all Heretic and Hexen weapons.
  • Added "taunt" to the customize controls menu.
  • Added con_textcolor, which allows disabling of color for text strings.
  • Added chat flood protection. Now, players who spam servers with chat strings get kicked.
  • TakeInventory called by server-side scripts now shows up properly on the client end.
  • Improved spying through other people's eyes while in spectator mode.
  • Added "plasma bump bug" compatibility flag. When this is enabled, plasma bumping on MAP01, BFG bumping on dwango5.wad MAP01, etc. work "properly".
  • Objects spawned by server-side scripts through Thing_Projectile now work.
  • Added blue/red leads, teams are tied announcer events for teamplay DM mode.
  • Added HUD display for team scores during teamplay DM mode.
  • Added limited support for Heretic/Hexen weapons over the net.
  • Item respawning has been moved more towards the server end. This removes item respawn problems under certain conditions (ie. item respawn in cooperative).
  • While spectating, players' whos eyes you spy through, now display the proper view and weapon bobbing.
  • Added "disable taunts" compatability flag. This is important because before, the silent BFG effect was triggerable by taunting.
  • Fixed major server crash where if the level remained unchanged for more than a day or so, and someone joined, it would crash.
  • Desaturated sectors now appear that way on the client end.
  • Fixed connection problems related to the level being loaded, without having gotten the player spawning packet(s) yet.
  • Change music functions called by server-side scripts now work on the client end.
  • Fixed problem where if a texture was changed to "-" during the course of a level, it would not show up correctly for connecting clients mid-level.
  • Fixed problem where going into spectator mode while carrying an important object such as a flag or the terminator, would result in the object disappearing for good.
  • Textures that have changed during the level are now updated to joining clients.
  • Fixed problem where typing a chat string with a % sign would would result in a bunch of different characters instead of the actual % sign.
  • Fixed bug where the joystick would not work in multiplayer games.
  • Fixed bug where if you fired plasma against the wall, it didn't appear to come out at all on the client end.
  • Fixed rcon problems related to the "map" command.
  • Fixed problems with "floating missiles" when connecting to servers.
  • Made fix to make the BFG firing sound play at the proper time on the client end.
  • The HealThing function called by server-side scripts now works.
  • Fixed problem where if the was packet loss on the server end, your missiles would appear to come out at the wrong pitch.
  • Fixed problem where if you were spying through the eyes of another player during coop, spectator mode, etc., and they disconnected, Skulltag would crash.
  • Players now grunt and have their view height shift when hitting the ground hard on the client end.
  • Fixed bugs where weapons appeared to be cleared between levels in co-op, but that really isn't the case.
  • Fixed bug where spectators did not show up on the scoreboard in teamgame mode.
  • Icons now spawn directly over the player instead of at their feet (with framerate uncapped, medals in pervious versions would "float" up to the top of the player).
  • Fixed memory leak related to sound on program exit.
  • Voodoo dolls now work again.
  • Fixed problem where enter scripts would only execute for one player.
  • Fixed problem where sometimes "YOU NEED THE <RED, YELLOW, BLUE> KEY" messages sometimes did not appear on the client end.
  • Fixed problem with obituary messages for custom wads where when players' had colored names, their color would persist to the end of the message, instead of reverting back to gold.
  • Fixed problems where dropped dehacked pickups would appear to not disappear over the client end.
  • Clients now receive dmflags, etc. updates if server updates them using "sv_nomonsters", etc. commands.
  • Fixed bug where if the "no monsters" flag was set, and a co-op level was being played on, the monsters still spawned, and appeared to stand in place on the client end.
  • Added unique spawnable codes for the dark imp fireball and cacolantern fireball.
  • Fixed problem where picking up dehacked items on the client end would not make them disappear.
  • Fixed problem where score ladder on D2ST2 occasinally could not be climbed.
  • Flag return ticks are now reset after each level.
  • Fixed problems relating to being permently frozen if you're in time freeze mode, and restart the level.
  • Monster pain chance is now no longer factored into the client end.
  • Fixed telefrag bug where you appeared to be dead on the client end, but were still alive.
  • Normal player sounds are now played when cl_skins is false. Before, even though the player sprite was normal, the sounds associated with the skin would still play.
  • Fixed problem where the silent pickups compatability flag wouldn't work if the silent BFG compatibility flag was enabled.
  • Autoaim now always works in oldschool mode.
  • Fixed a number of minor co-op bugs.
  • Removed cl_noalpha. Turns out it just duplicated the effect of r_drawtrans.
  • Regeneration and degeneration are no longer handled on the client end.
  • Objects are now always infinitely tall in oldschool mode.
  • Players in cooperatvie mode are now considered teammates. The teamdamage cvar now affects how much you can damage your teammates.
  • Text lines are no longer broken up into two or more lines if they're too long to fit the screen in oldschool.
  • The console is now available in oldschool mode.
  • Servers can now enable sv_cheats, allowing cheats.
  • Made r_drawtrans settings save to config file, instead of being set to the default each time Skulltag is loaded.
  • Changed chatting in oldschool mode so it more closely resembles normal chatting.
  • Changed grunt when pushing against a wall to being client-side (of course, other clients still hear the sound).
  • Changed grunting when landing the ground to being client-side (of course, other clients still hear the sound).
  • Split up the "Cable/DSL" connection type into two seperate types. Now, if both the server and client have at least a cable connection, SSG pellets will appear in exactly the right place, as opposed to their position being generated on the client end. (WARNING: This takes a LOT of bandwidth! Only do this if you're hardcore!)
  • Slightly lowered the volume of the firing sound for the minigun.
  • Railgun and BFG10K now produce decals.
  • Missiles now spawn with the exact correctness of speed, position, and angle on the client end if both the server and client have at least a cable connection.
  • Custom names are now allowed in oldschool mode (no more "Green", "Indigo", etc.).

v0.95f

  • If the client cannot connect due to the version different, the server says which version it's using.
  • Made some more optimizations to the player movement network code, so the same results are acheived with less bandwidth (translation: less lag).
  • Added new fireball graphics for the cacolantern.
  • Underwater movement is now far less jerky.
  • Sounds triggered by server-side scripts now work.
  • Fixed connection problem where a bunch of garbage would spew in the console, and you'd get a "Waiting for server..." message.
  • Fixed crash on client end that would happen if the server told the client to print an invalid type of HUD message (never really should happen).
  • Fixed "flashing red screen" problem.
  • Chat prompt is now visible for people using "scale text in high res".
  • Pistol was being fired both client-side and server-side. Now it is only fired server-side.
  • The BFG10k shooting is now server-side (before, the gun would appear to fire on the client end, but other players wouldn't see the shot).
  • The BFG10k shot and the BFG9000 shot had the same spawnable code for scripts. This has been changed (BFG10K shot is now 217).
  • Fixed problem where GiveInventory called by server-side scripts would spawn a version of the item on the client side that could not be picked up.
  • Fixed problem where drain and rage icons were mixed up on the status bar in fullscreen.

v0.95e

  • Greatly reduced occurance of connection error occasionally experienced by clients.

v0.95d

  • Added this file.
  • Added "connection type" field to the player setup menu, and "sv_connectiontype" for servers, which determines how precise the data sent back and forth between the server and client is.
  • Added cl_showcommands, which displays all commands coming to the player from the server.
  • HUD messages called by scripts run on the server end now show up on the client end.
  • Actor and player properties set by server side scripts are now sent to the clients.
  • Now when switches or lines change a sector's light level, it is sent to the clients.
  • Dormat objects now appear that way on the client end.
  • Give inventory commands called by server scripts are now reflected on the client end.
  • Added "<team> has won" to the teamgame intermission screen.
  • Textures now set by server side scripts now show up on the client end.
  • Line transparency set on the server side now shows up on the client end.
  • Fixed two problems after level change: One where a player's names, skins, etc. would be applied to another player, and where players would bomb to the console with a "no player # start" error message.
  • Fixed problems with "double vertical" and "double horiz and vert" detail modes, and all other reported crashes.
  • Clients no longer play "blue leads, red flag taken," etc. messages when connecting to an active CTF/ST server.
  • Fixed ANIMDEFS lump so switches in Hexen now change graphic when activated.
  • Having cl_identifytarget on no longer activates lines activated by shooting when your crosshair is over that line.
  • Flags crushed by sectors are now returned.
  • If a flag is now slightly within a wall, ceiling, etc. it now spawns anyway. (Before, on d2ctf5, the blue flag would not return if the trap lift was up, making it gone permanently.)
  • Fixed flag respawn problems and missing texture on d2ctf5.
  • Fixed mancubus firing.
  • Weapons are now cleared after intermission in DM, CTF, etc. games.
  • Fixed problem where the railgun color was always blue until you changed it.
  • Railgun shots that don't strike a player now actually reset your consecutive railgun hits total.
  • Player's medals and points (in a teamgame) are now not cleared until the new level begins. Now you can see your score, and the medals you racked up on the level during intermission!
  • Dropped flags that have not been returned now result in a "?" flagstatus on the HUD for that team onthe client end.
  • Got rid of "You fragged <name>", "You were fragged by <name>" messages in oldschool.
  • Defaulted the item respawn and spawn farthest dmflags to OFF when Skulltag is ran with -oldschool (that's altdeath).
  • Players' current team is now reset after intermission.
  • Color codes are now stripped out of the text in the server window.
  • Changed spectator mode so that powerups are cleared once you enter spectator mode. (Before, if you had the doomsphere and would spectate, you appeared to still have the powerup (indefinitely).)
  • Move up/down keys now work in spectator mode.

v0.95b

  • Upgraded Skulltag to ZDoom v2.0.47q
  • New CTF level! d2ctf6: Ruins of Blood
  • Two new Skulltag levels! d2st1 and d2st2
  • Spectator mode added! Players can now spectate on other games!
  • New weapon added! The minigun.
  • New monster! The Belphegor (third level hell knight).
  • Added the ability to handicap yourself in DM/CTF.
  • Co-op is now supported! Includes scoreboard changes.
  • New duel deathmatch mode added! Designed for 1 on 1 deathmatch.
  • Third episode of Skulltag now selectable through the menu.
  • Nicer fadeout on medals.
  • Added cl_icons and cl_medals, which are options to disable icons and medals.
  • Also added cl_skins, for disabling skins.
  • Skirmish menu now allows selecting of levels added from MAPINFO lumps.
  • Added shootable versions of the invisible bridges. Useful for room over room with Transfer_Heights.
  • Did basic Skulltag tweaks for Hexen support (That's right, since Skulltag is now based on ZDoom v2.0, it now works with Hexen!).
  • More frames for the SSG guy.
  • Dark Imps, Cacolanterns now have sprites.
  • New fireball for the Dark Imp.
  • Detail has been increased on d2dm1 and d2dm2.
  • Added a display option to turn down the intensity of blood on the screen.
  • Fraglimit is no longer factored into team games.
  • Player can now taunt and jump at the same time.
  • Changed method of calculating rank. Should be more accurate now.
  • Dark Imps and Cacolanterns now fire faster projectiles.
  • Changed how Incredible medals are awarded. It is now given if you get a frag within two seconds of getting an Excellent, instead of getting two frags within two seconds of getting an Excellent. They should be more common now.
  • Changed the Doomsphere duration from 30 seconds to 25 seconds.

v0.94c

  • Added new level! d2ctf5: Massmouth Mansion
  • Skulltag now works with Doom 1.
  • Added "You're tied for/You've taken/lost the lead" announcer events.
  • Added megasphere, soulsphere, and "You win" announcer events
  • Added new item: Massmouth statue
  • Added new "sv_defaultdmflags" cvar, which when turned off, will NOT use the default dmflags for a DM, CTF, etc. level set by Skulltag.
  • Added MOD for killing yourself with the BFG10K.
  • Fixed +moveup and +movedown in client/server games
  • Fixed the scoreboard so number of points left in team games displays
  • Fixed problem where if you switched from a CTF level to a DM level, the "Welcome to CTF" sound would still play.
  • Skulltag now updates the master server right away whenever you change the master server IP.
  • Fixed problem where Skulltag couldn't load certain PWADS with custom textures (ex. gothic2).
  • Fixed "Unknown item" problem with dropped pistols and BFG10Ks.
  • Fixed sound bug in terminator mode.
  • Fixed problem where sounds would become out of sync if the server or client didn't have the same skins or announcer wads loaded.
  • Announcer wads placed in the /ANNOUNCER directory are now automatically loaded.
  • Replaced the "-maxclients" command line parameter with the "sv_maxclients" cvar. It can be changed without restarting the server.

v0.94b

  • Announcer suuport. You can select the announcer in the player setup menu.
  • Two new levels:
    • d2dm3: A 1v1 map with a steep learning curve. Not reccommended as part of your map rotation.
    • d2dm6: All-around lots of fun!
  • Linux version for running servers.
  • Greatly increased stability on newtork games.
  • Support for IDE (Internet Doom Explorer). Doom Connector support will be done within days.
  • Map rotation. Works the same way as ZDaemon and csDoom's map rotation. addmap, clearmaplist, and maplist are all valid commands. Can also be toggled on and off with the cvar "sv_maprotation".
  • MOTD support. Simply set the "sv_motd" cvar.
  • New weapon! The BFG10K.
  • Now supports playing with *MOST* textured wads (darkening e2, HR2, etc). Some still have a problem.
  • The initial sprites for the Super Shotgun Guy.
  • Updated music selections on some maps.
  • Wadauthor and ZETH configuration files for making maps for Skulltag.
  • Minor tweaks to the firing frames of the railgun.
  • Doors now close all the way.
  • The "You Fail It" medal, which you receive when you die 5 times without getting a single frag.

v0.93

  • A new level, d2dm5, is included.
  • One flag CTF mode has been added. A placed yellow skull becomes the white flag.
  • Custom bots can now be added. ... of course, since the bots don't do anything, I won't bother going into how this is done right now. However, if you're REALLY curious, look at the BOTINFO lump in skulltag.wad. You'll see the one custom bot that has been added to skulltag, "crackwhore". heh. She will be promptly removed in the next version :)
  • Network code should now be significantly more stable.
  • Skulltag can now be ran with -ctf or -onectf, which will setup a teamgame (-teamgame), and change the skull graphics into flags.
  • Other wonderful, fabulous stuff!

v0.92

No changelog available.

(Bugfixes, probably.)

v0.91

No changelog available.

(Bugfixes, probably.)

v0.90

This is not an official changelog, it is based off of difference in the stmanual.doc file provided in this version.

  • Fix bot AI
  • Fix railgun reload problems
  • Fix only being able to type in new "ST" codes at the console.
  • New medals:
    • "Precision!": Given for making 10 consecutive hits with any weapon.
  • New? gamemodes:
    • Terminator: Variant of deathmatch where players try to kill the "terminator."
    • Oldschool: Variant of deathmatch that simulates the doom2.exe style of deathmatch, right down to the silent BFG!

v0.81

No changelog available.

(Bugfixes, probably.)

v0.80

This is not an official changelog, it is based off of difference in the stmanual.doc file provided in this version.

  • Add multiplayer?
  • Add gamemodes?:
    • Normal: Kill monsters, find keys. All that good stuff.
    • Deathmatch: The standard mode of deathmatch we all know and love.
    • Teamplay: Variant of deathmatch where players play in teams.
    • Instagib: Variant of deathmatch where all players start off with only the railgun, and one shot kills your enemies.
    • Survival: Variant of deathmatch where you lose a frag whenever you die (defense is important!)
    • Scoremode: Variant of deathmatch where players are given different amount of points for their frags, depending on the difficulty of the kill. Points are also awarded for receiving medals.
    • Teamgame: Divides all players up into two teams for games like Capture the Flag, Skull Tag, and Domination.
  • New medal:
    • "Total Domination!": Given for getting 25 consecutive frags without dying.


v0.71

This is not an official changelog, it is based off of difference in the stmanual.doc file provided in this version.

  • Fixed bot crashing
  • Fixed status bar
  • Fixed the "Skull Tag v0.6 beta" message that displays at the bottom
  • Fixed having to do "skulltag -file st.wad" instead of just having to type "skulltag" at startup


v0.6

  • Initial release.
  • New dmflags (dmflags2):
    • Impaling damage: Causes the player to become impaled when landing on sharp objects.
    • Drop weapons (DM/ST): Causes the player to drop their current weapon when killed.
    • Allow runes (DM/ST): Allows runes to be spawned on the current level.
    • Instant skull return (ST): Returns the skull to its origin instantly after being dropped by a player.
    • Return sitting skulls (ST): Returns dropped skulls to their orgin after sitting on the ground for a certain period of time.
    • Use team colors (ST): Forces player's color to be the player's team color.
    • Allow team switch (ST): Allows player's to switch teams at will.
    • Random teams (ST): Automatically places a player on a random team when he enters a game.
    • Drop runes (DM/ST): Causes the player to drop his rune when killed.
    • 200% health/armor max.: Prevents max. armor and health bonuses from giving you health or armor above 200%.
    • Double ammo: Gives the player double the amount of ammo he normally receives from items.
    • Clear frags (DM/ST): Resets frags at the beginning of each level.
    • No respawn (DM/ST): Prevents the player from respawning when killed.
    • Degeneration (DM/ST): Causes the player to slowly lose health when above 100%.
    • Lose frag when killed (DM): Causes the fragged player to lose a frag.
    • No BFG freeaiming: Causes the BFG to always fire straight.
    • Barrels respawn (DM/ST): Allows barrels to respawn like normal items.
    • Invulnerable on respawn (DM/ST): Grants temporary invulnerability to players who have just respawned.
  • Medals:
    • "Excellent!": Given for getting 2 frags in under 2 seconds.
    • "Incredible!": Given for getting 2 "Excellent!"'s in under 2 seconds.
    • "Impressive!": Given for making 2 consecutive hits with the railgun.
    • "Most Impressive!": Given for making 4 consecutive hits with the railgun.
    • "Accuracy!": Given for making 10 consecutive hits with any weapon.
    • "Domination!" Given for getting 10 frags without dying.
    • "Llama!" Given for killing someone while they're typing.
    • NOTE: Some of these don't work yet.
    • ANOTHER NOTE: There's more that I'm just not mentioning now :)
  • New command line switches:
    • -deathmatch2: Causes deathmatch to be loaded with a few more dmflags turned on, including respawn invulnerability, and losing a frag on death (note: I call this "survival deathmatch").
    • -teamgame: Causes the game to be loaded in teamgame mode.
  • New console commands:
    • netgame/multiplayer: Enables fake multiplayer mode (no level reloaded when killed, etc).
    • botchat: When set to 0, bots will not chat.
    • botskill: General bot skill level (doesn't quite work yet :P)
    • idkfa/idfa: Same as typing the codes in during the game, only they can now be bound to a key.
    • pointlimit: Sets pointlimit for teamgame levels
    • railcolor <0-9>: Sets your railgun trail color. (NOTE: I'll allow strings for this soon).
    • teamcolor: Sets player's team color
    • teamname: Sets player's team name

Sources