This is a post I did to explain how to put new graphics and demos in a PWAD, enjoy! ====================================================================== From: jsg8a@acadvm1.uottawa.ca (Jean-Serge Gagnon) Newsgroups: comp.sys.ibm.pc.games.action Subject: How to put new demos and grphics in PWAD files Date: 21 Apr 1994 16:29:43 GMT Hi, I'm the author of FOREST.WAD (get FOREST12.ZIP on many sites), and am also a beta tester of DEU. When I released FOREST 1.1, Raphael expressed to me the fact that he was unhappy that I had release a new PWAD that included new demos and graphics because DEU 5.1 will have a feature to do this and he thought that I had over-stepped my priviledges as a beta tested and taken advantage of that feature. I assure you that I did not! (some are saying "Sure! He just wants us to beleive that so that he feels less guilty!") I will prove it to you by trying to explain how I did it in a simple language so that other can do it also. I will include BATCH files and DIR files so that you can use them as examples to do it. I hope this will clear the fact that I DID NOT USE THE NEW FEATURE OF DEU 5.1beta TO CREATE THIS NEW WAD. Before I begin, this is VERY IMPORTANT, WAD MASTER PUTS AN IWAD MARKER AT THE BEGINNING OF THE PWAD FILE, PLEASE, PLEASE, PLEASE, BEFORE UPLOADING ANY NEW WADS CREATED USING IT, CHANGE THE "I" TO A "P" BEFORE WITH ANY HEX EDITOR. This is probably because it was written before ID released information (or someone else) about the IWAD-PWAD formats. First, you will need these files: WT100.ZIP (Wad tools 1.0) to view the graphics in the DOOM.WAD file and find the name of the texture you want to change. DMGRAP10.ZIP (Doom graph 1.0) to extract and store a GIF file to/from the DOOM.WAD file. DMAUD11.ZIP (Doom audio 1.1) to extract and store audio files to/from the DOOM.WAD file (I didn't do it, but you could also include new sounds in a PWAD file) WDMSTR05.ZIP (Wad Master 1.0) to extract the raw data from your new levels and the modified textures or sound from the DOOM.WAD file. Second, how does it all come together. Once you have created your level with DEU (or any other editor) decide what texture you want to change, find out what it's name is in the DOOM.WAD file with WT and extract it with DMGRAPH. For example if you want to change the SP_DUDE2 texture, you will find with WT that it's name is WALL50_2, so use the command "DMGRAPH WALL50_2 -e file.gif". You will want to check the insertion point for when you put the modified graph back in with "DMGRAPH WALL50_2 -v". Once you have the GIF, do what you want, store it back in DOOM.WAD (make a copy of it to be able to put back the original in) so that you can extract the RAW file with WAD Master. To use WadMaster, you need to create a reference DIR file with WADDIR. If your new map is called "NEWMAP", and we want the dir file to be NEWMAP.DIR then type: "WADDIR NEWMAP.WAD >MEWMAP.DIR". Once you have the DIR file, you must edit it so that seperate entries (levels, if you have more than one level) do not go in the same directory. Look at the first few lines without the comment), they will be like this: E1M1\ E1M1\ 0 THINGS THINGS 10 LINEDEFS LINEDEFS 952 you must add a dospath to the first column like this: E1M1\ E1M1\ 0 E1M1\THINGS THINGS 10 E1M1\LINEDEFS LINEDEFS 952 (make sure the column 2 starts at the same place) Once you've done that, you can extract the raw data to dos files in a directory, so create a directory (like NEWMAP) and type the command "UPKWAD -o NEWMAP NEWMAP.DIR NEWMAP.WAD" and this will extract all the resources in the PWAD map you created to the directory NEWMAP. OK! now let's put the modified GIF in there! Look at the order in which the DOOM.WAD directory is (do WADDIR >DOOM.DIR) so that you can put the new graphic in the proper order (it won't work otherwise). You will want to copy the NEWMAP.DIR file to an other name, let's say NEWMAP1.DIR and edit it to add the proper references to it. WALL50_2 is in the P2 section, so you need to add the folowing lines at the end of the NEWMAP1.DIR file: P2_START\ P2_START\ 0 P2_START\WALL50_2 WALL50_2 17544 P2_END\ P2_END\ 0 (notice that the DEMO1-3 are just before the E1M1 entry, so you could put the lines as they apear in DOOM.DIR just before the E1M1 line in NEWMAP1.DIR and copy any demo lmp for your PWAD to NEWMAP\DEMOx (no LMP extention). That's how I did it) Once you've done that, create a WAD DIR file to be able to extract the raw graphic from DOOM.WAD (after storing the modified GIF, let's call it NEW50_2.GIF in DOOM.WAD with "DMGRAPH WALL50_2 -s NEW50_2.GIF"). You will also need to create an other directory, let's say GRAPHIC. So, create the WAD DIR file like this: (let's call it GRAPHIC.DIR) P2_START\ P2_START\ 0 P2_START\WALL50_2 WALL50_2 17544 P2_END\ P2_END\ 0 and type the command "UPKWAD -o GRAPHIC.DIR" (it used DOOM.WAD by default) and you will have a new file in GRAPHIC\P2_START call WALL50_2. I copied the raw files to an other name, but you don't have to. You can just copy it like this "COPY GRAPHIC\P2_START\WALL50_2 NEWMAP\P2_START" Now we're ready to put the new graphic and demos in a PWAD file. So type the command "PKWAD -o NEWMAP NEWMAP1.DIR TOTAL.WAD". Remember that you have to use a modified wad dir file (that's why I typre NEWMAP1.DIR instead of just NEWMAP.DIR) that includes the new files you want included in the new PWAD file, like the DEMOs, graphic or sound resources. You can put anything there! To finish it off, here's a copy of a series of files I used to create FOREST.WAD, I will not explain them here because you should be able to figure it out, if not, there is documentation that comes with Wad master, I figured it out, I'm sure you can. ------------------------- getpics.bat ------------------------------- @echo off cls echo Storing new graphics in DOOM.WAD... dmgraph sky2 -s forest.gif -i 127,123 >nul dmgraph wall50_2 -s new50_2.gif -i 63,123 >nul dmgraph mwall5_1 -s new5_1.gif -i 63,123 >nul dmgraph mwall4_2 -s new4_2.gif -i 63,123 >nul dmgraph credit -s newcred.gif -i 0,0 >nul echo Unpacking new graphics to raw files... upkwad -o graph graph.dir >nul echo Putting normal graphics back in DOOM.WAD... dmgraph sky2 -s sky2.gif -i 127,123 >nul dmgraph wall50_2 -s wall50_2.gif -i 63,123 >nul dmgraph mwall5_1 -s mwall5_1.gif -i 63,123 >nul dmgraph mwall4_2 -s mwall4_2.gif -i 63,123 >nul dmgraph credit -s credit.gif -i 0,0 >nul echo Copying raw graphics to .pic files... copy graph\p2_start\sky2 newsky2.pic >nul copy graph\p2_start\wall50_2 new50_2.pic >nul copy graph\p2_start\mwall5_1 new5_1.pic >nul copy graph\p2_start\mwall4_2 new4_2.pic >nul copy graph\credit newcred.pic >nul ------------------------- graph.dir -------------------------------- # DOOM WAD FILE DIRECTORY LISTING # LINES STARTING WITH # ARE IGNORED # EACH LINE CONTAINS DOSFILE WADFILE SIZE # THIS FILE CAN BE USED TO UNPACK/PACK WAD FILES # DO NOT CHANGE THE ORDER OF THESE LINES!!!! # HOWEVER, DELETION IS OKAY CREDIT CREDIT 68168 P2_START\ P2_START\ 0 P2_START\WALL50_2 WALL50_2 17544 P2_START\MWALL4_2 MWALL4_2 17544 P2_START\MWALL5_1 MWALL5_1 17544 P2_START\SKY2 SKY2 65344 P2_END\ P2_END\ 0 P_END\ P_END\ 0 # IN FILE doom.wad THERE ARE 10366184 bytes in 2045 FILES. ------------------------ makejs.bat --------------------------------- @echo off cls echo Creating composite file of all missions... deu -file e2m1js.wad e2m2js.wad e2m3js.wad nul echo Unpacking WAD... upkwad -o forest forest.dir forest.wad >nul echo Copying new image files... copy newsky2.pic forest\p2_start\sky2 >nul copy new50_2.pic forest\p2_start\wall50_2 >nul copy new5_1.pic forest\p2_start\mwall5_1 >nul copy new4_2.pic forest\p2_start\mwall4_2 >nul copy newcred.pic forest\credit >nul echo Copying DEMO files... copy js1.lmp forest\demo2 >nul copy js2.lmp forest\demo3 >nul copy js3.lmp forest\demo1 >nul echo Creating new WAD with DEMO files and new graphics... pkwad -o forest jsdemos.dir forest.wad >nul --------------------- makejs.key --------------------------------- g forest.wad q ---------------------- forest.dir -------------------------------- # DOOM WAD FILE DIRECTORY LISTING # LINES STARTING WITH # ARE IGNORED # EACH LINE CONTAINS DOSFILE WADFILE SIZE # THIS FILE CAN BE USED TO UNPACK/PACK WAD FILES # DO NOT CHANGE THE ORDER OF THESE LINES!!!! # HOWEVER, DELETION IS OKAY E2M1\ E2M1\ 0 E2M1\THINGS THINGS 2720 E2M1\LINEDEFS LINEDEFS 5684 E2M1\SIDEDEFS SIDEDEFS 16620 E2M1\VERTEXES VERTEXES 1352 E2M1\SEGS SEGS 6672 E2M1\SSECTORS SSECTORS 716 E2M1\NODES NODES 4984 E2M1\SECTORS SECTORS 2418 E2M1\REJECT REJECT 1082 E2M1\BLOCKMAP BLOCKMAP 11942 E2M2\ E2M2\ 0 E2M2\THINGS THINGS 2250 E2M2\LINEDEFS LINEDEFS 4956 E2M2\SIDEDEFS SIDEDEFS 14100 E2M2\VERTEXES VERTEXES 1344 E2M2\SEGS SEGS 6372 E2M2\SSECTORS SSECTORS 744 E2M2\NODES NODES 5180 E2M2\SECTORS SECTORS 2002 E2M2\REJECT REJECT 742 E2M2\BLOCKMAP BLOCKMAP 11782 E2M3\ E2M3\ 0 E2M3\THINGS THINGS 10 E2M3\LINEDEFS LINEDEFS 3248 E2M3\SIDEDEFS SIDEDEFS 9960 E2M3\VERTEXES VERTEXES 764 E2M3\SEGS SEGS 4104 E2M3\SSECTORS SSECTORS 472 E2M3\NODES NODES 3276 E2M3\SECTORS SECTORS 1378 E2M3\REJECT REJECT 352 E2M3\BLOCKMAP BLOCKMAP 3624 # IN FILE forest.wad THERE ARE 130850 bytes in 33 FILES. ---------------------------- jsdemos.dir --------------------------- # DOOM WAD FILE DIRECTORY LISTING # LINES STARTING WITH # ARE IGNORED # EACH LINE CONTAINS DOSFILE WADFILE SIZE # THIS FILE CAN BE USED TO UNPACK/PACK WAD FILES # DO NOT CHANGE THE ORDER OF THESE LINES!!!! # HOWEVER, DELETION IS OKAY DEMO1 DEMO1 1000 DEMO2 DEMO2 1000 DEMO3 DEMO3 1000 E2M1\ E2M1\ 0 E2M1\THINGS THINGS 2720 E2M1\LINEDEFS LINEDEFS 5684 E2M1\SIDEDEFS SIDEDEFS 16620 E2M1\VERTEXES VERTEXES 1352 E2M1\SEGS SEGS 6672 E2M1\SSECTORS SSECTORS 716 E2M1\NODES NODES 4984 E2M1\SECTORS SECTORS 2418 E2M1\REJECT REJECT 1082 E2M1\BLOCKMAP BLOCKMAP 11942 E2M2\ E2M2\ 0 E2M2\THINGS THINGS 2250 E2M2\LINEDEFS LINEDEFS 4956 E2M2\SIDEDEFS SIDEDEFS 14100 E2M2\VERTEXES VERTEXES 1344 E2M2\SEGS SEGS 6372 E2M2\SSECTORS SSECTORS 744 E2M2\NODES NODES 5180 E2M2\SECTORS SECTORS 2002 E2M2\REJECT REJECT 742 E2M2\BLOCKMAP BLOCKMAP 11782 E2M3\ E2M3\ 0 E2M3\THINGS THINGS 10 E2M3\LINEDEFS LINEDEFS 3248 E2M3\SIDEDEFS SIDEDEFS 9960 E2M3\VERTEXES VERTEXES 764 E2M3\SEGS SEGS 4104 E2M3\SSECTORS SSECTORS 472 E2M3\NODES NODES 3276 E2M3\SECTORS SECTORS 1378 E2M3\REJECT REJECT 352 E2M3\BLOCKMAP BLOCKMAP 3624 CREDIT CREDIT 68168 P2_START\ P2_START\ 0 2_START\WALL50_2 WALL50_2 17544 2_START\MWALL4_2 MWALL4_2 17544 2_START\MWALL5_1 MWALL5_1 17544 2_START\SKY2 SKY2 34554 2_END\ P2_END\ 0 _END\ P_END\ 0 IN FILE doomjs.wad THERE ARE 130850 bytes in 33 FILES. ------------------------ end ----------------------------------------- -- --- Jean-Serge Gagnon e-mail:jsg8a@acadvm1.uottawa.ca Ottawa Univerity, Ontario voice:(613) 791-0785 Canada K1N 6N5 fax:(613) 564-7180 *** Get the PostScript Processing Speed Test (PPST) in /public *** *** on gaaj.cosmos.uottawa.ca. It's a PostScript benchmark test. ***