Quake Info Pool - Classic Quake - QuakeWorld Bugs

Back | Last changes: 2002-02-08 | Contact Maddes

# QuakeWorld Bugs & Suggestions

## Bug categories: Quake / QuakeWorld / Map / Demo / Tools / Not researched yet / Wishes

## Index

- General QuakeWorld Bugs & Suggestions
- QuakeWorld QuakeC and Engine Bugs
- Windows QuakeWorld Bugs
- OpenGL QuakeWorld Bugs

You can find the most recent version of this list on Quake Info Pool.
Some workarounds were taken from other sites/people and are not always proved by myself.
If you are interested in QuakeC and/or the Quake sources (Quake utils and engine), then please visit the Quake Standards Group and join the Quake Sourcecode Mailing List.

- red = bugs, crashes, which disturb gameplay
- black = bugs which do not affect gameplay
- green = old and fixed bugs

For cheating issues check out Flocutus' Ultimative Quake Cheat Page. Only if all the tricks are known to the public they can be stopped, so have a look and keep playing fair. Do not blame Flocutus, but blame the cheaters - be part of the movement:
Quakers Against Cheating
For QuakeC and engine related discussions join my Quake Sourcecode Mailing List, a public archive is available on Escribe.
For public and unmoderated discussions use the Inside3D forums.

Recommended replacements for the original id tools:

- QuakeC Reference Manual
- Mr. Elusive's MEQCC
- Frika C's FrikQCC
- QuakeStuff's PakExplorer
- QuArK for handling PAK files

Official support sites:

- id Software
- GT Interactive Support
- Activision Support

## General QuakeWorld Bugs & Suggestions

Current version: 2.30 (latest beta: 2.33-005)

Bug / Suggestion | first occurred in (cause) | workaround or fixed in
--- | --- | ---

When a grenade passes the waterline, Quake should play a splash sound.
Quake plays a splash sound when the grenade hits a surface and have prior to this hit at least one surface with a different state (under/above water) than the one it is hitting. The sound is "misc/h2ohit1.wav"
Reported by Christian "Cann" Schuldt Jensen

all Quake executables

not yet

Missing support of Mission Pack #1 and #2 | all QuakeWorld executables | not yet
When the model of a client is removed (modelindex = 0), the client's viewpoint will not be updated. Reported by Raymond Martineau | all QuakeWorld executables | not yet
If you shoot the platform in DM6 with the Lightning Gun while standing on it, the platform levels you up first (nearly to the height of the nearby teleporter) and then drops you back. Reported by "Flocutus" Demos are available for download | recognized in 2.21 | not yet Here's Zoid's comment: That DM6 platform bug is just bizarre. I have no idea why the hell that happens.
After disconnecting from a server through the console the menu is no more accessible | recognized in 2.20 | not yet workaround: Type "menu_main" in the console, the ESC key will work again. Reported by Jacek "JACKKILLER" Domanski
Connecting with a *legal* "player.mdl" file with additional skins leads to the message "WARNING: non standard player/eyes model detected"; maybe they call you "cheater" or unfortunately kick/ban you :( | 2.20 | not yet suggestion: only the model should be checked, because all skins are taken from the skins directory and not from the "player.mdl"
Possibility to exceed sv_maxspeed by various techniques (e.g. zigzagging and bunnyhopping or wall-hugging) Reported by the Quake Done Quick Team | all QuakeWorld executables | not yet the solution should not prevent rocketjumping and other regular higher player speeds
Memory for aliases is not handled dynamically, also when redefining the memory of the old definition is not freed. This leads to a "Z_Malloc" error when using a lot of aliases or often redefining an alias | all QuakeWorld executables | partly fixed in the released sourcecode, but Z_Memory is still used workaround: Start Quake with the "-zone <kbytes>" parameter (standard is 48KB) to give aliases more memory, so the error will occur much later if aliases are added
Players can fall down slowly in corners, making no sound when landing. Reported by "Flocutus" Demos for normal Quake are available for download | all QuakeWorld executables | not yet

Continous bunny hopping is not always possible, sometimes the 2nd jump does not occur, especially with higher framerates, but you here the jump sound.
Although bunny hopping is an exploit, this report shows that there are problems in the physics of QuakeWorld. It should be possible to hop as often as possible without exceeding sv_maxspeed.
Reported by Alan Kivlin
Demos are available for download

recognized in 2.30

not yet
possible reason plus workaround by Alan Kivlin:
"The QuakeWorld engine doesn't perform the jump (the engine actually checks to see when your velocity needs 270 added to it, QC code makes the sound). It appears the engine checks your z velocity and will not jump if it's < 0 even if you have the FL_ONGROUND flag set. Anyway, the fix is to put the following code right at the end of PlayerJump in client.qc:
if( self.velocity_z < 0 ) self.velocity_z = 0;
NOTE: a positive z velocity can occur while you are on the ground and the engine properly performs the jump when it's supposed to, mainly this comes into effect when jumping up the pipe on DM6."
Darth Vader reported that Kombat Teams 2.10 has this fixed, so I contacted the authors and they sent me the same fix for it.

QuakeWorld does not zero-pad texture names when creating the checksum of a map, so the garbage behind some texture names is included in the checksum, which causes problems with maps although they are the same. More about this can be found on the map bugs page | recognized in 2.30 | not yet

If you start a QW client and connect to a server which is currently running JVX1 then the client crashes.
Reported by Pete "GanGrene" Rondeau

QW 2.30 and JVX1

not yet
I could only reproduce this when I started the client on the same machine as the server, all other clients in the lan did not crash. Btw it is not related to the missing "wad" attribute of the map, adding a "wad" attribute to JVX1 does not fix it.
workaround:
It only happens when the client never loaded a map before, so connecting to another or the same server with another map helps. Even playing a demo works.

You can not jump out of water onto SOLID_BSP entities like moving platforms. Reported by Ryan "Frika C" Smith Demos are available for download | QW source 2.30 | not yet assumption: CheckWaterJump() is disabled in QW's client.qc because it could confuse QW's client prediction.

Some typos within the engine source.
"allways" instead of "always"
"allready" instead of "already"
"chagnelevel" instead of "changelevel"
"wheil" instead of "while"
"klill" instead of "kill"
"diconnect" instead of "disconnect"
Some reported by Rory Kavanagh

released sourcecode

fixed for the released sourcecode here

Some fixes were left out by id Software, search for "FIX ME", "FIXME" or "TODO" in the source | released sourcecode | not yet
Kill command does not work for "zombie" players. | all QuakeWorld executables | fixed for the released sourcecode here suggestion: Check not only for player's health but also that his deadflag is not DEAD_NO.
"Sound sampling rate" is not printed to console. | all QuakeWorld executables | fixed for the released sourcecode here reason: there could be a possible GPF. solution: check the variable "shm" before printing "Sound sampling rate" in SND_DMA.C (if (shm))
Piped output is not immediately written to the pipe. Reported by Hendrik Lipka | all QuakeWorld executables | fixed for the released sourcecode here solution by Hendrik himself: add the missing flush command calls to the end of all Sys_printf() definitions in SYS_*.C: "fflush(stdout);" in CLIENT/SYS_LINUX.C It seems that Sys_Printf is never output on Windows systems.
Changes of timelimit, fraglimit or teamplay are not broadcasted like in normal Quake | all QuakeWorld executables | fixed for the released sourcecode here
Typing the command "user" on QWSV with no arguments causes the program to return: "Usage: info <userid>". Reported by Ryan "Frika C" Smith | recognized in 2.30 | fixed for the released sourcecode here

Random occurrences of "Error: MOVETYPE_PUSH with a non bsp model".

all QuakeWorld executables

fixed for the released sourcecode here
reason:
The engine assumes that everything with MOVETYPE_PUSH is SOLID_BSP (= bsp model = map brush) and hence assigns SOLID_BSP to the entity after the blocking check. So on the next check, the engine finds a SOLID_BSP with a non bsp model and stops.
solution:
Here's the solution for the normal Quake engine (not QuakeC)
hint:
The random occurrences in CRITTERS are due to a fixable map bug.

QW saves all bound keys without quotes in config.cfg, which leads to problems with the semicolon (e.g. BIND ; "..."). So everytime you start QW your binding to the semicolon is destroyed, as the semicolon without quotes is a command separator.
Reported by "ManiaX"

recognized in 2.30

fixed for the released sourcecode here

"frontend.cfg" only executed when an AddOn is used AND "config.cfg" exists in this AddOn subdir | recognized in 2.00 | fixed for the released sourcecode here
Low SV_MAXVELOCITY settings cause weird rocket movement Set SV_MAXVELOCITY to 20, select the start map, get yourself the RL and shoot some rockets to different angles. This does not effect the player's movement like in normal Quake. Reported by William Magill | QW 2.30 | fixed for the released sourcecode here reason: When a velocity is checked against SV_MAXVELOCITY the Quake engine checks the vector's components (x, y, z) instead of it's resulting length. solution: Here's the solution for the normal Quake engine (not QuakeC)
QuakeWorld crashes after upgrading to DirectX 6 on some computers | DirectX6 | solution: get updated drivers for your sound and graphics card (which hopefully work), otherwise downgrade to DirectX 5. Otherwise have a look in the readmes and try "-wavonly" / "-dibonly"
When server and client run on one Win32 machine, the client experiences packet losses | recognized in 2.20 | workaround: Changing the task priorities under Win32 will avoid these packet losses. Download the easy-to-use priority tool
Connecting with re-vised maps (for transparent water) to a server without those maps, or vice-versa, is impossible. This also happens when the client map has another entity list | 2.20 | 2.21 hint for non-GL users with waterhacked maps: as waterhack removes textures, clients with those maps will be rejected
Spelling error in explanation of bind command ("atatch" instead of "attach") | recognized in 2.00 | 2.21
wanted: complete list of all SVC_Commands |  | Check out Uwe Girlich's DEM specs which is currently the best source for this, although it's normal Quake
not really Quake related: Fix use of "C:\Program files", although international versions use different directory names | Win95/NT installer from many companies | suggestion: The registry entry ProgramFilesDir in [HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion] contains the name of the correct path, e.g. for the German version: "ProgramFilesDir"="C:\\Programme"

## QuakeWorld QuakeC and Engine Bugs

Current version: 2.30 (latest beta: 2.33-005)

Bug / Suggestion | first occurred in (cause) | workaround or fixed in
--- | --- | ---
".colormap" does not work with non-player entities. | all QuakeWorld executables | suggestion: this should work on all entities, to create team-based items or similar.
When a player with an active quad picks up a dropped quad, then the remaining time of the dropped quad is not added, instead it replaces the previous remaining time | QW source 2.30 | not yet
Missing server message SVC_SETVIEW Needed for third person view, observer mode (not spectator) and similar things Reported by the Carl "Lord Sméagol" Lloyd-Parker | QW source 2.30 | not yet
Players can still shoot during intermissions | QW source 2.30 | not yet
If two or more attackers fire at one target in the same frame ("gang-banging"), then only the first attacker gets the frag. The target is already dead before the second attacker shoots. | QW source 2.30 | not yet

Some typos within the QuakeC source.
"allways" instead of "always"
"allready" instead of "already"
"chagnelevel" instead of "changelevel"
"wheil" instead of "while"
"klill" instead of "kill"
"diconnect" instead of "disconnect"
"usefull" instead of "useful" (not usefully)
"montser" instead of "monster"
"lis" instead of "list"
"wast" instead of "waist"
"swiming" instead of "swimming"
".huntt_ime" instead of ".hunt_time"
Some reported by Rory Kavanagh

QW source 2.21

fixed for the released sourcecode here

Some fixes were left out by id Software, search for "FIX ME" or "FIXME" in the source | QW source 2.21 | not yet

Quake.exe function "string ftos(float variable)" returns a string with leading spaces when the converted value is non-integer and also cuts it off after the first decimal (e.g. " 0.9" for 0.93).
(worse in conjunction with the next bug)

all QuakeWorld executables

fixed for the released sourcecode here
suggestion #1: (perfect, but unacceptable)
"cvar()" returns a string not a float, e.g. "0.93" for "sv_aim".
This would offer the possibilty to save strings also in cvars.
But this would also mean that every single AddOn had to be recompiled, because of the changed type of the result. Hence not acceptable.
suggestion #2: (best and recommended)
"ftos()" should return a string without leading spaces on non-integer values (e.g. "0.93").
The best solution, because it does not only solve the problem, it also helps to save space on displaying values.
Here's the solution for the normal Quake engine (not QuakeC)
addition to #1 and #2:
fixed for the released sourcecode here
"cvar_set()" saves values internally as a string (incl. leading spaces) and as a float, the conversion routine from string to float does not ignore leading spaces, so Q_atof() must be enhanced.
QuakeC hint:
You'll have to check if the used exe have this fixed or not, here is an QuakeC example for normal Quake.
You should also round/floor/ceil values before printing if necessary.

Quake.exe function "void cvar_set(string cvar_name, string value) sets the cvar to zero when the string value contains leading spaces | all QuakeWorld executables

"T_RadiusDamage()" bug
#1: If a player dies through the splash damage of his own rocket/grenade, all following players doesn't get hurt by the splash damage.
Reported by Robert "Frog" Field
#2: Incorrect explosion of the three grouped boxes in E3M1. Player does not get hurt, depending on where he stands.
Reported by the Quake Done Quick Team

QW source 2.21

not yet
reason/assumption:
#1: If the owner of the rocket/grenade/spike dies, all corresponding functions of the owner are stopped
Here's the workaround for normal Quake by Robert "Frog" Field
#2: Local variables of a function are not saved on the stack by the engine, which cause problems on recursive calls. Plus the result of the "findradius" function is stored in the found entities themselves (".chain" pointer), which is destroyed through another "findradius" function. When an entity of the first result is found again, then the previous chain is broken.
Here's the workaround for normal Quake by Patrick Martin

Using a trigger_hurt entity with a negative damage ("healing") results in an ever increasing health. | QuakeWorld 2.30 | fixed for normal Quake in URQP 1.06
When respawning by clicking the fire/attack button in DM/COOP, it fires a shot. Reported by Hugh Jones | all QuakeWorld executables | fixed for normal Quake in URQP 1.06, done by Patrick Martin
If you have the maximum red armor and the level changes, you can pick up red armor again. Reported by "Slot Zero" | QuakeWorld 2.30 | fixed for normal Quake in URQP 1.06 reason and solution by Slot Zero himself: On level changes the armortype is not stored and restored as it is in parm9, the (unnecessary) calculation results in a precision loss. To fix this just store and restore the armortype in parm 9as it is.

When shooting with any shotgun at multiple targets, where one or more of them are gibbable, targets fail to gib properly.
Shotgun damage is calculated by firing each pellet, tracing it, and if it hits a target hurting the target. If a pellet hits the same target as the last pellet, damage is added together. If a pellet hits another target than the previous pellet, already collected damage is applied to the previous target. If shots alternate between targets, a target will fall dead partway through the shot, as soon as they pass below zero health, instead of getting one big lump of damage at the end of the shot and perhaps gibbing. This problem is most notable when the shooter is using quad.
* Example 1: One target
Damage = 0
Pellet 1 hits Damage = Damage + x; Target = #1
Pellet 2 hits Damage = Damage + x
Pellet 3 misses
Pellet 4 hits Damage = Damage + x
;end of shot
ApplyDamage(#1, Damage)
* Example2: Two targets
Damage = 0
Pellet 1 hits #1 Damage = Damage + x; Target = #1
Pellet 2 hits #2 ApplyDamage(M1, Damage); Damage = 0; Damage = Damage + x; Target = #2
Pellet 3 hits #2 Damage = Damage + x
Pellet 4 hits #1 ApplyDamage(M2, Damage); Damage = 0; Damage = Damage + x; Target = #1
;end of shot, apply any outstanding damage
ApplyDamage(#1, Damage)
If a person is hidding directly behind two others, which get shot with the initial spray, they will fall dead sooner, without absorbing the full brunt of the shot, and damage will passed through to the target behind them.
Reported by William Night
Demos are available for download

QW source 2.30

fixed for normal Quake in URQP 1.06
solution:
Create an entity for each attacker/target combination and link all entities for one target to a list. At the end of the frame the list is processed and all collected damages are applied.
It is assumed that shoot-throughs are not wanted, as id Software used a multidamage system for the shotguns.

When two players shoot at each other in the same frame, and both would have killed each other, then only the first client shoots and the other client is dead before he shoots. | QW source 2.30
Hack for changing player model .modelindex is changed directly instead of using the setmodel() function. | QuakeC 1.06 | This is not a bug or shortcoming, it's necessary to keep the clipping hull for the server. The same hack is necessary for making triggers invisible, as setmodel(trigger, "") removes the link to the bsp model (map brush) making it non-functional.
Entities of disconnected clients not initialized Especially .classname and .health are problematic for typical find() calls. | QuakeC 1.06 | fixed for normal Quake in URQP 1.05
When a client leaves the game with no frags then QW displays "... left the game with frags", and if he has only 1 frag it displays "... left the game with 1 frags" (plural) | QW source 2.30 | fixed in URQWP 1.04f
If fraglimit is hit all following players in the same frame are not processed. Reminded by Ryan "Frika C" Smith | QW source 2.30 | fixed for normal Quake in URQP 1.05 reason: Function handled by PlayerPreThink
Timelimit and Fraglimit handled by PlayerPreThink Reminded by Ryan "Frika C" Smith | QW source 2.30 | fixed for normal Quake in URQP 1.05
Player picks up ammo although he already carries the maximum (e.g. cells) Reminded by Andrew Palmer from KTImpact | QW source 2.30 | fixed for normal Quake in URQP 1.03
+USE not bound to .button1 | all Quake executables | solution: Here's the solution for the Quake engine (not QuakeC)
When you chase a player through a teleporter then you or both get telefragged. Reported by Carl "Lord Sméagol" Lloyd-Parker | QW source 2.30 | fixed for normal Quake in URQP 1.05 solution by Carl "Lord Sméagol" Lloyd-Parker and Daniel "Athos Kryn" Olsen
Missing support for custom gravity | QW source 2.30 | added for normal Quake to URQP 1.05

Walkframe leak bug. It occurs when the .walkframe variable, being incremented in the player_stand function while holding the axe, goes higher than 6 (it can go as high as 12), the player fires the axe, then begins to move during the axe animation. When the axe animations are complete the code calls player_run and walkframe (>6) is tested incorrectly. What results is wild and rampant incrementing of walkframe such that it goes through all player animations.
Reported by Ryan "Frika C" Smith
A demo is available for download

QuakeC 1.06

fixed for normal Quake in URQP 1.05 (solution by Ryan "Frika C" Smith himself)
solution:
Just replace (self.walkframe == 6) with (self.walkframe >= 6) in player_run()/player.qc

Player model removed when a player disconnects. Reported by Ryan "Frika C" Smith | QW source 2.30 | use normal Quake fix for "flying bodies and ghostly eyes when disconnect" available in URQP 1.05 (solution by Ryan "Frika C" Smith himself)

Missing parameters on some function calls.

QW source 2.30

fixed for normal Quake in URQP 1.05
explanation:
Beside the MakeStatic call in "void() func_illusionary" these are not really bugs as QCC assumes a zero, but MEQCC does not like them.

- DropToFloor in items.qc/misc.qc/monsters.qc.
- MakeStatic in misc.qc.
- ai_charge in ogre.qc.

Grenades bounce off skies. Reported by Charles "Psykotik" Pence | QW source 2.30 | fixed for normal Quake in URQP 1.05 (solution by Michael "MaNiAc" Turitzin)

On some older maps "item_weapon" is used to place ammo. This old entity shouldn't be used and it does not use the regular spawning functions for the different ammo, so changes to the ammo spawning functions are unrecognized.
This is why some patches do not work correctly with those maps.
Reported by Daniel "Athos Kryn" Olsen
This is why nails are sometimes called "spikes" (e.g. DM5).
Reported by Greg Lewis

QW source 2.30 and older maps

fixed for normal Quake in URQP 1.04a (solution by Athos himself)

When intermission comes up, the palette of players with an active quad or pentagram is still shifted | QW source 2.21 | fixed for normal Quake in URQP 1.03
The QW QuakeC source is put directly in the QW directory | QW source 2.21 | solution: Create a QWSRC directory and put the source files in it (*.qc, progs.src, files.dat, progdefs.h) and change the first line of progs.src in "../qwprogs.dat"

When a player discharges in liquid, players who are not in the liquid get hit. On the other hand players in the same liquid do not get hurt when hidding behind a wall.
Reported by Jonathan "Perged" Down

QW source 2.21

This is not a bug, here's an excerpt of Zoid's comments:
The LG in water explodes, it does NOT electricify the water. Just imagine there is a really, really big explosion and fireball when the LG goes off. I'm guessing the art just wasn't there. John Cash wrote that original code and the explosion and effect is as intended.
was "fixed" in URQP 1.03 and reverted back in URQP 1.05 with an added particle explosion

Spelling error: the "Super Nailgun" is called the "Perforator" in the Quake manual. Reported by Daniel "Athos Kryn" Olsen | QW source 2.21 | fixed for normal Quake in URQP 1.03
Spelling error: the nailgun should be capitalized in the weapon_touch function like the other weapons. Reported by Daniel "Athos Kryn" Olsen | QW source 2.21 | fixed for normal Quake in URQP 1.03
When a player unlocks an door, the unlock sound can not be heard Reported by the Quake Done Quick Team | QW source 2.21 | Here's the solution for normal Quake by Nolan "Radix" Pflug
"CanDamage()" bug Player does not get hurt when he shoots a rocket on top of a waisthigh architecture directly in front of him. Reported by Russell McDaniel | QW source 2.21 | fixed for normal Quake in URQP 1.03
Triggers aren't fired when player doesn't pickup an item | QW source 2.21 | reasons: When a player doesn't pickup an item, its triggers are not fired. When touching a weapon the ammo is not checked. Here's the solution for normal Quake
Player picks up weapon, although he already owns it and has full ammo | QW source 2.21
Player does not gulp bubbles when hurt in slime | QW source 2.21 | Here's the solution for normal Quake
When a player is drowning his armor takes part of the damage. This is unlogical or does it breathe too? Reported by Daniel "Athos Kryn" Olsen | QW source 2.21 | Here's the solution for normal Quake
If a player picks up two or more megahealth, his health rots double or more as fast. It should be one health point per second. Reported by Daniel "Athos Kryn" Olsen | QW source 2.21 | reason: Rotting of multiple megahealth is not syncronized. Here's the solution for normal Quake
Sometimes ".nextthink" is not correctly. Reported by Jonathan "Perged" Down | QW source 2.21 (misc_fireball) | reason: Incorrect setting of ".nextthink" with itself instead of "time", which may lead to a past time point depending on the frame rate. Here's the solution for normal Quake by Jonathan "Perged" Down
In long games the "Error: No Free Edicts" message appears often. Reported by Jonathan "Perged" Down | QW source 2.21 | reason: Bubble spawner are not removed when player gets out of water. Here's the solution for normal Quake by Jonathan "Perged" Down
Not all bubbles (20) are spawned when a player dies depending on the frame rate | QW source 2.21 | Here's the solution for normal Quake
All possible impulses are checked every frame also no impulse have been given. Reported by Jonathan "Perged" Down | QW source 2.21 | Here's the solution for normal Quake by Jonathan "Perged" Down
Lavaballs do not get default speed, if speed is set to zero. Reported by Jonathan "Perged" Down | QW source 2.21 | reason: Typo. Here's the solution for normal Quake by Jonathan "Perged" Down
Player can kill themselves during intermissions causing problems in Coop and deathmatch games. Reported by Yun Zheng "Zhenga" Hu | QW source 2.21 | Here's the solution for normal Quake by Yun Zheng "Zhenga" Hu
Player can not hurt himself in teamplay 1 mode, as stated in the manual | QW source 2.21 | Teamplay 3 is the corrected teamplay 1 Here's the solution for normal Quake
Inefficient enabling/disabling "eyes" model and glowing for quad plus pentagram | QW source 2.21 | Here's the solution for normal Quake
When a player with an active quad or pentagram is killed, his dead body still glows until he respawns | QW source 2.21 | Here's the solution for normal Quake
The handling of classname "trigger_hurt" entities is not working properly, only one player is hurt every second Reported by Robert "Frog" Field | QW source 2.21 | Here's the solution for normal Quake by Robert "Frog" Field

## Windows QuakeWorld Bugs & Suggestions

Current version: 2.30 (latest beta: 2.33-005)

Bug / Suggestion | first occurred in (cause) | workaround or fixed in
--- | --- | ---
AutoPlay always switched back on after exiting Reported by Terry Harris | since first release | not yet reason: The only reference is in the Scitech .LIB files, so it is assumed they turn it off to prevent autorunning CDs while playing and turn it back on regardless of its state in the first place.
Some echos do not cause a new line | recognized in 2.00 | seems to be better in 2.20, but still at startup directly behind the first echo line from "autoexec.cfg" stands "Video Mode <x>X<y> initialized" and then follows a blank line

## OpenGL QuakeWorld Bugs

Current version: 2.30 (GLQuake 0.98) (latest beta: 2.33-005)

Bug / Suggestion | first occurred in (cause) | workaround or fixed in
--- | --- | ---
R_MIRRORALPHA not working without multitexturing | since 2.30(?) | not yet
If the baseskin is missing then QW uses the last skin in player.mdl | recognized in GLQuakeWorld 2.21 | not yet suggestion: The client should default to the first skin in player.mdl if the baseskin is missing
Missing R_WATERWARP Reported by Caramon | since first release | not yet
When running server and GLClient on one machine, then every time ANY client connects or dies, the server pops up and the client is forced to the background (normally minimized) | recognized with GLQuakeWorld / QWServer 2.21 | workaround: This can be avoided by first maximizing the server window (ALT+ENTER), then minimizing it (ALT+TAB). Reported by Gjermund Jensvoll
If server enables transparent water, clients have to set "r_wateralpha" again to get transparent water, no matter if it was already set before | GLQuakeWorld 2.21 | not yet
Entities not warped underwater Reported by Apollo on the QBoard | recognized in GLQuakeWorld 2.30 | not yet
Old status bar (cl_sbar 1) cleared or not drawn, when gl_clear set to 1 | since first release(?) | not yet workaround by Ramnor: Use -fullsbar on startup.
No fullbright colors Reported by "Ronin" | since first release | not yet solution by Neal White of Wally: The fix is to add a third "glow-map" rendering pass to any texture that contains fullbright colors. Here's the basics: scan each loaded texture; if there is a fullbright color, flag the texture, build a glow-map, and change all the fullbright pixels in the orginal texture to 0; then when rendering the triangle, draw the image and light-map as usual and then apply the glow-map on top with an ADD blend.
After playing a lot of maps GLQuakeWorld crashes | since first release(?) | fixed for the released sourcecode here, done by Lord Havoc in a QSG tutorial, additionally added a maximum cache check by myself reason: Texture mismatches are not handled correctly and the texture cache can be filled over the maximum (memory leak) which crashes GLQuakeWorld

"GL_LoadTexture: cache mismatch" map problem
Each time when E2M5 and DM4 are loaded in a quake session this error occurs, no matter in which order they are loaded or how many maps were loaded between them.
Reported by Ghettoblasta from Clan Jaegermeister
More error producing combinations are...
E4M6 and DM4
Mission Pack #1:
HIP2M1 and HIP2M4
HIP2M2 and HIP2M4
HIP2M6 and HIP2M4
HIP2M1 and HIP3M3
HIP2M3 and HIP3M3
Capture The Flag (Allstar CTF):
CTF2 and CTF6
CTF2 and CTF2M5
CTF2 and CTF2M7
CTF2 and TWCTF2MC
Mission Pack #2 is o.k.
Malice is o.k.
Beyond Belief is o.k.
Zerstörer: Testament Of The Destroyer is o.k.

GLQuakeWorld and different maps

fixed in the released sourcecode
reason:
This error is raised because a map (here DM4) uses a texture with the same name like in another map (here E2M5 or E4M6) with a different size.
workaround:
use BSP Texture Renamer, and make sure you read the part about QW's map checksumming in its readme

When two levels have a texture with the same names and sizes but different images, the second level is displayed with the wrong/previous texture.
An example can be seen here, where "comp1_1" of E1M1 was renamed to "city2_6". The modified E1M1 was loaded in GLQuakeWorld and then DM6

since first release(?)

fixed in the released sourcecode

Weird looking charset when console width/height differs from screen resolution Reported by "TcT" | recognized in GLQuakeWorld 2.00 | fixed for the released sourcecode here by TcT himself
Blurry textures in distance | recognized in GLQuakeWorld 2.00 (8bit textures) | fixed in the released sourcecode, parameter -no8bit workaround for older versions: use my little tool "OGL16BIT" to disable the 8bit texture function in 3Dfx's MiniGL port
Sky ripples Good example at the SinglePlayer start point of E4M2. Reported by Michael Hiney (email address not published by request) | recognized in GLQuakeWorld 2.30 | solution: use gl_subdivide_size 1 to avoid this, but this may lower your performance in areas with sky
Random occurrence of "psychedelic" screenshots with Voodoo2 | recognized in 2.21 with 3Dfx MiniGL port 1.3 | 3Dfx MiniGL port 1.46
Dramatical slowdown in places with sky | since first GLQuakeWorld release | 2.10 (gl_subdivide_size 128)
Flickering status bar, when using old style status bar with Voodoo Rush chipsets | recognized in GLQuakeWorld 2.00 (3Dfx OpenGL port) | 2.10, use gl_triplebuffer 1 For previous versions use -fullsbar on startup. Thanks to JakFrost of the fabulous Console pages

a Quake Info Pool page
© 1997-2022 by Maddes