Page 1 of 2

Fun - Most Obscure Quake Bugs

Posted: Sun Dec 21, 2008 4:20 pm
by mh
I thought it might be fun to list the most obscure Quake bugs you've ever seen; just things you've noticed while playing around with the source code.

The more harmless the better; I mean the kind of bugs that don't actually make the engine crash & burn, or that don't really affect gameplay, but just shouldn't happen. The kind of bugs that would get shoved so far down the bottom of the priority list in any professional project that it goes beyond being not even funny and back to being funny again.

I'll start:

SCR_CenterPrint - the server sends a blank string from time to time. I noticed this a few months ago while playing around with putting a textbox around the string, and was bemused (and amused) to see loads of small empty textboxes popping up on my screen here and there. The obvious solution is to check for if (!str[0]) at the start of the function, but sometimes I wonder if fixing this takes away from the rickety charm of Q1.

Posted: Mon Dec 22, 2008 8:55 pm
by LordHavoc
Here's one:
self.angles_x is inverted on alias models, which means that any frame self.fixangle is set it has to be set to the non-inverted angles and causes the model to use the wrong pitch for that frame.

Posted: Mon Dec 22, 2008 9:01 pm
by MauveBib
LordHavoc wrote:Here's one:
self.angles_x is inverted on alias models, which means that any frame self.fixangle is set it has to be set to the non-inverted angles and causes the model to use the wrong pitch for that frame.
I can't count the number of times I've run a cropper of that!

Posted: Mon Dec 22, 2008 11:53 pm
by Urre
My work on the physics lib was frozen god knows how many months due to me not forseeing this...

Re: Fun - Most Obscure Quake Bugs

Posted: Tue Dec 23, 2008 2:58 am
by LordHavoc
mh wrote:SCR_CenterPrint - the server sends a blank string from time to time. I noticed this a few months ago while playing around with putting a textbox around the string, and was bemused (and amused) to see loads of small empty textboxes popping up on my screen here and there. The obvious solution is to check for if (!str[0]) at the start of the function, but sometimes I wonder if fixing this takes away from the rickety charm of Q1.
How do you deal with Threewave CTF and other multiplayer mods where there is constant status information shown as centerprints?

Re: Fun - Most Obscure Quake Bugs

Posted: Tue Dec 23, 2008 2:04 pm
by mh
LordHavoc wrote:
mh wrote:SCR_CenterPrint - the server sends a blank string from time to time. I noticed this a few months ago while playing around with putting a textbox around the string, and was bemused (and amused) to see loads of small empty textboxes popping up on my screen here and there. The obvious solution is to check for if (!str[0]) at the start of the function, but sometimes I wonder if fixing this takes away from the rickety charm of Q1.
How do you deal with Threewave CTF and other multiplayer mods where there is constant status information shown as centerprints?
That's one of those things that's either a very clever and innovative solution or a blatant abuse of functionality that'll bite everyone in the ass at some point.

I haven't quite decided which side my own opinion lies on.

Posted: Tue Dec 23, 2008 9:25 pm
by LordHavoc
Here's one:
tracebox - the builtin exists but has no code (except in enhanced engines).

Re: Fun - Most Obscure Quake Bugs

Posted: Thu Jan 01, 2009 11:48 am
by KrimZon
LordHavoc wrote:How do you deal with Threewave CTF and other multiplayer mods where there is constant status information shown as centerprints?
I read it as putting a frame around the existing centerprint when displaying it, so it'd work normally with everything except that blank centerprints showed up as just the frame.

Re: Fun - Most Obscure Quake Bugs

Posted: Thu Jan 01, 2009 1:39 pm
by mh
KrimZon wrote:
LordHavoc wrote:How do you deal with Threewave CTF and other multiplayer mods where there is constant status information shown as centerprints?
I read it as putting a frame around the existing centerprint when displaying it, so it'd work normally with everything except that blank centerprints showed up as just the frame.
Exactly. I was a little confused by LH's question, to tell the truth.

Anyway, here's another:

"items/damage2.wav is not precached".

Happens when you're on a map that doesn't have the quad and you do impulse 255. It had bothered me for a bit when I was testing dynamic light colours for the Quad effect on start.bsp, but is easy enough to fix.

Re: Fun - Most Obscure Quake Bugs

Posted: Thu Jan 01, 2009 11:26 pm
by LordHavoc
mh wrote:
KrimZon wrote:
LordHavoc wrote:How do you deal with Threewave CTF and other multiplayer mods where there is constant status information shown as centerprints?
I read it as putting a frame around the existing centerprint when displaying it, so it'd work normally with everything except that blank centerprints showed up as just the frame.
Exactly. I was a little confused by LH's question, to tell the truth.
Confused why? The Threewave CTF HUD contains many newlines, it places some text at the bottom of the view (which requires adjustment via impulses to match your view size - and adjusting it for a larger size than you are running in winquake/dosquake crashes due to going outside the screen bounds).

Some mods also place some text at the left and right sides of the view.

So the way I interpret your text box comment is that a text box would be covering the entire view in Threewave CTF, all the time.

Posted: Fri Jan 02, 2009 12:10 am
by mh
Fine but it ain't a newline, it's an actual empty string (str[0] == 0) and it happens a lot even in ID1.

Unless I'm missing something here...

Posted: Fri Jan 02, 2009 12:22 am
by LordHavoc
mh wrote:Fine but it ain't a newline, it's an actual empty string (str[0] == 0) and it happens a lot even in ID1.

Unless I'm missing something here...
You are talking about the Quake bug, I'm talking about your text box addition affecting not only the Quake bug but also Threewave CTF.

Posted: Fri Jan 02, 2009 12:28 am
by MeTcHsteekle
i think mh is talking about when your walking along in a map shooting things in the face, and suddenly you hear the chat beep, so you bring down the console, and if the engine dosen't outline centerprint messages [assuming it records centerprint message] that it will have a blank space at the bottom, but if it does, you will have 2 lines..shall i call them dividers on the console

wait, now im confused :S

Posted: Fri Jan 02, 2009 9:23 am
by mh
LordHavoc wrote:
mh wrote:Fine but it ain't a newline, it's an actual empty string (str[0] == 0) and it happens a lot even in ID1.

Unless I'm missing something here...
You are talking about the Quake bug, I'm talking about your text box addition affecting not only the Quake bug but also Threewave CTF.
Aaaaaahhhhhhhhh. :idea:

Well yeah, the text box addtion was something that seemed a neat idea at the time but ultimately proved to be somewhat silly.

Posted: Fri Jan 02, 2009 8:52 pm
by Chris
common one is running against the wall increasing your speed, as well as moving forward and right at an angle, although that is a common one in many 3d engines and I think fixed in at least darkplaces.