ChapyOne Posted January 26, 2020 (edited) Hey, I wanted to try to quickly show you how to get Deathkings of the Dark Citadel working as an episode for vanilla Hexen. This is targeted at GZDoom, but could be used to work with other source ports without much difference. Before we start, make a backup of your HEXDD.WAD as we'll be converting the original file. You'll need a hex editor and a WAD editor to do this. I personally used HxD and Slade 3. Open HEXDD.WAD in your hex editor. Change the first 2 bytes from '49' to '50' and save. This changes the file from an IWAD to a PWAD so we can edit it. Open HEXDD.WAD in your WAD editor. We're going to be renaming and deleting a lot of files. Delete DEMO1, DEMO2, and DEMO3, or rename them to DEMO4, DEMO5, and DEMO6 respectively. Right click each MAPXX file and rename them to add 'D' to the end. For example, MAP33 would become MAP33D. Make sure to rename every MAPXX file. Rename CLUS1MSG to CLUS6MSG, and CLUS2MSG to CLUS7MSG. Rename WIN1MSG to WIN4MSG, WIN2MSG to WIN5MSG, and WIN3MSG to WIN6MSG. Delete TITLE, HELP1, HELP2, and CREDIT Open the MAPINFO file with your WAD editor. Delete everything, and then copy and paste the following text into MAPINFO: Spoiler // --- End sequence for Hexen: Deathkings of the Dark Citadel --- Intermission Inter_ChessD { Fader { Music = "Hall" Background = "FINALE1" Time = 2 FadeType = FadeIn } TextScreen { Background = "FINALE1" TextSpeed = 3 TextLump = "win4msg" Time = -250 } TextScreen { Music = "Orb" Background = "FINALE2" TextSpeed = 3 TextLump = "win5msg" Time = -250 } Fader { Background = "FINALE2" Time = 2 FadeType = FadeOut } Fader { Music = "Chess" Background = "FINALE3" DrawConditional = "Multiplayer", "CHESSALL", 20, 0 DrawConditional = "ClericPlayer", "CHESSC", 60, 0 DrawConditional = "MagePlayer", "CHESSM", 60, 0 Time = 2 FadeType = FadeIn } TextScreen { Background = "FINALE3" DrawConditional = "Multiplayer", "CHESSALL", 20, 0 DrawConditional = "ClericPlayer", "CHESSC", 60, 0 DrawConditional = "MagePlayer", "CHESSM", 60, 0 TextSpeed = 3 TextLump = "win6msg" Position = 5, 135 } } // --- Episodes --- clearepisodes episode "&wt@01" { name = "Hexen - Beyond Heretic" key = "h" } episode "&wt@42" { name = "Deathkings of the Dark Citadel" key = "d" } // --- MAPINFO for Hexen --- // --- Cluster 1 --- map MAP01 "WINNOWING HALL" { warptrans = 1 next = MAP02 cluster = 1 sky1 = sky2 sky2 = SKY3 lightning music = winnowr } map MAP02 "SEVEN PORTALS" { warptrans = 2 next = MAP03 cluster = 1 sky1 = SKY4 sky2 = SKY4 music = jachr } map MAP03 "GUARDIAN OF ICE" { warptrans = 3 next = MAP04 cluster = 1 sky1 = SKY4 sky2 = SKY4 music = simonr } map MAP04 "GUARDIAN OF FIRE" { warptrans = 4 next = MAP05 cluster = 1 sky1 = SKY4 sky2 = SKY4 music = wutzitr } map MAP05 "GUARDIAN OF STEEL" { warptrans = 5 next = MAP06 cluster = 1 sky1 = SKY4 sky2 = SKY4 music = falconr } map MAP06 "BRIGHT CRUCIBLE" { warptrans = 6 next = MAP13 cluster = 1 sky1 = SKY4 sky2 = SKY4 music = levelr } // --- Cluster 2 --- map MAP13 "SHADOW WOOD" { warptrans = 7 next = MAP08 cluster = 2 sky1 = SKYWALL sky2 = sky1, .18 doublesky music = cryptr } map MAP08 "DARKMERE" { warptrans = 8 next = MAP09 cluster = 2 sky1 = SKYFOG2, .12 sky2 = SKYFOG, .16 doublesky fadetable = fogmap music = swampr } map MAP09 "CAVES OF CIRCE" { warptrans = 9 next = MAP10 cluster = 2 sky1 = SKYWALL sky2 = sky1, .18 doublesky music = deepr } map MAP10 "WASTELANDS" { warptrans = 10 next = MAP11 cluster = 2 sky1 = SKYWALL sky2 = sky1, .18 doublesky music = fubasr } map MAP11 "SACRED GROVE" { warptrans = 11 next = MAP12 cluster = 2 sky1 = SKYFOG2, .12 sky2 = SKYFOG, .16 doublesky fadetable = fogmap music = grover } map MAP12 "HYPOSTYLE" { warptrans = 12 next = MAP27 cluster = 2 sky1 = SKYWALL sky2 = sky1, .18 doublesky music = fortr } // --- Cluster 3 --- map MAP27 "HERESIARCH'S SEMINARY" { warptrans = 13 next = MAP28 cluster = 3 sky1 = SKYWALL2 sky2 = SKY4, .15 doublesky music = voidr } map MAP28 "DRAGON CHAPEL" { warptrans = 14 next = MAP30 cluster = 3 sky1 = SKYWALL2 sky2 = SKY4, .15 doublesky music = chap_1r } map MAP30 "GRIFFIN CHAPEL" { warptrans = 15 next = MAP31 cluster = 3 sky1 = SKYWALL2 sky2 = SKY4, .15 doublesky music = chap_3r } map MAP31 "DEATHWIND CHAPEL" { warptrans = 16 next = MAP32 cluster = 3 sky1 = SKYWALL2 sky2 = SKY4, .15 doublesky music = chap_4r } map MAP32 "ORCHARD OF LAMENTATIONS" { warptrans = 17 next = MAP33 cluster = 3 sky1 = SKYFOG2, .12 sky2 = SKYFOG, .16 doublesky fadetable = fogmap music = chippyr } map MAP33 "SILENT REFECTORY" { warptrans = 18 next = MAP34 cluster = 3 sky1 = SKYWALL2 sky2 = SKY4, .15 doublesky music = percr } map MAP34 "WOLF CHAPEL" { warptrans = 19 next = MAP21 cluster = 3 sky1 = SKYWALL2 sky2 = SKY4, .15 doublesky music = secretr } // --- Cluster 4 --- map MAP21 "FORSAKEN OUTPOST" { warptrans = 20 next = MAP22 cluster = 4 sky1 = sky2, .15 sky2 = SKY3, .15 lightning music = foojar } map MAP22 "CASTLE OF GRIEF" { warptrans = 21 next = MAP23 cluster = 4 sky1 = sky2, .15 sky2 = SKY3, .15 lightning music = sixater } map MAP23 "GIBBET" { warptrans = 22 next = MAP24 cluster = 4 sky1 = sky2, .15 sky2 = SKY3, .15 lightning music = wobabyr } map MAP24 "EFFLUVIUM" { warptrans = 23 next = MAP25 cluster = 4 sky1 = sky2, .15 sky2 = SKY3, .15 lightning music = cryptr } map MAP25 "DUNGEONS" { warptrans = 24 next = MAP26 cluster = 4 sky1 = sky2, .15 sky2 = SKY3, .15 lightning music = fantar } map MAP26 "DESOLATE GARDEN" { warptrans = 25 next = MAP35 cluster = 4 sky1 = sky2, .15 sky2 = SKY3, .15 lightning music = blechr } // --- Cluster 5 --- map MAP35 "NECROPOLIS" { warptrans = 26 next = MAP36 cluster = 5 sky1 = sky2, .14 sky2 = SKY3, .14 lightning music = bonesr } map MAP36 "ZEDEK'S TOMB" { warptrans = 37 next = MAP37 cluster = 5 sky1 = sky2, .14 sky2 = SKY3, .14 lightning music = octor } map MAP37 "MENELKIR'S TOMB" { warptrans = 38 next = MAP38 cluster = 5 sky1 = SKY4, .14 sky2 = SKY4, .14 music = rithmr } map MAP38 "TRADUCTUS' TOMB" { warptrans = 39 next = MAP39 cluster = 5 sky1 = sky2, .14 sky2 = SKY3, .14 lightning music = stalkr } map MAP39 "VIVARIUM" { warptrans = 40 next = MAP40 cluster = 5 sky1 = sky2, .14 sky2 = SKY3, .14 lightning music = borkr } map MAP40 "DARK CRUCIBLE" { warptrans = 41 next = endsequence, "Inter_Chess" cluster = 5 sky1 = SKY4 sky2 = SKY4 music = crucibr } // --- Miscellaneous maps --- map MAP7 "SHADOW WOOD" { warptrans = 70 sky1 = SKYWALL 0 sky2 = sky1, .18 doublesky } map MAP14 "SWAMP DEMO" { warptrans = 71 sky1 = SKYFOG2, .12 sky2 = SKYFOG, .16 doublesky fadetable = fogmap } map MAP29 "NADA" { warptrans = 72 sky1 = SKYWALL2, .17 sky2 = SKY4 doublesky } map MAP42 "ERIC'S WHIRLWIND O' DEATH" { sky1 = sky2 sky2 = SKY3 lightning map MAP43 "MAYA" sky1 = SKY4 sky2 = SKY4 } map MAP50 "THE BADLANDS" { sky1 = SKYWALL sky2 = SKY4, .15 doublesky } map MAP51 "CAVES OF ASCENSION" { sky1 = SKYWALL sky2 = SKY4, .15 doublesky } map MAP52 "LOWER CRYPTS" { sky1 = SKYWALL sky2 = SKY4, .15 doublesky } map MAP53 "THE HYPOSTYLE HALL" { sky1 = SKY4, .15 sky2 = SKY4, .15 } map MAP54 "THE SANCTORIUM" { sky1 = SKYWALL sky2 = SKY4, .15 doublesky } map MAP55 "THE ATHENAEUM" { sky1 = SKYWALL sky2 = SKY4, .15 doublesky } map MAP56 "THE CLERIC'S CITADEL" { sky1 = SKYWALL sky2 = SKY4, .15 doublesky } map MAP60 "PROGRAMMER MAP" { sky1 = sky1, .18 } map MAP90 "BGOKEY" { sky1 = sky1 } map MAP92 "PAUL MAP" { sky1 = sky1, .12 } map MAP93 "PAUL MAP2" { sky1 = sky1, .12 } map MAP95 "CJR@RAVENSOFT.COM" { sky1 = sky1 } map MAP96 "SOUND DEVELOPMENT MAP" { sky1 = sky1 } // --- MAPINFO for Hexen: Deathkings of the Dark Citadel --- // --- Cluster 6 --- map MAP41D "RUINED VILLAGE" { warptrans = 42 next = MAP42D cluster = 6 sky1 = SKYWALL sky2 = SKY1, .14 doublesky music = winnowr } map MAP42D "BLIGHT" { warptrans = 43 next = MAP43D cluster = 6 sky1 = SKYWALL sky2 = SKY1, .14 doublesky music = jachr } map MAP43D "SUMP" { warptrans = 44 next = MAP44D cluster = 6 sky1 = SKYFOG2, .12 sky2 = SKYFOG, .16 doublesky fadetable = fogmap music = voidr } map MAP44D "CATACOMB" { warptrans = 45 next = MAP45D cluster = 6 sky1 = SKYWALL sky2 = SKY1, .14 doublesky music = deepr } map MAP45D "BADLANDS" { warptrans = 46 next = 37 cluster = 6 sky1 = SKYWALL sky2 = SKY1, .14 doublesky music = fubasr } map MAP46 "BRACKENWOOD" { warptrans = 47 next = MAP47D cluster = 6 sky1 = SKYWALL sky2 = SKY1, .14 doublesky music = sixater } map MAP47D "PYRE" { warptrans = 48 next = MAP48D cluster = 6 sky1 = SKYWALL sky2 = SKY1, .14 doublesky music = chap_1r } // --- Cluster 7 --- map MAP48D "CONSTABLE'S GATE" { warptrans = 49 next = MAP49D cluster = 7 sky1 = SKYWALL2 sky2 = SKY2, .16 doublesky music = bonesr } map MAP49D "TREASURY" { warptrans = 50 next = MAP50D cluster = 7 sky1 = SKYWALL2 sky2 = SKY2, .16 doublesky music = wutzitr } map MAP50D "MARKET PLACE" { warptrans = 51 next = MAP51D cluster = 7 sky1 = SKYWALL2 sky2 = SKY2, .16 doublesky music = chap_2r } map MAP51D "LOCUS REQUIESCAT" { warptrans = 52 next = MAP52D cluster = 7 sky1 = SKY2 sky2 = SKY3 lightning music = octor } map MAP52D "ORDEAL" { warptrans = 53 next = MAP53D cluster = 7 sky1 = SKYWALL2 sky2 = SKY2, .16 doublesky music = stalkr } map MAP53D "ARMORY" { warptrans = 54 next = MAP54D cluster = 7 sky1 = SKYWALL2 sky2 = SKY2, .16 doublesky music = falconr } // --- Cluster 8 --- map MAP54D "NAVE" { warptrans = 55 next = MAP55D cluster = 8 sky1 = SKY4 sky2 = SKY4 music = chap_3r } map MAP55D "CHANTRY" { warptrans = 56 next = MAP56D cluster = 8 sky1 = SKY4 sky2 = SKY4 music = percr } map MAP56D "ABATTOIR" { warptrans = 57 next = MAP57D cluster = 8 sky1 = SKY4 sky2 = SKY4 music = rithmr } map MAP57D "DARK WATCH" { warptrans = 58 next = MAP58D cluster = 8 sky1 = SKY4 sky2 = SKY4 music = foojar } map MAP58 "CLOACA" { warptrans = 59 next = MAP59D cluster = 7 sky1 = SKY4 sky2 = SKY4 music = cryptr } map MAP59D "ICE HOLD" { warptrans = 60 next = MAP60D cluster = 8 sky1 = SKY4 sky2 = SKY4 music = simonr } map MAP60D "DARK CITADEL" { warptrans = 61 next = endsequence, "Inter_ChessD" cluster = 8 sky1 = SKY4 sky2 = SKY4 music = crucibr } // --- Cluster 9 --- map MAP33D "TRANSIT" { warptrans = 62 next = MAP34D cluster = 9 sky1 = SKY1 sky2 = SKY4 music = grover } map MAP34D "OVER N UNDER" { warptrans = 63 next = MAP35D cluster = 9 sky1 = SKY1 sky2 = SKY4 music = fortr } map MAP35D "DEATHFOG" { warptrans = 64 next = MAP36D cluster = 9 sky1 = SKYFOG2, .12 sky2 = SKYFOG, .16 doublesky fadetable = fogmap music = swampr } map MAP36D "CASTLE OF PAIN" { warptrans = 65 next = MAP37D cluster = 9 sky1 = SKY4 sky2 = SKY4 music = wobabyr } map MAP37D "SEWER PIT" { warptrans = 66 next = MAP38D cluster = 9 sky1 = SKY4 sky2 = SKY4 music = blechr } map MAP38D "THE ROSE" { warptrans = 67 next = MAP36D cluster = 9 sky1 = SKY1 sky2 = SKY4 music = falconr } map MAP83D "TEST" { warptrans = 68 next = MAP37D cluster = 9 sky1 = SKY1 sky2 = SKY4 music = falconr } // --- Clusters Definition --- cluster 1 { hub exittext = "clus1msg" exittextislump pic = "interpic" } cluster 2 { hub exittext = "clus2msg" exittextislump pic = "interpic" } cluster 3 { hub exittext = "clus3msg" exittextislump pic = "interpic" } cluster 4 { hub exittext = "clus4msg" exittextislump pic = "interpic" } cluster 6 { hub exittext = "clus6msg" exittextislump pic = "interpic" } cluster 7 { hub exittext = "clus7msg" exittextislump pic = "interpic" } cluster 8 { hub music = "hub" pic = "interpic" } Save the file and you're done! I hope this guide was able to help you out. Please let me know if you run into any problems playing with this. Edited January 26, 2020 by ChapyOne : typos 0 Share this post Link to post
NeoWorm Posted March 21, 2020 Hi, I tried this and when exiting first map of Deathkings it crashes HeXen. Using the latest GZDooM. 0 Share this post Link to post