Deus Ex: Ladders

Let’s talk about this game’s treatment of ladders because I’ve been dealing with them a lot lately. They’re kind of a fascinating snapshot of a moment in the history of the medium. The whole idea of a ladder here is that it’s a segment of wall, usually with its own special texture, that keeps you from falling when you’re touching it and which lets you move freely up or down, or really in whatever direction you’re facing. Note what this lacks that nearly any 3D game containing ladders would have nowadays: any notion of “locking on” to the ladder and constraining your movement to it until you do something to explicitly let go. That and the complete 3D freedom of movement mean that if you’re not completely square with the wall, you can easily go veering off to the side and fall. It’s especially easy to slip up this way when parts of the ladder are in darkness, which they very often are in this game’s eternal nighttime. And then there’s the perilous matter of mounting ladders from the top, a skill I still haven’t mastered. Do it wrong and you simply fall the full height of the thing. There’s a factoid (made famous by a Gravity Falls quotation) that having a ladder in your house is more likely to result in injury than having a gun in your house. While I don’t think my deaths from ladders in this game outnumber by deaths from guns, I’m not entirely sure of it.

Why does the game do it this way? Well, in part it’s because best practices for handling ladders weren’t well-established yet when it was made. Indeed, they’re not consistently followed even in games released long afterward; I’m told that GTA5 (2008) has notoriously dodgy ladders. They’re simply a nontrivial thing to get right. Moreover, though, this is a game in the design lineage of System Shock, which had similar issues. And in System Shock, it was the result of a design philosophy. Although it didn’t really wind up this way, part of the initial idea behind System Shock was to be “Sonic the Hedgehog in 3D” (at a time when Sonic itself wasn’t), a game of flowing kineticism produced by simulated physics as a coherent unit, with special cases and special interactions kept to a minimum. The idea of a ladder as a sort of short-range gravity-nullification field fit into that design philosophy perfectly. Deus Ex is even less of a Sonic-like than System Shock ever was: the stealth mechanics mean you spend more time crouching and waiting than running and jumping. But the physics remain.

Bioshock: Hacking

Hacking is a big enough part of Bioshock that it has an entire suite of genetic modifications dedicated to reducing its difficulty in various ways. You hack safes and combination locks on doors to open them. You hack security apparatus such as cameras and automated gun turrets to make them switch sides, attacking your enemies and leaving you alone. You hack vending machines to lower their prices (no, you can’t get them to just dump their entire inventory for free), or even to make them offer additional items, which doesn’t make a lot of in-world sense, but I’ll accept the benefits anyway. Hacking a health dispenser not only reduces its cost for you to use, it turns it into an anti-health dispenser for enemies, killing them when they attempt to use it, and for this reason alone is well worth doing even if you don’t need the discount. In short, hacking has mostly the same uses as it did in System Shock 2, where the whole idea fit in a lot better. (I mean, even the word “hack” is anachronistic for a game set in 1960.)

Almost thereHacking is done through a special minigame that takes over the screen. It’s basically a variant of Pipe Dream/Pipe Mania. You have a grid of tiles depicting tubing. You have to assemble them so that the fluid will flow from an inlet to an outlet, and you have to do fast enough to keep ahead of the fluid. Fail, and you either take damage or trigger an alarm. The genetic upgrades I mentioned mainly affect the play of the minigame in various ways: slowing the flow, reducing the number of unmovable blocker tiles.

A difficult hackBefore you go into the minigame, there’s a screen that shows you the estimated difficulty of the hack. If it looks too hard, or if you simply don’t like the minigame, you have other options, including backing out, using an automatic hacking tool, or even just bribing the machine. I guess this really is the consequences of Andrew Ryan’s philosophy taken to its extreme: even the security systems are free to take a better offer. Not that I’ve ever taken that option. Hacking tools are generally cheaper.

It’s by far the most involved, and to my mind the most engaging, of the hacking minigames in the Shock games. System Shock 2‘s hacking was basically a matter of clicking on dots in a grid that might or might not turn the right color to give you the three-in-a-row you needed. Your hacking skill affected the probability. System Shock 1 didn’t have as many uses for minigame hackery — mainly you hacked by swimming around in cyberspace — but it did have some control panels for security doors that you needed to rewire through a special rewiring interface, another guessing-game where you just tried permutations until you increased a meter to the right level. Neither of these is the sort of game you’d play by itself. They’re more WarioWare-like, little unit operations whose purpose is to make you briefly pay attention to something other than FPS action.

They did have a couple of things over the Bioshock hacking, though. For one thing, they were more believable in context, as user interfaces to whatever was really going on in the machine. Bioshock‘s pipes are I suppose thematic for a game set underwater, but they make you wonder just how these combination locks are constructed. More importantly, the System Shock 1/2 hacking minigames were integrated into the rest of the game a lot more smoothly. Hacking happened in your HUD. The rest of the world still went on around you. You could suddenly come under attack while hacking, and you’d have to stop hacking to respond. Bioshock’s hacking minigame makes a show of being delicate and time-sensitive, which it is, but only in its own time. You can hack a turret while someone’s shooting at you, and you won’t suffer any damage until you’re done. As one of the very first Zero Punctuation reviews pointed out, you hack ceiling-mounted security cameras that are just out of reach by jumping. You do the entire hack while airborne and don’t fall until you come out of the interface.

And, weird as each of those things is, they’re even weirder in combination. Given that hacking is completely separate from the rest of the world, the designers really could have put in any kind of minigame. They could have done something akin to Exploit. They chose pipes. Not that I’m really complaining. It’s still a pretty enjoyable minigame, and works well with the genetic upgrade system.

Strife: Doom Engine

[Update: Looks like a lot of what I say in this post is false. See the comments.]

Strife is the only game on my stack that uses the Doom engine, so let’s talk a little about what that means.

Back in 1994, I spent a few months working for one of Id Software’s competitors, Looking Glass Technologies, working on their texture-mapping routines. Given the coordinates of a polygon and their corresponding positions in a texture image, we had to render the the texture onto the polygon in perspective as fast as possible. These days, this sort of operation would be handled in hardware and abstracted through a library like Direct3D or OpenGL, but we didn’t have those things. Instead, we wrote highly-optimized code to loop over the polygon, scanline by scanline, find the appropriate point in the texture, and copy the pixel color over.

Overdraw was our nemesis: each polygon was expensive enough to render that it was a big waste whenever we rendered a polygon that was covered up by something else. Even when a polygon was only partly covered-up, it was worthwhile to try to figure out how much of it was visible and only render that part.

Sometime in the middle of all this, Doom was released. It was clear that it didn’t have all the capabilities of our library — we were rendering polygons in perspective at arbitrary angles, while Doom seemed to be only capable of horizontal and vertical surfaces, and could only rotate the camera about a vertical axis (no tilting up or down). But it was really fast. Faster, in fact, than could be entirely explained by the simplification made possible by using only horizontal and vertical surfaces. Add to this the complication that they were using highly irregular map layouts: instead of using a grid of map tiles, like Wolfenstein 3D or Ultima Underworld or System Shock, the map was a collection of walls of arbitrary length at arbitrary angles, which more or less defeats the means we had been using to eliminate overdraw.

By now, the secrets are well known. They had in fact managed to completely eliminate overdraw through a single stroke of genius: they didn’t render polygons at all. They rendered the entire scene at once, in vertical scanlines. For each horizontal position, the engine goes pixel by pixel, rendering ceiling until it hits wall, then rendering wall until it hits floor. I’m glossing over a lot of details, but that’s the essence of the Doom engine right there.

This has a couple of consequences. For one thing, it’s basically impossible for a Doom-engine game to take advantage of modern 3D hardware, because modern 3D hardware is all about rendering polygons. I can imagine someone making a Direct3D version of System Shock by taking the source code and remapping all the graphics functions to Direct3D equivalents. It might not be a perfect fit, but I imagine it would be doable with a little massaging. But there’s basically nothing in the Doom engine that even vaguely resembles a Direct3D call.

Second, the fact that the view was always horizontal in Doom wasn’t just a matter of the programmers not bothering to implement it, as with jumping and crouching. It is in principle impossible for the Doom engine to tilt the camera, because that would ruin the vertical scanlines — suddenly you’d have them intersecing the edges of walls and so forth.

strife-distortionAnd yet, Strife allows the player to look up and down. It manages this by cheating: instead of tilting the camera up, all it really does is render a higher-up slice of the same horizontal view. This isn’t quite the same thing as moving the camera upward. Rather, it’s an unnaturally distorted view, more like what you’d get by taking a photograph with the camera tilted and then looking at the photograph at an oblique angle, or something like that. (I’ll try to find or make some illustrations explaining this better.)

It’s easy to interpret this distortion as mere perspective, though, unless you’re really close to something, which makes it more noticable.

Serious Sam: The Second Encounter

Not Chichen ItzaThis time around, I was in the mood for something mindless. It’s been a while since I played a first-person shooter, so I pulled out Serious Sam: The Second Encounter, which is not to be confused with Serious Sam 2. They’re both sequels to Serious Sam: The First Encounter, but this one is older and uses approximately the same graphics engine as the original. “First, Second, Two” isn’t the best numbering scheme in the world, but I’ve seen worse. (Dark Forces/Dark Forces 2: Jedi Knight/Jedi Knight 2 comes to mind, as does Heretic/Hexen/Hexen 2/Heretic 2.)

Like the original Serious Sam, this is a big, loud, dumb game that knows it’s big, loud, and dumb, and sets out to be the very best game it can be without sacrificing the bigness, loudness, and dumbness. At the time when it was released, games like Half-Life and Deus Ex were starting to turn the FPS genre into something more sophisticated, something where the action was part of a narrative set in a coherent world, where there was more to the player’s actions than shooting everything. 1In a way, this was not so much a new development as the genre returning to its roots. Ultima Underworld is a game in this more story-driven and less action-based mode, and although it’s not usually classified as a FPS, it was the inspiration for Wolfenstein 3D and thus for the FPS genre as a whole. But after the phenomenal success of Doom, this kind of design took a backseat to emphasis on graphics technology. The designers of Serious Sam consciously and deliberately rejected all that. This is a game where the thought “Should I blow that up?” is immediately followed by “Sure, why not? It couldn’t hurt.”

To the extent that Serious Sam added anything important to the genre, it’s because of its improved technology and its perspective on what’s gone before. The technology is obvious: the graphics take advantage of advanced techniques that couldn’t have been done practically in Doom. There’s even a special demo area with Utah teapots to show off what the engine can do. But the perspective on the past, while less obvious, is just as important. When Serious Sam was released, most people took one look at the guy on the box and concluded that it was a Duke Nukem clone. This is wrong: it’s an everything clone. The designers seem to have chosen a distinctive element from each major old-school FPS written up to that point. Duke Nukem 3D provided the template for the macho, wisecracking player character. Quake provided the leaping Fiends, the obvious model for the Kleer Skeletons, one of the best monsters in the game. From System Shock, we get Autobombs, remade here as Headless Kamikaze. From Rise of the Triad, the dual pistols. From Powerslave, the ancient Egyptian setting. I could go on.

The Second Encounter isn’t set in Egypt, though. It starts near a Mayan temple, which is rougly equivalent to Egypt from a level-designer’s point of view, except that the texture maps are different and the exterior scenes contain vegetation. I think this is the first FPS I’ve played in which you can actually use your Doom-style chainsaw to cut down trees. Or, of course, you can pull out your rocket launcher blow them up.

1 In a way, this was not so much a new development as the genre returning to its roots. Ultima Underworld is a game in this more story-driven and less action-based mode, and although it’s not usually classified as a FPS, it was the inspiration for Wolfenstein 3D and thus for the FPS genre as a whole. But after the phenomenal success of Doom, this kind of design took a backseat to emphasis on graphics technology.