2017-06-29, 13:28 *
Welcome, Guest. Please login or register.

Login with username, password and session length
 
Pages: [1]
  Print  
Author Topic: kicked on map change  (Read 2905 times)
0 Members and 1 Guest are viewing this topic.
MarneGator
 

Cacodemon
****
Posts: 75

« on: 2010-01-08, 19:22 »

When playing on the "no ferrets" server, I noticed that I get kicked with the message "cl.snap.servertime<cl.oldFrameServerTime" when the maps cycle.  If I immediately try to join again, I get the "invalid pk3 blahblah" message but if I restart gen, I can get back on, albeit for one map whereupon the issue resumes.  Other than reinstalling, which I have yet to do, any remedies?
Logged

-Veritas-
Phoenix
Bird of Fire
 

Team Member
Elite (7.5k+)
*********
Posts: 8320

WWW
« Reply #1 on: 2010-01-09, 02:01 »

It's not necessarily a Gen bug, but it's related to something a Gen programmer came up with as a fix for something else.  This happens to custom Q3 executable versions where a fix for a bug dealing with servers being up for a long time has been implemented.  I'm not certain, but Fourier (no ferrets server admin) might have implemented this fix.  I've only seen this happen on my own test server before since I'm running a custom Generations executable that has this fix.

This error kick happens as a result of the Q3 client thinking that the server is cycling time backwards.  If a warmup time is set, and the map restarts while you're still connecting in to the server when the map restart is issued, it can do this.  That part will be fixed, but right now the only workaround for that is to not use warmups or to set a very long warmup time.  If a warmup is set and you arrive on the server after the warmup is done, the only thing you can do is what you did - shut down Gen, and reload it, and reconnect.
Logged


I fly into the night, on wings of fire burning bright...

Star Citizen Referral Code: STAR-3R2G-JRKV
MarneGator
 

Cacodemon
****
Posts: 75

« Reply #2 on: 2010-01-09, 02:58 »

Cool, thanks.  Out of curiosity then, this sort of event can happen all across the Q3 universe because of this timing quirk?
Logged

-Veritas-
Phoenix
Bird of Fire
 

Team Member
Elite (7.5k+)
*********
Posts: 8320

WWW
« Reply #3 on: 2010-01-09, 04:38 »

I don't think so.  The normal Quake3.exe will just make your view point straight up and you'll hear a "FIGHT!" as soon as you spawn in.  The problem that we fixed was that if a server was running for over 24 hours it would cause some integers to get too large and trip what's called the "sign" bit, which designates a negative number.  This caused animated shaders to stall, bobbing items to jitter, and other problems.  The only thing a server admin could do is write a cron script to restart the server every day, which is kind of a pain.  I found and fixed the integer size problem and some related glitches with the help of some people on Quakesrc.org's bulletin board (now offline), Fourier being the fellow who helped.  The only remaining issue that I know about is a map_restart issued during someone's connect, which happens if there is a warmup period.  This will get fixed at some point before the stand-alone executable gets released.  Like I said, I think this is specific to Fourier's server since we both have the same source code for the uptime glitch fix and he probably implemented it into a custom Quake3.exe build for his server.

Logged


I fly into the night, on wings of fire burning bright...

Star Citizen Referral Code: STAR-3R2G-JRKV
fourier
 
Hans Grosse
*******
Posts: 267

« Reply #4 on: 2010-01-10, 21:03 »

It's using the ioq3 binary which does have phoenix's fix in its codebase.  The server is restarted daily.
Logged
Phoenix
Bird of Fire
 

Team Member
Elite (7.5k+)
*********
Posts: 8320

WWW
« Reply #5 on: 2010-01-10, 21:48 »

Ahh, that makes sense now.  I didn't know that made it into Ioquake3.
Logged


I fly into the night, on wings of fire burning bright...

Star Citizen Referral Code: STAR-3R2G-JRKV
Pages: [1]
  Print  
 
Jump to: