Quake Retexturing Project

Quake Retexturing Project

The goal of this project is to retexture all textures in Quake without changing the mood, theme, or atmosphere that the original textures brought us in 1996.

Map texture bug
The bug is made up by the fact that the Quake mapmakers and texture artists used different textures but with the same name in some maps. There are in total 6 texture names that are affected by this bug.
 
metal5_2 version 1
metal5_2 version 2
For example, the texture metal5_2 is actually two different textures with the same name:
  • metal5_2 version 1 is comprised of arcs (upper image) and is used in E1M7, E1M8, E3M4 and E3M5.
  • metal5_2 version 2 have an ornamental design made up by nested circles (lower image) and is used in E2M5 and E4M6.
 
This bug hasn't really been much of a problem until modified Quake clients, with added ability to replace the original content with replacement textures, first emerged sometime around year 2000. The only time before 2000 that this bug actually was a bug was with the original GLQuake client that crashed if loading two maps right after each other containing different textures with the same name!
 
 
Solution 1:
Note! This solution relies on client side code and as far as we know, this is only implemented in ZQuake and eZquake! If you want to include this solution in other clients contact Tonik.
 
Tonik, developer of ZQuake, brought this solution forth on the Quakesrc forums (forum is sadly not available anymore). In short, the client can distinguish between "buggy textures" by comparing their md4 values and, with some built-in code, it knows which md4 value goes with which map.
Crossreference table
Texture name in .bspUnique md4 valueAlternate name used for replacement texture
metal5_20x45d110ecmetal5_2_arc
metal5_20x0d275f87metal5_2_x
metal5_40xf8e27da8metal5_4_arc
metal5_40xa301c52emetal5_4_double
metal5_80xfaa8bf77metal5_8_back
metal5_80x88792923metal5_8_rune
plat_top10xfe4f9f5aplat_top1_bolt
plat_top10x9ac3fccfplat_top1_cable
sky40x8a010dc0sky4
sky40xde688b77sky1
window03?n/a
window03?n/a
 
If there is no replacement texture available with the alternate name, it will look for a replacement texture with the original name instead.
Solution 2:
This solution rely on the fact that clients first look for replacement textures in a base folder, usually named 'textures', and if map specific sub folders are present e.g. E4M3, any textures in the sub folder will override any exactly named textures in the base folder for that specific map.
 
Within QRP we've decided that for our forthcoming releases (QRP v.1.00 and on) the most frequently used version (version 1) of each buggy texture is placed in the base folder. The less frequently used version (version 2) will be placed in map specific sub folders according to where they belong.
 
 
Below is a list of all buggy map textures in Quake. The texture's alternate name, which is used in solution 1, is stated below each texture.
Buggy textures
Texture nameVersion 1
Version 2
metal5_2
(metal5_2_arc)

(metal5_2_x)
metal5_4
(metal5_4_arc)

(metal5_4_double)
metal5_8
(metal5_8_back)

(metal5_8_rune)
plat_top1
(plat_top1_bolt)

(plat_top1_cable)
sky4
(sky4)

(sky1)
window03
(n/a)

(n/a)
 
© Quake Revitalization/Retexturing/Remodeling Project 2002–2016