Bug 3371 - Rejoining a server causes hang on map load screen
Status: RESOLVED WORKSFORME
Alias: None
Product: ioquake3
Classification: Unclassified
Component: Misc
Version: GIT MASTER
Hardware: All All
: P3 major
Assignee: Zachary J. Slater
QA Contact: ioquake3 bugzilla mailing list
URL:
Depends on:
Blocks:
 
Reported: 2007-10-02 17:33 EDT by Tim Angus
Modified: 2013-03-03 18:41:17 EST
2 users (show)

See Also:



Description Tim Angus 2007-10-02 17:33:19 EDT
-When rejoining a server without exiting the game, a frequent issue with
getting stuck in the map-loading screen occurs. This is solved by restarting
tremulous.
Comment 1 Tim Angus 2007-10-02 17:52:56 EDT
I couldn't reproduce this here. Could you explain *exactly* what you mean by "rejoining a server without exiting the game" please?
Comment 2 Khalsa 2007-10-02 23:02:50 EDT
(In reply to comment #0)
> -When rejoining a server without exiting the game, a frequent issue with
> getting stuck in the map-loading screen occurs. This is solved by restarting
> tremulous.
> 

I've seen this across multiple clients, computers, os's and architectures. It's practically unreproducible with any consistency.

1- Join a game, play like normal
2- exit that server, but not the game
3- Try to join another or same server
 Sometimes at this point the map loading screen comes up, completes loading (100% throughout) then will just hang at that point. Opening console show's no messages and escaping out to main menu and rejoining the server will often lead to the same result. Quiting the application fixes it. 

I find it happens after a couple of hours or rigorous game play and server changes.


Comment 3 Roman "kevlarman" Tetelman 2007-10-02 23:24:13 EDT
I think it has something to do with clients timing out in an inconsistent state (once they've done this they will fail the pure check every time you try to join that server until you restart the client), but i haven't been able to reproduce it with a low sv_timeout.
Comment 4 Foe of Eternity 2009-02-16 09:43:56 EST
i've noticed that this happens with aimbots...i've done testing with aimbots to find signs of how to find them, and the one thing that i noticed was that if you get disconnected and try to reconnect, you get the "invalid pk3 files referenced!" but you either exit to the menu screen or just stay at the 100% map loaded...
Comment 5 Tim Angus 2011-01-27 11:56:28 EST
<Thilo> i also have a theory to your bug, timbo.
<Thilo> all the client connecting stuff is pretty messed up
<Thilo> the server will send a serverId in the gamestate message at the beginning
<Thilo> if a new map is loaded, or even map_restart is done, the serverId changes, and thus the server will not accept the user's move commands
<Thilo> if it doesn't accept the move commands, it will not send out an initial snapshot.
<Thilo> it will send out snapshots before then, but the client won't accept them because the server flags them as invalid as long as the client isn't CS_ACTIVE
<Thilo> and the client will never be CS_ACTIVE as long as it doesn't send out valid move commands
<Thilo> kind of a vicious circle
<Thilo> and only if the client has an initial snapshot, will cgame start the command handling from the server, where the server tells the client about a changed serverId
Comment 6 Thilo Schulz 2011-02-08 11:06:36 EST
Well, theory is nice and dandy. Cannot reproduce. Reopen this bug if you find a way to reproduce this.
Comment 7 Nathan Brader The Fifth 2013-03-03 18:41:17 EST
I'm the guy who originally submitted this bug (it was resubmitted by Tim).

I'll point out that I haven't seen this bug occur in so long that I had completely forgotten about it.