MantisBT - Zandronum
View Issue Details
0004402Zandronum[All Projects] Bugpublic2024-08-27 20:162024-09-05 18:47
unknownna 
Kaminsky 
normaltextalways
resolvedfixed 
3.1 
3.23.2 
0004402: Missing "next round in" message during countdowns in (team)possession since 3.1
See the attached screenshot. It no longer prints "next round in..." in the possession modes anymore since 3.1. It only prints "possession" every round now.
I'm not sure whether it was changed intentionally, but it's certainly different from before, so I'm reporting it just in case.
I wonder if the message should be added back and added to the LMS modes as well.
No tags attached.
png Screenshot_Doom_20240827_220502.png (46,963) 2024-08-27 20:16
https://zandronum.com/tracker/file_download.php?file_id=3106&type=bug
png
Issue History
2024-08-27 20:16unknownnaNew Issue
2024-08-27 20:16unknownnaFile Added: Screenshot_Doom_20240827_220502.png
2024-09-02 20:18KaminskyNote Added: 0023995
2024-09-02 20:18KaminskyAssigned To => Kaminsky
2024-09-02 20:18KaminskyStatusnew => needs review
2024-09-02 20:18KaminskyTarget Version => 3.2
2024-09-05 13:12unknownnaNote Added: 0024002
2024-09-05 13:12unknownnaStatusneeds review => feedback
2024-09-05 15:36KaminskyNote Added: 0024008
2024-09-05 18:47unknownnaNote Added: 0024012
2024-09-05 18:47unknownnaStatusfeedback => assigned
2024-09-05 18:47unknownnaStatusassigned => resolved
2024-09-05 18:47unknownnaFixed in Version => 3.2
2024-09-05 18:47unknownnaResolutionopen => fixed

Notes
(0023995)
Kaminsky   
2024-09-02 20:18   
I restored the missing "next round in..." message in (team) possession and added the same message to (team) LMS. Here is the merge request:'https://foss.heptapod.net/zandronum/zandronum-stable/-/merge_requests/184 [^]'
(0024002)
unknownna   
2024-09-05 13:12   
I tested it and it seems to work well, and the message feels like a welcome addition to the LMS modes, great job!

But I noticed a small separate oddity. The game does this check in lastmanstanding.cpp, line 113-116:
// [AK] Set the state back to waiting for players if there's not enough
        // players and we're in the pre-next round countdown state.
        if ((( lastmanstanding ) && ( GAME_CountActivePlayers( ) >= 2 )) ||
            (( teamlms ) && ( TEAM_TeamsWithPlayersOn( ) > 1 )))


If a player spectates during the round, a win is awarded to the opposite player/team. If the same player joins the game again during the win sequence, the "next round in..." message will appear again, because the game didn't go into a "waiting for players" state even though there was only 1 player left during the win sequence. The game seems to count players in the join queue as active players or something. Is this intentional? If so, it's ok and we mark it as resolved and move on.
(0024008)
Kaminsky   
2024-09-05 15:36   
Quote from "unknownna"
If a player spectates during the round, a win is awarded to the opposite player/team. If the same player joins the game again during the win sequence, the "next round in..." message will appear again, because the game didn't go into a "waiting for players" state even though there was only 1 player left during the win sequence. The game seems to count players in the join queue as active players or something. Is this intentional? If so, it's ok and we mark it as resolved and move on.


This is how I intended it to work and should actually be consistent to how the PSNS_PRENEXTROUNDCOUNTDOWN and PSNS_NEXTROUNDCOUNTDOWN states behave in possession. The only time the game mode should return to GAMESTATE_WAITFORPLAYERS is when there's not enough players left to start the next round after the win sequence ends.
(0024012)
unknownna   
2024-09-05 18:47   
Ok, in that case everything works as intended.