In my last post, I mentioned that the main Doom map editors don’t have any way of loading Birthright textures. This can be fixed by creating a PWAD with all of the textures from TEXTURES.RES
. As I shared in The Case of the Missing PCX Palettes, we’re able to submit PCX files to Birthright’s resource files, but we’re not able to get them back out in their original state. A lot of information is lost when RESUTIL or BRUT convert the PCX files into Birthright’s internal bitmap format. Mainly, the color palette.
I discussed trying to use one of the more common palettes as the default and that’s now implemented in my development build. Even if the palette isn’t 100% accurate, it seems that often the images themselves still come out identical to the original images from the source archive. While the textures from TEXTURES.RES
aren’t included in the source archive, the colors look correct after exporting all the PCX files using BRUT.
Image Magick gives an error for each file and the colors didn’t turn out right when converting to PNG, but GIMP is able to read them perfectly. Sadly, Image Magick is the library I was planning to use in the BRUT GUI, so that’s a roadblock I’ll have to find a way around.1
How does this help us with making custom adventures in Doom map editors?
I’ve mostly worked with SLADE 3 and Ultimate Doom Builder, which allow us to load resources via a variety of formats. While Birthright’s resource files aren’t one of them, we can import the textures we got via BRUT into a PWAD file and use that as the resource instead. Below are examples of the same location in the caves beneath Malentor’s Tower with a very simple PWAD loaded in both of those editors. (Quite a lighting difference!)
I wasn’t able to load the PCX images, possibly for a similar reason to Image Magick, but1 the Batch Image Manipulation Plugin for GIMP was able to convert everything to PNG. From there, I was able to load the textures properly into the PWAD file.
Once I have the rotation code completed, I’ll temporarily upload a PWAD containing all of the adventure textures so that editing adventures is more pleasant. This will be a holdover until I can have BRUT generate the PWAD, since I want to avoid hosting those textures longterm.
At that point, I’ll have to find some time to actually play through and explore each adventure to find any interesting notes (like teleports and text scrolls) to put together a modding reference page.
-
Update (2024-10-15): It turns out I missed the palette separator byte because I thought I had included it in the base64 encoded string containing the palette. GIMP doesn’t use it and just assumes the start of the palette based on the distance from the end of the file. Image Magick and SLADE both require this byte. The images are still more broken in those than in GIMP, so I still have some tinkering to do with the algorithm. ↩︎ ↩︎