The first lump gives the internal name of the map. For certain lumps, however, the location is crucial.Ī map in Doom is made up of several lumps, each containing specific data required to construct and execute the map. The majority of lumps have no restrictions on where they must be located in WAD files, although there are typically some guidelines to make the file easily readable by other people. Type of file is not stated in the lump's data. It is possible for more than one lump to have the same offset value, aswell as having offsets that overlap other lump data. Their offset value therefore is nonsensical (often 0). "Virtual" lumps (such as F_START) only exist in the directory, having a size of 0. Tools should not assume the lump-order in the WAD to be sorted by their byte offset into the WAD. When a string is less than 8 bytes long, it should be null-padded to the tight byte. Only the characters A-Z (uppercase), 0-9, and - _ should be used in lump names (an exception has to be made for some of the Arch-Vile sprites, which use "\"). The structure of each entry is as follows:Īn integer holding a pointer to the start of the lump's data in the file.Īn integer representing the size of the lump in bytes.Īn ASCII string defining the lump's name. The length of the directory is determined by the number given in the WAD header. It consists of a number of entries, each with a length of 16 bytes. The directory associates names of lumps with the data that belong to them. Their values can never exceed 2 31-1, since Doom reads them as signed ints. Defines whether the WAD is an IWAD or a PWAD.Īn integer specifying the number of lumps in the WAD.Īn integer holding a pointer to the location of the directory.Īll integers are 4 bytes long in x86-style little-endian order. ![]() A WAD file always starts with a 12-byte header.
0 Comments
Leave a Reply. |