You can sign up to get a daily email of our articles, see the Mailing List page.
We do often include affiliate links to earn us some pennies. See more here.

Building a Retro Linux Gaming Computer Part 39: Beyond Heretic

By - | Views: 23,948

Return to Part 1: Dumpster Diving

Continued from Part 38: The Stagnant Demesne

I stated before that neither of the contemporary HeXen ports, Linux Hexen and its fork HHexen, supported MIDI music playback through the /dev/sequencer device. This still remains the case, but hiding on the venerable SunSITE network I found the linux-hexen-0.99last.tar.bz2 archive, the only online trace of another early HeXen source port released in December 1999 by Russian programmer Stanislav Nesterov, as opposed to the aforementioned source ports done by Karl Robillard and Dan Olson.

Nesterov had adapted the musserver and sndserver code from Andre Werthmann's Linux Heretic to be usable with HeXen, and it was exactly what I was looking for. It supports running the game with X11, SVGAlib, as well as GGI binaries, and even allows for playing the music off the CD-ROM if you prefer. It seemed my desire to continue the Serpent Riders Trilogy from Linux while still utilizing my Sound Blaster 16 had been fulfilled; that is, until I got stumped by the return of a nasty bug.

First noticeable in sooth when you reach the bell tower on the first map, a few specific sound effects can break in such a way as to interfere with the other sound effects on the level. After a four day troubleshoot I determined this was due to a bad interaction with the sound sequence code, in particular the "StoneMove", "MetalMove", "LavaMove", and "WaterMove" sounds that are all set to "playrepeat" in the sndseq.lmp script included as part of the HeXen WAD file.

The solution I settled on was zeroing the values for those effects in the sound.c source files. This stopped these sounds from playing at all, but as they are mere grinding and gurgling noises which go for the most part unnoticed, I did not find this to be too much of a sacrifice. Even then a few other events still spam the sound server to the point of disrupting other sound effects, such as with one fireball trap in the Castle of Grief, but the "playrepeat" sounds were the worst offenders.

In sorting this issue I found out that SDL Hexen, a further fork of Linux Hexen from February 2000, also suffered from the same problem, but a build of HHexen from June 2000 did not. At this point, and given that I had already made a number of tweaks to Nesterov's build files in order to achieve my desired behaviour, I decided that I had changed the code enough under the hood to now qualify as my own fork. To that end, I am pleased to introduce VoxWare HeXen to the world.

 

Also included is a patch file I discovered that allows you to use the xdelta utility to update the HEXEN.WAD file off the CD-ROM to the required 1.1 release. There is no external configuration outside of launch flags, but you can still remap keys by editing the ~/.hexen/hexen.cfg file. It does not use standard Linux keycodes, but by swapping with strafe I managed to reassign jump to be on the Alt key. All seemed well, but little did I know that the level scripting in HeXen would be so janky.

The doors to the Heresiarch's Seminary refused to open when I first reached the hub, forcing me to bypass them by using the Dark Servant artifact to summon a Maulotaur I could hop on from a pillar to fluke my way inside. Then, when I reached the final area of the Gibbet level in the Castle of Grief hub, the Chaos Serpents refused to spawn in after I killed all the Afrits. The event scripting for that room is infamous for breaking, but it is usually done by killing the Chaos Serpents too fast, not the Afrits.

I ended up just loading up my save file from the end of the Seven Portals so I could also unlock all of the secret levels on my second go around, and this time the doors to the Heresiarch's Seminary opened without a hitch and the scripting at the end of the Gibbet worked as intended. Apart from a few glitches with some of the moving sectors and a few of the monsters vanishing everything else was smooth sailing; that is, until I started playing the Deathkings of the Dark Citadel expansion pack.

The Sump and Abattoir levels are impossible to complete due to certain Stalker enemies causing the game to segmentation fault. Unfortunately the worst room for this held the Flame Mask I needed to unlock the final Planet for the first hub, so I had to try some other ports. SDL Hexen had the same problem, while Chocolate Hexen and Crispy Hexen complained that my save files were corrupt, but the final release of HHexen did load my save files and allowed me to resolve those two maps.

Overall I enjoyed HeXen, with it sharing a lot of technical and design similarities with my all time favourite game Blood, but the elaborate puzzle hubs and downright mean enemies do wear you down after a while. This is not helped by the expansion pack doubling down by spawning even more enemies into already cleared maps; repopulating levels with Slaughtaurs and Stalkers is an affront to good taste no matter how patient you are. I think I need to blow off a little steam.

Carrying on in Part 40: The Cyborg Project

Return to Part 1: Dumpster Diving

Article taken from GamingOnLinux.com.
13 Likes
About the author -
author picture
Hamish Paul Wilson is a free software developer, game critic, amateur writer, cattle rancher, shepherd, and beekeeper living in rural Alberta, Canada. He is an advocate of both DRM free native Linux gaming and the free software movement alongside his other causes, and further information can be found at his icculus.org homepage where he lists everything he is currently involved in: http://icculus.org/~hamish
See more from me
12 comments
Page: «2/2
  Go to:

Hamish Mar 10
Quoting: uglyIn the expansion, I find that they throw a lot of enemies with ranged attacks at you early on. And, unless I missed it, I haven't found the Hammer of Retribution yet, even though I just picked up Quietus. I'm currently in the Sump area, and I'm going to have nightmares about swinging my axe with all these Slaughtars firing at me.
They do make you work for it, I recall having to use the Porkelator as a ranged attack at a few points to disable enemies until I reached them, yeah.

The first Hub of the expansion is the meanest part of the series not counting "E4M1: Catafalque" from Heretic.


Last edited by Hamish on 10 March 2024 at 9:11 pm UTC
ugly Mar 10
Quoting: HamishThey do make you work for it, I recall having to use the Porkaltor as a ranged attack at a few points to disable enemies until I reached them, yeah.
Yeah, I had to do the same. Particularly in the Catacomb area where there were sets of three serpents behind three different doors near that one flame mask. Without the Porkalator, I could barely get in the room without being taken down.

It can be a bit frustrating. But it's good. Usually in these games, I end up hoarding all my items and never use them. In this first hub, I'm actually relying on the various powerups to get through.

Quoting: HamishThe first Hub of the expansion is the meanest part of the series not counting "E4M1: Catafalque" from Heretic.
I had to look that one up, as I did my Heretic playthrough a couple years ago. But, yeah, that one was tough.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register


Or login with...
Sign in with Steam Sign in with Google
Social logins require cookies to stay logged in.