Skulltag 98e alpha news in english.
User avatar
Posts: 631
Joined: 30.11.2003 04:00
Location: Zagreb, Croatia

Skulltag 98e alpha

Post by fx » 08.03.2011 18:50

c/p from Skulltag forum:

"This builds contains a change that tries to fix the age old weapon sync issues that happen immediately after (re)spawning. Please test thoroughly!

Torr Samaho
Fixed: When checking the length of a player name, the length of color codes was miscounted.
The linux binaries are now compiled with -fno-stack-protector in order to increase compatibility with distros using older glibc versions.
Fixed: Under some (other) circumstances a client wrongly displayed an "in console" icon over a player's head.
Fixed: Trying to pick up a white flag in one flag CTF while already carrying a white flag gave a point.
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".
Fixed: Newly connecting clients were not informed whether existing corpses were gibbed.
Fixed: The ACS commands SetActorProperty( APROP_Gravity ), SetGravity and SetAircontrol didn't work properly online.
Fixed client / server weapon sync issues after spawning / respawning.
Fixed: The server didn't inform the clients about the weapon changes of bots.
Fixed: Savegames didn't retain the multiplayer emulation state.
The compatflag compat_oldweaponswitch now also restores the weapon switch cancellation behavior from Vanilla Doom.
Fixed: When a player carrying the terminator sphere/hellstone disconnected the terminator sphere/hellstone wasn't dropped.
Fixed: Under certain rare circumstances the clients displayed friendly fire obituaries in DM."

Read more on official Skulltag forum.

User avatar
Posts: 631
Joined: 30.11.2003 04:00
Location: Zagreb, Croatia

Re: Skulltag 98e alpha

Post by fx » 05.04.2011 10:03

New alpha version: 98e-alpha - Build 3136

Added new CVAR cl_respawnonfire that allows the player to decide whether to respawn when pressing the fire key.
Fixed: Under certain circumstances killing a bot could give the killer a Llama medal.
out of sequence fix backport from GZDoom revision 873: Fixed: A_RestoreSpecialPosition did not handle 3D floors and 3D mid textures correctly.
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.
3D floors are available in competitive modes now
removed the "no 3D floors in software" warning
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.
Fixed some problems with the client side Z positioning of players online.
Fixed: Removing a morphed bot crashed the game.
Fixed: When a player tried to join a team from a team selection room online, the server crashed.
Fixed some client side problems that happened online when a client connected while one of the in game players was morphed.
Fixed some coop spy issues that happened online in levels with a team selection room.
out of sequence fix backport from ZDoom revision 2239: Fixed: ClearActorInventory used the wrong stack index to get its parameter.
Fixed: Newly connecting clients were not informed about flag changes (compared to the initial spawn values) of the player bodies already in the game.
Fixed: PowerupGiver items with PowerMorph were not removed from the local inventory of a client online when they were activated.

User avatar
Posts: 631
Joined: 30.11.2003 04:00
Location: Zagreb, Croatia

Re: Skulltag 98e alpha

Post by fx » 19.04.2011 21:37

98e-alpha - Build 3172

* added a patch form kgsws to fix a problem with software 3D floors that also ZDoom was having
* Fixed: kgsws' original patch for GZDoom 323 was missing some things from ZDoom's 3dfloors2 branch. This seems to fix the resolution dependent crashes Skulltag was having.
* Fixed a few more discrepancies between the software 3D floors code from ZDoom's main trunk and the patch kgsws made for GZDoom 323
* Added sv_maxlives support for lastmanstanding and teamlms.
* Fixed: Players lost a life when being spawn telefragged in survival invasion.
* Fixed some problems with the Z positioning of map spawned actors on 3D floors after a map reset.
* Fixed: Offline, the player could join in progress survival and survival invasion games with the "join" command.
* Fixed: Offline, the player could join in progress teamlms games with the "team" and "changeteam" commands.
* Fixed: After a "changemap" map change in survival invasion online, an in game player was possibly forced to spectate.
* out of sequence fix backport from ZDoom revisions 2188 + 3130:
o Fixed: snd_musicvolume needs to check GSnd for NULL, since somebody might have set an atexit for it, which gets executed after the sound system shuts down. (actually Skulltag already indepenently from ZDoom got this fix a long time ago, I just removed some white change differences here now)
o Fixed: FPlayList::Backup() failed to wrap around below entry 0 because Position is unsigned now.
o Fixed: Fake floor's validcounts were not initialized.

User avatar
Posts: 631
Joined: 30.11.2003 04:00
Location: Zagreb, Croatia

Re: Skulltag 98e alpha

Post by fx » 02.05.2011 08:57

Skuilltag 98e alpha build 3216:

* Fixed: The disconnect command sometimes crashes the game under Linux.
* Fixed: Switch sounds were played with the wrong z position online.
* Fixed: Adding a bot in a team game on a map with a team selection room could crash the game.
* Fixed: When a player turned into a spectator, he didn't lose his medals and the current medal progress wasn't reset.
* Fixed some discrepancies between (T)LMS and the other game modes that support sv_maxlives.
* 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.
* Fixed some problems online when sv_maxplayers is increased while players are in the join queue.
* Fixed: If a team won a round in teamlms after the game entered sudden death, this team possibly wasn't awarded a win.
* 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.
* Fixed: When sv_maxlives was reduced to 0, clients didn't reset their current displayed lives left after a "map" map change.
* Revised how sudden death works in LMS: Now the player with the most lives wins. If more than one players has the most lives, of those the one with the highest health is selected.
* Fixed: Sudden death in TLMS ended when all enemies were dead even if some of them had still lives left.
* Fixed: Clients mispredicted the Z position of things respawning above a 3D floor.
* 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).
* out of sequence fix backport from ZDoom revision 3191: Apply 3dfix2 and 3dfix3 (by hand, again).

User avatar
Posts: 631
Joined: 30.11.2003 04:00
Location: Zagreb, Croatia

Re: Skulltag 98e alpha

Post by fx » 13.08.2011 19:13

Skulltag 98e still in alpha but new revision 3299 is out:

The CVAR fraglimt now can't be made bigger than 32767 (SHRT_MAX) anymore.
The CVAR timelimit is now limited to the same range as fraglimt, i.e. [0,32767].
Fixed: When a server admin tried to set the CVAR fraglimit to a value beyond its bounds, the "fraglimit changed to" message appeared twice.
Fixed: Newly connecting clients were not informed about the cheats players already in game have.
If a spectator uses "team/changeteam teamname" during intermission, he is now put on the join queue instead of the command being ignored completely.
spectator clients trying to use the changeteam command without arguments are now informed that they can't toggle the team
Fixed: "compat_silentpickup" had no effect if "compat_soundslots" is true.
unified how the different gamemodes handle the reset of level.time during a map reset by introducing the new gamemode flag GMF_MAPRESET_RESETS_MAPTIME
Fixed: Savegames didn't store the player's team.
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.
Fixed: Clients didn't set am_cheats to 0 after a "map" map change if sv_cheats was changed from to true to false.
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.
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.
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.
Fixed some problems with unlagged when the player was standing on a 3D floor.
some small improvements in the medal code
Fixed some problems with the client side Z-position of respawning items after a map reset.
Fixed: In duel "cl_startasspectator 0" didn't work if there was already a player in the game when the new client connected.
Fixed: If a player carrying a flag/skull/terminator sphere/hellstone dies while being awarded a medal, the medal is announced a second time.
Fixed a potential crash when using changemap during intermission in a team game.
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.
Fixed: When possession entered sudden death online, the sudden death message was not displayed properly on the clients.
Fixed: If a player respawned while being awarded a medal, the medal icon turned invisible.
Fixed: If the second last player leaves a possession game, the current round is not stopped.
The timelimit counter is now also hidden on the score board in possession while the game is not in progress.
Fixed: When adding a bot it used the handicap value of the player who previously occupied the player slot.
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.
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.
Fixed: Clients possibly mispredicted the Z position of other players that were standing close to a sector boundary.
Fixed: "cl_showlargefragmessages 1" was ignored in (T)LMS if fraglimit was bigger than zero and the player had at least "fraglimit
1" frags.
If a client isn't allowed to know the health of another player due to the gamemode, the mugshot of these players through coop spy is displayed as if the player had full health.
Fixed: After a changemap map change a client with switchonpickup != 1 possibly selected the wrong starting weapon.
Fixed a problem with the client side prediction for a high ping clients (250+) on low gravity servers (sv_gravity 200).
Considerably improved client side prediction when the player is standing/jumping/moving/landing on another actor, e.g. a bridge thing.
fixed a another discrepancies between the software 3D floors code from ZDoom's main trunk and the patch kgsws made for GZDoom 323
Fixed: InterpolationPoint didn't work online anymore.
fixed problems with staring a new survival/lastmanstanding/teamlms game offline from the command line with "-warp"
Fixed: Sudden death didn't work properly in LMS.
Fixed some problems with the Z positioning of map spawned actors not on 3D floors after a map reset.
Added a workaround to hopefully let CheckWeapon return something reasonable on the server even before the client selected his weapon.
Fixed: Clients with cl_startasspectator == 0 were not informed about which weapons the players already in game are using while joining the server.
made the behavior of cl_showlargefragmessages consistent online and offline
Fixed: When a sector movement was triggered by an unlagged client shooting at a linedef, the sector movement was possibly messed up.
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.
added code that will make a map reset accessible with an ACS function
Further improved weapon sync online after "changemap" map changes. In particular, this should fix the sync problems triggered by "compat_oldweaponswitch 1".
Fixed: When respawning or teleporting the client side prediction didn't clear the old movement commands recorded before the respawn/teleport.
fixed a small problem in the prediction (never try to predict more tics than we store)
Considerably improved client side prediction after respawning and teleporting.
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.
Fixed: The server didn't select a weapon for players in APlayerPawn::FilterCoopRespawnInventory that were still loading the map.
added a workaround to prevent clients from ending up with no weapon on the server in coop after a "changemap" map change
further improved the weapon sync after changemap map changes online
out of sequence fix backport from ZDoom revision 2661, 3195, 2971, 2030, 3221, 3242:
Disable framebuffer debug spew. All those OutputDebugString messages from DCanvas::DrawLine()'s Lock and Unlock calls were slowing things down extremely when looking at a software-drawn automap.
Fixed: DDrawFB::Lock() should only act on NeedResRecreate when going from LockCount 0 -> 1.
Fixed: When DDrawFB::Lock() has to recreate resources, it left the LockCount at 0. This causes problems if something else locks it before it is unlocked, because the second locker will think it is the first. This happens in R_RenderViewToCanvas(). See DDrawFB::PaletteChanged() for the most common reason why Lock() would need to recreate resources.
Fixed: DDrawFB::CreateSurfacesComplex() had debugging cruft left in that skipped all but the last attempts.
Fixed logging of video debug info to a file to not multiply define dbg.
Fixed: The minimum velocity for player landing in effects in P_ZMovement should be -8, not -9.
Fixed: Using Transfer_Heights with the SECF_UNDERWATER and SECF_FAKEFLOORONLY flags applied the water effect to the ceiling and not just the floor.
added kgsws's 3D floor textute rotation fix.
Fixed: In gccinlines.h, the alternative for DivScale32 that took idiv's parameter in memory did not mark eax as an early-clobber register, so GCC might decide to pass the memory address in eax, and it would get clobbered by the inline assembly before fetching the value to divide by.
But rather than fix it by adding another '&', I have opted to mark it as in/out and do the zeroing outside the inline assembly, so GCC has maximum flexibility for scheduling the code.
General improvements to announcer code to allow for default announcer sounds.
Added AnnouncerSound(str entry, int flags) function to allow custom announcer events.

Link to official forum and post.