Long uptime bug in quake3
Posted: Sat Feb 25, 2006 7:58 am
Does anyone have any comprehensive information about this bug?
(i.e. it's causes, exact effects, etc.)?
Just been in touch with the admins of a popular 3wave server which suffers it and they want more info on it.
Here's my scattered understanding of it so far:
Floating point issue - as server stays on longer and longer, certain time based variables (which don't reset periodically?) accumulate rounding errors due to an insufficiently low decimal point roundoff.
Certain elements of the game are affected by this - animations like sky and flags are choppy, grenades don't bounce properly (they bounce lower), and generally all elements which are dependent upon this non-resetting time function are somehow compromised.
Resetting the server (not rebooting the actual computer, but reloading the quake server) is a way around this, though it needs to be done periodically.
Icculus' quake3.exe addresses this (among many other bugs).
So here are some questions:
1) Do the errors get worse and worse over time (and do the deleterious effects become gradually worsened), or is it an all or none thing?
2) Apart from grenade bounces, does this bug affect anything that isn't purely "bell and whistle" animation? Does it affect the physics of other weapons in any way? Or player movement physics? Or packet sampling?
3) If icculus' quake3.exe is implemented on a server, do clients need to run that same exe to connect?
4) If they can still connect without the modified exe, i'm assuming they'll reap the benefits of the icculus exe simply because it's running on the server - right?
5) Can this be implemented in conjunction with Punkbuster?
(i.e. it's causes, exact effects, etc.)?
Just been in touch with the admins of a popular 3wave server which suffers it and they want more info on it.
Here's my scattered understanding of it so far:
Floating point issue - as server stays on longer and longer, certain time based variables (which don't reset periodically?) accumulate rounding errors due to an insufficiently low decimal point roundoff.
Certain elements of the game are affected by this - animations like sky and flags are choppy, grenades don't bounce properly (they bounce lower), and generally all elements which are dependent upon this non-resetting time function are somehow compromised.
Resetting the server (not rebooting the actual computer, but reloading the quake server) is a way around this, though it needs to be done periodically.
Icculus' quake3.exe addresses this (among many other bugs).
So here are some questions:
1) Do the errors get worse and worse over time (and do the deleterious effects become gradually worsened), or is it an all or none thing?
2) Apart from grenade bounces, does this bug affect anything that isn't purely "bell and whistle" animation? Does it affect the physics of other weapons in any way? Or player movement physics? Or packet sampling?
3) If icculus' quake3.exe is implemented on a server, do clients need to run that same exe to connect?
4) If they can still connect without the modified exe, i'm assuming they'll reap the benefits of the icculus exe simply because it's running on the server - right?
5) Can this be implemented in conjunction with Punkbuster?