What the heck is muxing?

I spent a good chunk of my free time in the first 5 days of the week experimenting with the file data for Arena. I spent some time researching and trying to decode image files using a hex editor and the internet. Needless to say, I was way over my head. I did find a few odd things. For one, I tried editing the .MNU files with random hex values just hoping for it to show up weird in the game but none of it had any effect. My presumption is that either I messed up the checksum (file verification) and the game defaulted to the artwork in the BSA or those files serve another purpose than image data. After researching more on the compressed images, I couldn’t get more than 8 bytes in before I couldn’t tell what was going on (the height and width are in the first eight). I read through some of WinArena’s source files (partial attempt at a remake of Arena) and saw the insane “muxing” that Bethesda did. Apparently, they pulled some crazy tricks to conserve valuable disk space. Remember this game came on a 3.5 floppy originally.

For extra giggles, I looked at the Arena executable in a hex editor (it’s only 171KBs). Turns out the executable is compressed too and like the image files decompresses realtime when launched (the compressed images are uncompressed in a similar manner). The header in the executable listed an old version of a compression software  called PKLITE. I searched on the internet and found a whole page of decompressing software for dos that could decompress the executable. Just curious, I downloaded one called xtract and put it in the Arena directory. Now this is a dos tool, so I had to use Dosbox to even run it. But it worked. The file went from 171Kb to 300+Kb. Woohoo (i think). I checked it again in a hex editor and saw that I could now read all the hardcoded text strings in the file. Beyond that, I had no idea how to interpret the rest. Just to test it, I ran the game and it worked just as if it was compressed. Not sure what benefit this would bring but it’s nifty to know if anyone is every interested.

After all that, I decided to get back to what I’m better at. I am now 45 of 185 SET files done. I initially thought the low resolution 64 x 64 pixel pictures would be easy but it still takes some time to get such few blocks to look good. I spend about 1/2 to 1 1/2 hours on each individual SET file trying to get the look just right. That’s the same amount of time I spend on a single Torchlight texture! Basically, I’m editing every pixel by hand. Good thing it’s fun to me 😉


2 thoughts on “What the heck is muxing?

  1. I did roughly the same (spread over the last 2 years) and I used dislite to unpack it, instead of xtract. The muxing isn’t very complicated, it’s just annoying (I’ve mentioned it in the “Let’s mod Arena” thread).
    MNU is a weird format…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s