Documentation for DMDKCONV V1.00 (960805): I myself was bored about the poor job which WAD2MAP (on the Duke Nukem 3D CD) does when trying to convert a Doom Level. PWADS are not supported at all, and only very few of the linedef/sector types are supported. Even by modifing its datafile it was not possible to get satisfying results. So i tried to write my own converter. Unfortionately the Duke engine has several "limitations" (not to say bugs) so it was not possible to do the conversion as good as i hoped when starting this project. I was planning to do a fully featured converter and to release it as shareware. Now it gives a good base for further editing and its freeware. Needless to say that i cant give support for this program, and needless to say that you use it at your own risk (usual DISCLAMER). I dont know if i can do further development on it, probably only a bit. DMDKCONV features/limitations: - lindefs which are triggered by walking over them mostly dont work (cant be resolved by touchplates, just try jumping repeatedly on one) This includes all remote doors/lifts/stairs with the "W" walk type. - correct conversion of upper/mid/lower texture is often not possible, because Duke virtually only supports two textures on one wall. - teleporters are usually correctly converted, with the one limitation: if they move up/down they do not work in most cases, because the duke teleport sprite is only activated when then the player is exactly at the same heigth, usually the ground of the sector at conversion time. So lifts with telporters on it probably wont work. This is a limitation of the Duke enginge, a workaround would be very complicated. - some kind of stairs work, others mess up the level (the algorithm for determining the stairs that move is not fully implemented) - due to geometrical errors in many WADs the converter aborts when it finds such an error. It would be possible to overcome them, but this would require a complete rewrite of the algorithm. So the only way is to correct the error by using a good WAD editor, which can check WADs and allows editing of raw data, like WADAUTHOR. Even the original Doom2 MAP19 has one of these bugs, so cant be handled by DMDKCONV. Many PWADs will have some of those bugs too, the only way is to debug them. Sorry. - Duke has two hurting textures (floorplasma/slime), dont use them in the DMDKCONV.DAT file, because the Doom "sector hurt" is converted into them. - remote doors, lifts, etc. with switches: sometimes switches are inserted, sometimes a switching texture (tile 395, DOORTILE22) is used. - most key doors are supported, although the access switch may be misplaced. - the 4 secs lift "autoup" cant be resolved in Duke, all lifts move up and down all the time. But when removed, some lifts cant be used at all. Sorry. Requirements for DMDKCONV: You need at least a 386. DMDKCONV is a 16bit real mode program, so runs with 640k Memory. The larger the level, the more memory is needed. With about 600k i never saw the "Out of Mem"-Error. The largest Doom2 level, MAP15, took less than 10 secs on my P5-166, so usually you wont fall asleep while converting. You can modify the DMDKCONV.DAT file to improve the conversion: - Only one third of the textures have their equivalent, the rest is set to 0, so it gives the ugly brown texture. You can easily search for replacement textures and put them in the data file - the aliases have been taken from the PNAMES resoure out of the DOOM2.WAD file, and the first entry has been used for each texture. this may result is some bad converted textures. You can overcome this by changing the alias, or better by removing the alias and adding a new textureconversion entry in the section above. Here the advanage is a better "tuned" texture. - some of the thing conversions have been taken from the WAD2MAP datafile and virtually can not be called conversions. Many monsters are converted into bosses, which makes the level far to difficult, and results in a level end when one of the bosses is killed. Here is the format of the DMDKCONV.DAT file (its just pure text). Each line contains one entry, this entry can be one of the following: 1) The direct texture conversion: FORMAT: palette can be omitted, then 0 (normal palette) is used EXAMPLE: W46_39,128,7 This would convert the Doom texture W46_39 to Duke texture 128 with palette 7 Warning: do not use the palette very often, i.e. leave them at 0, because there can only be one palette on a wall and if both textures have different palette entries in the datafile, the wall wont look as you would like. Also there is the possibility of using three different textures on a wall. If lower/upper/mid texture can be seen on a wall, then the back side has only its main texture visible and Duke stores one of the front lower/upper in the lower/upper value of the back side of the wall. But all attributes are taken from the back side, so the above palette problem appears on the back side too. Even back wall shading and backsector lighteffects are then interfering. On floors the palette can be set without limitations, so if you can assure that your texture will only be used for floor/ceiling, this would improve conversion. But this would require that the alias section in the data file is replaced by direct texture conversion entries, with palette set to 0, and then the direct conversion entries for the floor/ceiling can make full use of the palette. I used the palette only for the "door colored walls". 2) The alias texture conversion FORMAT: EXAMPLE: DOORYEL,W46_39; This sets the conversion for the first entry to the same as the second one. In the examples this results in replacing all DOORYEL textures by the walltile 128 with palette 7 (yellow). You could also write "DOORYEL,128,7". The aliases in DMDKCONV.DAT have been taken from the PNAMES resource in the DOOM2.WAD file. Replacing the aliases would allow a better texture replacement, but is is a lot of work to do. 3) The things conversion FORMAT: EXAMPLE: 3001,2001,21,2,20,100 This converts the Doom IMP into a Duke PIGCOP with palette 21, ORes the 2 with the cstat field of the sprite, in this case sets it to transluscence, and sets the xsize to 20 and the ysize to 100. This results in an orange, transparent, slim, tall PIGCOP. Note when using bosses, the level ends when you kill one of them. A special entry is the 9XXX (like player starts). They all require additional conversion and are reserved. The thing number ist the doom thing number as listed in the "Unofficial Doom Specs" (see below). The DMDKCONV.DAT file is divided into three sections, with the entries put into each in the above order. This is not necessary, but improves readability. Currently the DMDKCONV.DAT file requires a lot of modification, to get good conversions, but i dont have time to do that. Maybe some of you will do this and if you really make a good DAT file, send me it so that i can release it with the next version of DMDKCONV (i dont know if i will have the time, maybe when Duke V1.4 is out) or standalone on my web page. Please do not distibute modified DAT files, and not distribute DMDKCONV with modified DAT files. Where to get DMDKCONV: Compuserve: Action Games Forum (GO ACTION), Apogee Forum (GO APOGEE), Modem Games Forum (GO MODEMG), search for DMDKCONV.ZIP WorldWideWeb: http://ourworld.compuserve.com/homepages/o_wendlandt The converter program DMDKCONV.EXE and this documentation is Copyright Olaf Wendlandt, 100754.2513@compuserve.com and my be used without of charge (freeware) and can be distribute freely, as long as it remains unmodified and complete. Credits: - Mathew S Fell (msfell@aol.com) for the "Unofficial Doom Specs" - My friend Harvey Gerbl for playing and testing WADs/MAPs with me. - Apogee/3DRealms for an excellent game