Anonymous | Login | Signup for a new account | 2025-04-18 06:51 UTC | ![]() |
My View | View Issues | Change Log | Roadmap | Zandronum Issue Support Ranking | Rules | My Account |
View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0004483 | Zandronum | [All Projects] Bug | public | 2025-04-05 06:33 | 2025-04-13 17:04 | ||||
Reporter | unknownna | ||||||||
Assigned To | Kaminsky | ||||||||
Priority | normal | Severity | text | Reproducibility | always | ||||
Status | resolved | Resolution | fixed | ||||||
Platform | OS | OS Version | |||||||
Product Version | 3.2 | ||||||||
Target Version | 3.2 | Fixed in Version | 3.2 | ||||||
Summary | 0004483: [3.2] Winner names on scoreboard & intermission screen need to be frozen in case they disconnect | ||||||||
Description | While watching some Twitch stream featuring the latest 3.2 beta, I noticed that whenever a winning player disconnected during the intermission screen, the next player with the highest score would suddenly take over the win status and "win" the round. See the attached screenshot. IMHO, it would probably be better to freeze the winner text string, starting from the win sequence before entering the intermission screen. It would be a lot more intuitive that way. | ||||||||
Steps To Reproduce | 1. zandronum -iwad doom2.wad +deathmatch 1 +skill 4 +sv_cheats 1 +sv_nomonsters 1 +sv_weaponstay 1 +sv_itemrespawn 1 +alwaysapplydmflags 1 +map map01 +fraglimit 1 2. Add a bot into the game. 2. Kill the bot to win the round, then spectate either during the win sequence or intermission screen. The bot will "win" the round since the true winner spectated. | ||||||||
Attached Files | ![]() ![]() ![]() ![]() ![]() | ||||||||
![]() |
||||||
|
![]() |
|
Kaminsky (developer) 2025-04-07 21:55 |
This should be fixed now:'https://foss.heptapod.net/zandronum/zandronum-stable/-/commit/9fc051bff4eec60d695d89155394d6817b927039 [^]' |
unknownna (updater) 2025-04-08 04:15 |
Thanks, this seems to work, but I found some issues. * The duel "champion" string is not frozen, though I'm not sure if it matters anyway right now, since the string is not even displayed in the intermission screen. * It doesn't work right in LMS and Possession (though TeamLMS and TeamPossession seem fine), it always says "x has won with 1 win/point" even if the winlimit/pointlimit value is set higher than 1. This will affect the Megaman community since they seem to mostly play LMS-based modes. I think this might partially be because the modes only check for the limits erroneously after win sequences in these modes instead of before like the other modes like TeamDM/CTF etc. |
Kaminsky (developer) 2025-04-08 13:51 |
Quote from unknownna This should now be fixed in this topic:'https://foss.heptapod.net/zandronum/zandronum-stable/-/commits/topic/default/clear-winner-multiple-rounds [^]' Since I made a slight refactor of the code too, it'd be great if you can test this out thoroughly again to make sure everything's working correctly. Quote from unknownna I'll see what I can do with this, but I imagine that also happens in 3.1 and earlier, right? It might not be too urgent to address this right now, also because the current champion isn't always the same as the winner of a duel. |
unknownna (updater) 2025-04-08 14:34 |
I tested it, and while it seems to have fixed the issue with LMS, the "x has won with x" string itself is now missing during the intermission screen in deathmatch, terminator and possession modes so far.Quote from Kaminsky No need to bother with this now since it's not even functional in the intermission screen. |
Kaminsky (developer) 2025-04-08 15:05 |
Quote from unknownna I see. I made a couple of changes and amended the commit. Can you see if that issue's fixed now? |
unknownna (updater) 2025-04-08 15:43 |
Tested it, and it's still missing during the intermission screen in DM, Terminator and Possession if players enter the map as spectators. Also missing if winner spectates during win sequence in said modes. |
Kaminsky (developer) 2025-04-08 16:13 |
Quote from unknownna I'm sorry, but I can't seem to reproduce these issues on my end. At least, when I'm playing on these game modes, the "x has won with x" message appeared correctly during the win sequences and intermission when a player won and spectated/disconnected, both offline and online (note: in possession, if the winning player leaves during the win sequence, the game state changes, but this seems to be a separate issue). What steps do you have to take to reproduce these? |
unknownna (updater) 2025-04-08 16:36 edited on: 2025-04-09 17:25 |
Interesting, I'm able to reproduce the issue following these steps: 1. zandronum -host +skill 4 +sv_nomonsters 1 +sv_weaponstay 1 +sv_itemrespawn 1 +alwaysapplydmflags 1 +sv_cheats 1 +deathmatch 1 +fraglimit 1 2. Connect 2 clients to the server and join the game with both. 3. Kill either of clients and notice how the string is missing during the intermission screen. I also uploaded a screenshot depicting the issue. Edit: Does this issue have anything to do with players potentially not earning "victory" medals online? Actually, I'm wrong here. The medal is only given in LMS, and not any other modes from the looks of it. |
Kaminsky (developer) 2025-04-10 13:08 |
Strangely, I still wasn't able to reproduce the issue by following the steps you provided above. Nonetheless, I changed my whole approach to fixing this problem and amended the topic just now. Hopefully this should work for you. If you can test everything again thoroughly, that would be great. Thanks! |
unknownna (updater) 2025-04-10 18:36 |
Since it didn't happen to you here either, I tried it with a fresh ini since it's a bit alarming if a client setting might affect it for itself and potentially others. I found out the issue: It's caused by in-game clients using "cl_capfps 1". A client with capped FPS playing against other clients will not have the string displayed during the intermission screen, though this does not apply for spectators always. I'll get to testing your latest fix now and see if it happens there. |
unknownna (updater) 2025-04-10 19:37 edited on: 2025-04-10 20:20 |
I can confirm that the latest fix took care of the missing win string, but: I think I was testing both builds at same time somehow. The new fix seems to be better. Actually, I was right, the spawn-telefrags upon map changes erroneously count deaths on the scoreboard during warm-up countdowns. |
Kaminsky (developer) 2025-04-11 04:54 |
I'm thinking that in general, a player's death count probably shouldn't increment when they're spawn telefragged, just like how the player spawning doesn't earn a frag in this manner either. It doesn't seem fair that a player's death count goes up from something that's beyond their control (or the spawning player). We can also assume that it's extremely unlikely that someone will get spawn telefragged in the middle of a game under normal circumstances, so spawn telefrags should generally happen right after a map change, or at the beginning or end of a countdown, when players respawn all at once. I created a new topic to change this behaviour:'https://foss.heptapod.net/zandronum/zandronum-stable/-/commits/topic/default/death-count-spawn-telefrags [^]' |
unknownna (updater) 2025-04-11 05:41 |
I agree as long as spawn telefrags don't give out frags in general. However, testing the pipeline build didn't seem to change too much from the old behavior: * Spawn-telefrags still increment deaths with joining players in regular DM. * Spawn-telefrags increment deaths when joining players telefrag others (LMS). * Spawn-telefrags increment deaths when the map resets and players spawn-telefrag each other (LMS). * Death counts no longer reset for players turning into real spectators (LMS). They retain their death count when joining the game again. |
Kaminsky (developer) 2025-04-11 14:47 |
I just amended the topic. It should fix all of those issues. Please let me know if it does for you too. |
unknownna (updater) 2025-04-12 05:40 edited on: 2025-04-12 10:13 |
I updated the example wad slightly to have overlapping player starts in all modes and tested the latest pipeline build with 2 clients on a server. For the invasion mode, go to MAP02 in the example wad. For survival invasion, enable "sv_maxlives 1". Most modes seemed to work really well now, I found some separate unrelated (and ancient) issues and will make reports for them later, and made my notes below: Coop: OK Survival: OK DM: OK TeamDM: OK Duel: OK Terminator: OK LMS: Broken, "x has won with 1 win" string bug returned during intermission screen with higher winlimit TeamLMS: OK Possession: Broken, "x has won with 1 point" string bug returned during intermission screen with higher pointlimit TeamPossession: OK CTF: OK OneFlagCTF: OK Skulltag: OK Domination: OK Invasion: OK Survival Invasion: True and dead spectators' death counters aren't cleared when joining the game again when mission failed earlier and a new game begins TeamGame (AOW2): |
Kaminsky (developer) 2025-04-12 16:21 |
- The death counters not restarting at the start of a new game in survival invasion should be fixed in this topic:'https://foss.heptapod.net/zandronum/zandronum-stable/-/tree/topic/default/client-first-wave-countdown?ref_type=heads [^]' - The true spectator's frag (or point) count not resetting to zero when they're negative should be fixed in this topic:'https://foss.heptapod.net/zandronum/zandronum-stable/-/tree/topic/default/spectate-frag-count-reset-fix?ref_type=heads [^]' Note that the topic that fixed the winner name/score in (T)LMS and possession, and the topic that prevents the player's death count from increasing from spawn telefrags, are mutually exclusive because the issues aren't related to each other. So, testing any one of the pipeline builds isn't going to fix all issues mentioned here so far. |
unknownna (updater) 2025-04-12 17:53 |
Quote from Kaminsky Ok, I see. It quickly becomes more confusing to test it thoroughly when the fixes are separate. I tested both pipeline builds and can confirm it fixed the issues, but I noticed one more thing: * Kills are not reset (though points are with sv_awarddamageinsteadkills) for true spectators when they re-join the game in regular invasion. |
Kaminsky (developer) 2025-04-12 18:38 |
Quote from unknownna To be fair, there's many different issues being discussed here that deviate from the original issue of this ticket (i.e. the winner's name/score appearing wrong on the scoreboard). Since these issues aren't directly related to each other, I want to keep them in separate topics so that I can later create a merge request for each of them. Going forward, I'd prefer if new tickets were created for each different issue, rather than trying to conflate everything into one ticket. Quote from unknownna I amended the spectate-frag-count-reset-fix to also reset the player's kill count when they join spectators. Let me know if that fixes the problem for you. |
unknownna (updater) 2025-04-12 18:55 |
Quote from Kaminsky I understand, it just became a natural progression of ironing out the issues introduced by 0000404, and I wasn't quite sure if the issues in this ticket were regressions caused by the other fixes here. Anyway, I tested the pipeline build and can confirm that the kill counters are cleared now in invasion. Thank you. If the winner string issue is indeed fixed in its own branch, then I believe all the issues here are resolved. |
Kaminsky (developer) 2025-04-12 19:46 |
Sounds good! Thanks for reporting all of these issues and for testing everything thoroughly! I'll go ahead and open the merge requests for each issue so they get pushed in. |
unknownna (updater) 2025-04-13 16:51 |
I saw your fixes got merged into the main branch, I double-checked all modes, and it works good so far. Coop: OK Survival: OK DM: OK TeamDM: OK Duel: OK Terminator: OK LMS: OK TeamLMS: OK Possession: OK TeamPossession: OK CTF: OK OneFlagCTF: OK Skulltag: OK Domination: OK Invasion: OK Survival Invasion: OK TeamGame (AOW2): OK I noticed some minor issues that probably has to wait beyond 3.2: * If the winner spectates during win sequences in DM, Duel, Terminator and Possession, the next player in line erroneously becomes the lead temporarily on their own end before the intermission screen. The leading player however still correctly thinks it leads. * Deaths maybe shouldn't be incremented during win sequences in survival invasion since lives can't be taken away during them. Though this can be argued against, I'll probably ignore this one. I'll make separate reports so it doesn't become too cluttered with separate issues here. |
This issue is already marked as resolved. If you feel that is not the case, please reopen it and explain why. |
|
Supporters: | No one explicitly supports this issue yet. |
Opponents: | No one explicitly opposes this issue yet. |
![]() |
|||
Date Modified | Username | Field | Change |
2025-04-05 06:33 | unknownna | New Issue | |
2025-04-05 06:33 | unknownna | File Added: Screenshot_Doom_20250405_082817.png | |
2025-04-07 21:55 | Kaminsky | Note Added: 0024386 | |
2025-04-07 21:55 | Kaminsky | Assigned To | => Kaminsky |
2025-04-07 21:55 | Kaminsky | Status | new => needs testing |
2025-04-07 21:55 | Kaminsky | Product Version | => 3.2 |
2025-04-07 21:55 | Kaminsky | Target Version | => 3.2 |
2025-04-08 04:15 | unknownna | Note Added: 0024389 | |
2025-04-08 05:04 | unknownna | File Added: Screenshot_Doom_20250408_054749.png | |
2025-04-08 13:51 | Kaminsky | Note Added: 0024400 | |
2025-04-08 14:34 | unknownna | Note Added: 0024402 | |
2025-04-08 15:05 | Kaminsky | Note Added: 0024403 | |
2025-04-08 15:43 | unknownna | Note Added: 0024404 | |
2025-04-08 16:13 | Kaminsky | Note Added: 0024405 | |
2025-04-08 16:36 | unknownna | Note Added: 0024406 | |
2025-04-08 16:36 | unknownna | File Added: Screenshot_Doom_20250408_183340.png | |
2025-04-09 16:59 | unknownna | Note Edited: 0024406 | View Revisions |
2025-04-09 17:25 | unknownna | Note Edited: 0024406 | View Revisions |
2025-04-10 13:08 | Kaminsky | Note Added: 0024409 | |
2025-04-10 18:36 | unknownna | Note Added: 0024410 | |
2025-04-10 19:37 | unknownna | Note Added: 0024411 | |
2025-04-10 19:53 | unknownna | Note Edited: 0024411 | View Revisions |
2025-04-10 20:20 | unknownna | File Added: countdown_deathcount_01.wad | |
2025-04-10 20:20 | unknownna | Note Edited: 0024411 | View Revisions |
2025-04-11 04:54 | Kaminsky | Note Added: 0024419 | |
2025-04-11 05:41 | unknownna | Note Added: 0024421 | |
2025-04-11 14:47 | Kaminsky | Note Added: 0024426 | |
2025-04-12 05:40 | unknownna | File Added: countdown_deathcount_02.wad | |
2025-04-12 05:40 | unknownna | Note Added: 0024428 | |
2025-04-12 05:45 | unknownna | Note Edited: 0024428 | View Revisions |
2025-04-12 10:13 | unknownna | Note Edited: 0024428 | View Revisions |
2025-04-12 16:21 | Kaminsky | Note Added: 0024430 | |
2025-04-12 17:53 | unknownna | Note Added: 0024433 | |
2025-04-12 18:38 | Kaminsky | Note Added: 0024435 | |
2025-04-12 18:55 | unknownna | Note Added: 0024436 | |
2025-04-12 19:46 | Kaminsky | Note Added: 0024437 | |
2025-04-13 16:51 | unknownna | Note Added: 0024439 | |
2025-04-13 16:51 | unknownna | Status | needs testing => resolved |
2025-04-13 16:51 | unknownna | Fixed in Version | => 3.2 |
2025-04-13 16:51 | unknownna | Resolution | open => fixed |
2025-04-13 17:04 | unknownna | Relationship added | parent of 0004500 |
Copyright © 2000 - 2025 MantisBT Team |