.wad: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(→‎Creating WADs with XBLAH's Modding Tool: remove; didn't add any information, and was already mentioned elsewhere on the page in a less advertisey method)
m (Move back to WAD)
Tag: New redirect
 
Line 1: Line 1:
'''WAD''' (short for '''Where's All the Data''')  is the file extension for [[Half-Life]] texture packages. WAD files first originated in id Software's Doom as a general purpose file archive to help facilitate [[Modification|game mods]].  A format of the same name was later used in id Software's {{quake|1}} engine as a texture package, then consequentially adapted by Half-Life 1's {{goldsrc|1}} engine, which was based off the heavily modified version of Quake engine. GoldSrc specifically uses version 3 of the format, referred to in its header as WAD3. WAD files typically contain standard texture sets, custom texture sets for individual levels, and sprays. HUD elements typically use [[SPR]], and fonts typically use [[Wikipedia:TrueType fonts|TTF]].
#REDIRECT [[WAD]]
 
== Technical specifications ==
 
WAD3 can store 3 types of data (the WAD format itself allows up to 256 types, but GoldSrc uses only 3).
 
{{note|[[Qlumpy]] supports other types as well. Despite it being possible to add these types, you should not use them.}}
 
 
The following types are supported:
;miptex (0x43)
:Multiple-of-16-sized world textures with 4 mipmaps.
;qpic (0x42)
:Simple image with any size.
typedef struct
{
    int width, height;
    char data[height][width]; //Image is stored as 8-bit numbers of colors in palette
    short colors_used; //Number of colors in palette (can't be more than 256)
    char lbmpalette[numcolors][3]; //8-bit RGB palette data
} qpic_t;
;font (0x45)
:Fixed-height font. Contains an image and font data (row, X offset and width of a character) for 256 ASCII characters.
typedef struct
{
    short startoffset; //Offset to the character in data
    short charwidth;
} charinfo;
typedef struct
{
    int width, height; //Width is always 256 pixels
    int rowcount; //Number of fixed-height character rows
    int rowheight; //Height of a row
    charinfo fontinfo[256]; //Info about each character
    char data[height][width]; //Same as in qpic_t
    short colors_used; //Same as in qpic_t
    char lbmpalette[numcolors][3]; //Same as in qpic_t
}
All numbers in WAD files are unsigned and little-endian.
 
== Links ==
 
;[https://web.archive.org/web/20140819033858/http://www.cstrike-planet.com/wads CStrike Planet]: A collection of official and custom [[Counter-Strike]] WAD files.
;[https://web.archive.org/web/20081019053702/http://wadfather.planethalflife.gamespy.com/index-new.htm The Wadfather]: A large collection of WAD files.
 
== Utilities ==
 
;{{gcfscape|4}}: Views and extracts WAD files as BMP files.
;[https://github.com/yuraj11/HL-Texture-Tools Half-Life Texture Tools]: Modern GUI tool for creating, viewing and extracting WAD files and sprites.
:[https://github.com/yuraj11/HL-Texture-Tools/releases/latest Download]
;[[HLExtract]] from [[HLLib]]
:command-line utility written in C that can browse, extract, validate and defragment all supported packages...
;[[Qlumpy]]: Half-Life SDK tool for compiling WAD files.
;{{vtfedit|4}}: 3rd party tool for converting WAD files to Source materials.
;[https://github.com/pwitvoet/wadmaker WadMaker and SpriteMaker]: Modern CLI tool for creating, updating and extracting WAD files and sprites.
:[https://github.com/pwitvoet/wadmaker/releases/latest Download]
;[https://web.archive.org/web/20080624180351/http://www.atomicgamer.com/wally/ Wally]: The de facto WAD editing suite (supports only miptex).
:[https://gamebanana.com/tools/4774 Download]
;[[Xwad]]: Source SDK tool for converting WAD files to Source [[material]]s.
;{{Xblahmt|4}}: Can view, edit and create WAD files.
 
==See also==
*[[Convert WAD to VMT...|WAD to VMT conversion in Hammer]]
*[[User:SirYodaJedi/GoldSrc WAD Lists]] for some games...
 
[[Category:File formats|wad]]

Latest revision as of 04:33, 4 June 2023

Redirect to: