Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Gamasutra: The Art & Business of Making Gamesspacer
Postmortem: Raven Software's Heretic II
View All     RSS
August 8, 2020
arrowPress Releases
August 8, 2020
Games Press
View All     RSS

If you enjoy reading this site, you might also want to check out these UBM Tech sites:


Postmortem: Raven Software's Heretic II

May 21, 1999 Article Start Previous Page 2 of 4 Next

What Went Right

1. The fun factor.

Aside from the fact that we finished on time (and inside of a year, no less), I am really proud of the fun game play in Heretic II. There is no doubt about it, hacking someone’s head off in a spray of blood with gibs flying everywhere is a lot of fun (Corvus and his many ways of death rock!). Taking the time to balance the weapons with the damage, and making sure that the powerup shrines were placed appropriately paid off in spades when the game was released. The story and all the supporting elements definitely helped us make the game a success, but in the end it was about good, clean, violent fun. And not the sort that can be accused for making kids run amok with an Ak47. (Not many kids can conjure up a Red Rain bow.)


2. Our camera actually worked.

There are some other well known third-person games out there (which shall remain nameless) that, with all the charity in the world, cannot be said to have a particularly workable camera. Since a game of this nature revolves (literally) around the performance of the camera, we were especially proud of our implementation. Especially gratifying was the public commentary of some gaming communities’ luminaries about how it would be impossible to go back to the conventional third-person games after playing H2.

3. Our multiplayer worked out of the box.

No patches required. A lot of other gaming companies seem to regard this as a second level priority, and don’t worry about multiplayer until late in the project. We were aided by Quake II's network model, which is particularly stable. The model did evolve considerably though, after all the touching and tweaking we did to it. The addition of the client effects system, as well as an enhanced bit packing system for networked entities, increased the complexity quite a bit, too.

4. The client effects DLL.

People were amazed that H2 could run smoothly on a Pentium 166MHz with some relatively decent hardware acceleration. The client effects system was the reason why. Moving most of the graphics special effects code from the server to the client freed up the server considerably to do more game-related stuff. The move also allowed for better scalability on the individual’s machine. So your system can’t handle the ten times screen overdraw of the ring of repulsion? No worries, just turn down your level of detail, and the sprites will be drawn smaller, in fewer numbers, and scaled down faster. We didn’t do this at a system level, but wrote it in an effect-by-effect way because different effects required different sorts of scaling to make them look right. Also, since the camera was handled on the client too, it allowed us to write some clever code to solve camera problems.

For example, say Corvus backed into a fire. When the camera went into the middle of a fire effect, or a waterfall, with or without the Riva TNT the frame rate would slow to a crawl. We tried various ways of solving this, such as stuffing a bounding box around the fire that the camera couldn’t penetrate, but that ended up looking weird and unacceptable. In the end, we wrote some code for the effect that determined distance from the camera, and just culled it totally when it was too close. No one seemed to notice this, and it helped our frame rates considerably.

Screen shot from Heretic II

5. Our buoy system for AI navigation.

The buoy system was a major help, and without a doubt was the reason why our AI was better than most. Mike Gummelt and Josh Weier were responsible for it. The system consisted of beacons (or buoys) that the monster AI followed around. The buoys were dropped into the maps for single play, and had information embedded within them that allowed monsters not only to navigate the world, but also to open doors, jump from ledges, run away, engage in group activities, and warn friends that you were on your way. Of course, the game was released about the same time as Half-Life, the undisputed king of the current AI scene, so our advances were somewhat overlooked. Even so, the team is proud of this system, and it was undeniably a factor in the critical success of H2.

Article Start Previous Page 2 of 4 Next

Related Jobs

Playco — Tokyo, Mountain View, San Francisco, Seoul, Remote, Remote

Senior Game Engineer
Playco — Remote, Tokyo, Mountain View, San Francisco, Seoul, Remote, Remote

Engineering Manager
Wooga GmbH
Wooga GmbH — Berlin, Germany

Unity Game Engineer
Disbelief — Cambridge, Massachusetts, United States


Loading Comments

loader image