Doom WAD | |
---|---|
Udvidelse | .wad |
MIME -type | application/wad og application/octet-stream [1] |
Udvikler | ID-software |
Formattype | data |
.WAD (ifølge id Software, kommer fra W here's A ll the Data ; [ 2] ) er et arkivfilformat , der blev brugt i computerspil baseret på Doom -motoren : Doom , Doom 2 , Final Doom: The Plutonia Experiment , Final Doom: Evilution , Heretic , Hexen og nogle andre, til lagring af spilressourcer ( teksturer , musik, lyde og andre). Formatet af ressourcer placeret i en sådan fil kan indebære komprimering. Formatet i sig selv giver ikke komprimeringsmuligheder, selvom dets struktur tillader oprettelsen af flere links i overskriften til en faktisk ressource, hvilket undgår duplikering af en ressource, som er helt reduceret til en fuldstændig eller delvis gentagelse af en anden ressource. På grund af denne situations eksotiske karakter er tilfælde af praktisk brug af denne mulighed ukendt.
Ressourcer gemmes i navngivne blokke ( eng. lump ), hvis navne, størrelser og placering i filen er gemt i mappen - ressourceallokeringstabellen, der som regel er placeret i slutningen af filen, selvom mappen kan være placeret hvor som helst.
Biblioteket består af 16 - byte poster, der enten beskriver datablokke eller er markører. Hver post består af tre felter: en 4-byte offset af begyndelsen af blokken i forhold til begyndelsen af filen, en 4-byte længde af blokken (for en markør er feltet nul) og et navn på otte tegn (se Standard 8.3 ) af blokken, polstret med nuller til 8 bytes.
.WAD-filen har en 12-byte header, der består af tre 4-byte dele: signatur, antal mappeposter og forskydning af begyndelsen af biblioteket i forhold til begyndelsen af filen.
Signaturen kommer normalt i to typer (til spil, der bruger Doom -motoren og derivater):
Der er også andre signaturer, især den WAD2der bruges i spillet Quake . Sådanne filer har normalt et andet (udvidet) mappeformat.
Markører bruges til at markere en gruppe af blokke, som spilmotoren anser for at være i en strengt defineret rækkefølge. For eksempel starter niveaudata med en markør ExMyfor DOOM og Heretic , x er episodenummeret, y er niveaunummeret, eller MAPxxfor DOOM 2 og Hexen er niveaunummeret xx . Teoretisk set kan bloknavnet være hvad som helst gyldigt i et FAT - filsystems filnavn . Så er der datablokke af niveauet i en strengt defineret rækkefølge: , , , , , , , , , . Hexen har også en blok, der indeholder scripts . THINGSLINEDEFSSIDEDEFSVERTEXESSEGSSSECTORSNODESSECTORSREJECTBLOCKMAPBEHAVIOR
Når PWAD-filer er inkluderet, placerer spilmotoren deres mapper øverst på listen, så de blokke, de indeholder, findes først, når de søges. Uden at ændre hovedfilen kan du således erstatte næsten enhver spilressource ( kort , sprites , teksturer).
I den originale motor er der et problem med brugen af markører: alle sprites og gulv- og loftteksturer skal placeres mellem specielle markører: S_STARTbåde S_ENDfor sprites og F_STARTfor F_ENDgulv- og loftteksturer, hvilket kræver at alle blokke placeres sammen med markører fra IWAD- fil i PWAD-fil, hvilket påvirker ikke kun brugervenlighed, men også distributionsproblemer (original spilgrafik er normalt beskyttet af copyright ). For at eliminere dette problem er der specielle programmer, der opretter de nødvendige PWAD-filer allerede hos slutbrugeren, som har den nødvendige IWAD-fil. I moderne havne er disse restriktioner blevet elimineret.
Nyere spil fra id Software , startende med Quake , udviklede en anden teknologi til lagring af spilressourcer baseret på deling af operativsystemets filsystem og fuldgyldige arkivfiler, der indeholder et udsnit af filsystemet. Når du søger efter en ressource, søges filen først i filsystemet i visse mapper ; hvis den ikke findes, så vises listen over arkiver. Således bliver ændring af spilressourcen så enkel som muligt: du skal bare placere den ønskede fil på det rigtige sted på disken. Og arkiver giver dig mulighed for ikke at fylde mapperne i filsystemet med mange små filer. Quake bruger også og .WAD-filer: teksturer gemmes i en fil gfx.wad, som igen er pakket i en pak0.pak.
Denne teknologi bruges stadig i mange moderne spil, ikke kun fra id Software .