Role Playing Games

You arrive in the town. You check into an inn. It’s on a back street. Out of the way. You’re wanted criminals, so best not to draw attention to yourselves.

You’ve been trying to find Tintmere since the airship crash. She should be in this town. But where?

Porcelain and little Night set off with a shopping list. You and Kell head upstairs.

There’s a window. The room overlooks an equally rickety row of buildings. Fourth floor. Lots of crisscrossing clotheslines and rising steam, people milling about below. In the distance over the rooflines: the Lightning Tower. Your ultimate goal.

Concrete pebbles fall discretely into the drowned, weedy flower pot in front of you. You crane, look up.

A bounty hunter tromps silently across the rusty pipes on the roof. The shadows of two more flit between the eaves.

You lean back in, smile, head gesture to Kell. A row of shurikens materialize in his hand, and he melts into the shadows. Hazard another glance out.

There’s a bamboo-like pole caught between your building and the one across the street. One floor down. It looks tenuous. But you have been working on your balance.

The next room? The walls can’t be too thick.

Nah. More fun to hide in the ratan basket.

Moments later, light feet land on the windowsill. Simultaneously, the door flies off its hinges. Two bounty hunters race into the empty room. They look around, walk to the center of the room. Suddenly a basket and a shadow burst to life, and both bounty hunters are flung out the open window with hardly a cry.

The ceiling caves in. It’s time for the big daddy bounty hunter. You exchange blows, and are both parried and thrown back. Not good. He hasn’t even broken a sweat. You grab Kell, flip him up onto the roof and climb out. The wall explodes. You make a grab for a drain pipe, swing out across sickening open space, and — Kell’s throw line jerks the pipe up toward the roof. You land. Smile. And RUN!

Rooftop chase, as the overpowered bounty hunter hurls force blasts after you, shredding the ancient stone. Chickens squawk. Cisterns topple. An adorable little girl tends a lovely three foot square rooftop garden; you scoop her up as you run by, and apologize, as the bounty hunter smashes her four flowers.

You give the girl to Kell, saying you’d like to try something. You insult the giant. A lot. Kell breaks left, sliding down the side of a building. You break right. It worked! He’s following you.

Crap.

Fight! Fighting doesn’t work. Escape! He catches you in midair. The bounty hunter sneers that the fee still gets paid if all your limbs have been pulled off. This is it.

Shwunk! The bounty hunter shakes you, looks around indeterminately. He reaches back. A magic dagger wrapped in lace protrudes from between his shoulder blades. He topples, turning to wood. The wood bleaches, hollows, cracks, shatters — poof! Nothing but dust.

You pick yourself up, squint into the sun. A lace-adorned figure steps toward you through the haze, waving. Tintmere!

—–

Now imagine that the preceeding had been generated: The overall plot. The long separation from a comrade. The clues that led you to her. The streets. The repetition of the larger goal. The foreshadowed tip-off at the flower box. The personally appropriate strategy options. The easy mini-bosses. The unstoppable mega boss. The setback getting onto the roof. The dramatic save. The comic timing. The race. The moral choice. The losing battle. The last minute save, leading into the storyline completing reunion.

As flashy as today’s RPGs are, they’re still not true Role Playing Games. In them, players are rewarded for figuring out how the game engine works and finding ways to best it, not — as the name would suggest — for immersing themselves in the role of the character.

How does a game engine implement literary devices? How do you reinforce the players’ choice to have more fun with the story, rather than the choice to simply learn better chess positions? Printed paper+pencil+friends role playing games have invented some interesting story game concepts, but digital RPGs still rely largely on grinding in the final analysis.

I’m not suggesting that hard work shouldn’t bring character improvement, but I sanction it only because that too is a literary device. It’s not, however, the only literary device. In the early days of computer games, perhaps it was the only trope that could be realistically implemented. Are we at the end of the beginning of computer games yet?

Those looking for something a little more crunchy may enjoy my RPG Stats Comparison Chart.

RPG Stats Comparison

A comparison of the stats used to define a character across eleven popular videogame and pencil-and-paper roleplaying games. (20k PDF)

Not included on the chart are depletable scores. Each game seems to have a concept of Hit Points, a number representing the character’s moment-to-moment health, with the possible exception of outlier EVE Online and it’s complete lack of physical traits. Most games that invoke magic of one sort or another have a rechargeable score representing the total amount of magic which may be invested in an action at any given time. Wealth is typically also a depletable score.

All games surveyed also deal with situational bonuses. These may be weapons and armor, single-use or depletable items, or learned skills. Even games with simple stat structures like Shining Force II create highly varied play structures using such bonuses.

Being essentially combat-based, none of the games surveyed had more than one social stat, and the majority had none. For those that did, it was always “charisma” — an ability to gain tangible favors from others. Combat-free games like Harvest Moon may deal more fully with a character’s social aspects, but as a component of adventure storytelling it appears tellingly neglected.

Myst V and the Way Forward

Issue 165, for the week of 2/19/2006.

Literally three steps in, I’m defeated by a low gate. I’m looking down at it. I could step over it. Still I’m trapped.

I have chosen to begin this essay with a digression.

You know those programs that change the screen resolution when they go to full-screen, and then tell the other applications that they’ve done it? It’s a kind of a slapdash Mac port thing. You quit, and every window on the screen has been squished down to an absurdly wee size and moved to the top left corner of the screen. Myst V is like that.

Ultimately, that’s not the point of this essay, though.

As with Myst [I], the exploded box of which hangs on my wall for inspiration and which I can still play under Classic, the default navigation system of Myst V becomes bothersome after a few minutes. You’re rarely quite looking where you want to be, and yet with the Obsidian/Burn:Cycle-style smoothly eased tracking shots between nodes replacing Myst’s hard cuts and simple transitions, you often find yourself looking at the interesting object during movement, only to have your camera jerked away from it as the move completes. Nodes that would appear to give access to nearby areas are often a few feet from the ones that actually do. Myst V, of course, adds two additional movement styles, a free movement mode that doesn’t appear to support game pads, and a “Classic Plus” which slaves the view rotation to the mouse cursor — something not to be attempted without a truly boss frame rate and/or a love of vertigo.

Still, we haven’t reached our ultimate point.

The engine underlying Myst V is unique to the in-storyline Myst franchise. Instead of prerendered stills (Myst, Riven) or prerendered VR panoramas (Myst III, Myst IV), the game is rendered in realtime 3D. The appeal of this method for the developers is obvious. Rather than setting up shots, rendering, tweaking, rerendering, overlaying animations, and then having to move to a wholly separate software system to construct the game play, development goes straight from modeling to game engine in one step, assisted by a glut of available off the shelf software. Besides that, it just feels more modern — an unremarked upon motivation among middle-aged tech developers like the Miller brothers.

The trouble is, it’s not better. Compare the following screen shots:

Even with the best video card, which you don’t have, and all the light baking and optimization tricks in the book, the graphical quality of a frame rendered in one 30th of a second is never going to achieve the richness of a frame rendered over half an hour. The underlying models and textures must be smaller. The lighting system must be simpler. Even with a compressed color palette and knife-sharp shadows (not entirely undesirable for direct sunlight), not to mention eight years between them, the Riven screenshot is more realistic than that of Myst V. The objects are more complex and more numerous, the textures are high enough quality to be invisible, and everything that should cast a shadow does.

Of course, the quality of a still image isn’t the end of realism, which is where we uncover one of the most compelling reasons for the move to realtime 3D: Myst V moves. Look at the water in the game’s reversed wood between the worlds starting point, and even on low texture quality you’ll see ripples. Moving ripples. No more strange, frozen glass oceans. Stand still when you arrive on the beach. The clouds move slowly through the sky. The waves roll in and fall away. Birds flit through the sky (though most seem to be part of the static landscape). The sense of immersion is heightened, until, of course, you start wishing your video card could smooth those jaggies without the frame rate tanking, you notice that the smoothness of objects’ faces becomes angular at their edges, and you’re just plain stopped while floating along like Professor Xavier by a tumble of small, ordinarily fun to climb rocks.

It’s still not our point, but it’s worth mentioning that it’s best to make an insurmountable obstacle insurmountable. Personally, I can also climb a ladder with one hand, wade, and swim — not that it matters.

We do in fact have a point, and we’re getting dangerously close to it.

Myst V, while perhaps as good a puzzle game as its predecessors, has abandoned its roots. This, in itself, would not be a bad thing if the result were actually worth the change.

Let’s review what Myst V has gained:

  • Unlimited panning. Can also be achieved in prerendered graphics using VR panoramas, as with Obsidian, Myst III, Myst IV.
  • Animated tracking shots between nodes. Unnecessary. Our brains understand a “cut” — it’s that blink we do every time we look from one object to another. The novelty wears off quickly, as game play is slowed by it.
  • Free movement. Draws attention to the character’s limitations. Movement is still on a rail, we’re simply allowed to deviate slightly from it. Not essential to this genre.
  • Dynamic lighting effects. Underutilized. Aside from the hard shadows cast by moving objects, most of Myst V’s lighting appears to be painted on.
  • Hardware acceleration. Modern video cards can do a lot.

Now let’s review what Myst V has lost:

  • Prerendered graphics. Visually superior to realtime 3D graphics in richness and complexity.
  • Video. Those motion-captured 3D people with actors’ faces look pretty creepy, and the cloth keeps intersecting the legs.

Myst V is the last Myst game, but it need not be the death knell of the genre. There is room to move forward with the graphical adventure, while learning from the mistakes of Myst V. Realtime 3D graphics simply aren’t good enough. Is there a better way? I would suggest that there is.

First, though, review this QuickTime VR panorama of a node in Myst V. The panning doesn’t quite feel right. I suspect that there are two reasons for this, one trivial and the other quite complex.

Regarding the simpler problem, real life lenses are rarely perfectly round. They tend to flatten in the middle, creating lower distortion near the center of the image and higher distortion toward the edges. We’ve come to expect this. VR panoramas, which typically distort and display a portion of a single 360 degree image, are, I suspect, correcting for an idealized lens. Distortion is lowest at the center and increases toward the edges at a rate that is mathematically “right,” but less complex than that of a typical lens. If I’m right, this should be easy enough to overcome by tweaking the lens correction algorithms.

The second problem is more complex, and it has to do with the way cameras are actually manipulated. Photographing panoramas requires the purchase or construction of a custom camera mount which places the lens directly in the center of rotation. This is unusual. Usually, the camera is mounted at its base, placing the lens above and in front of its center of rotation. Panning thus introduces a small movement to the camera’s view position in addition to its orientation. Your eyes are likewise mounted above and in front of their center of rotation. The effect is most noticeable when objects are close-up. Close one eye and hold a pen up in front of you. Turn your head left and right. You can see different things behind the pen based on where your head is turned. You expect to. It’s part of your sense of depth, and it’s something that VR panoramas completely fail to reproduce.

Here we have arrived at our point.

I propose that a slightly novel game engine can overcome the limitations of both VR panoramas and realtime 3D in the graphical adventure genre. We can regain the detail of prerendered scenery and filmed actors without sacrificing the ability to animate portions or all of a given scene. If we accept the primacy of the node to the genre, discarding arguably unnecessary tracking shot transitions and “free” movement modes, we can consider a new style of node construction I unceremoniously dub the Dented Ball.

The Dented Ball is a real ball, or rather a very close approximation made up of several hundred triangles. Inside it lies a virtual camera, slightly above and forward of center. On the inside of the ball is mapped a high resolution image of a prerendered scene. Looking outward, the virtual camera records a portion of the scene, corrects for lens effects, and sends the resultant view to the player. This ball is our basic game node.

The scenery images, not to mention the tiny amount of data needed to construct this particular ball’s geometry, are loaded from the game DVD while the player is at a nearby node. Priority is given to the nodes directly connected to the previously occupied node, with priority further given to those portions of the landscape that the player would see first upon stepping into a given node from the previous. Nodes far behind are discarded, and reloaded only when the player nears them again. The goal is to minimize or eliminate waiting time between nodes.

Animation such as waves, birds, and even people may be added to the scene by mapping movie clips, rather than still images, to a portion or all of the inside of the Dented Ball. Modern video compression algorithms nearly half the amount of data that must be pulled off the game DVD to equal the image quality of a standard movie DVD, and modern computer DVD drives are capable of reading data much faster than is necessary to play movies compressed the old fashioned way. By feeding movie clips into the priority system above, waiting time between nodes can still be kept to a minimum. In addition, a standardized set of tools for fading, overlaying and cutting between still images should be integrated to allow for such simple effects as lightning flashes and the slow dimming of the sun as it goes behind a cloud, without requiring a large and unwieldy video clip.

In an ideal scene, there are no objects near the camera. (This is of course unlikely.) The edges of the ball on which the scene is painted are too far away from the viewer for the slight position offset of the camera to be noticeable. This would be a scene of the player floating high in the air — on the whole not very useful.

Nearby objects are the reason we call this the Dented Ball. Imagine that the player is standing near the corner of a wall. Panning right, more of the right side of the wall becomes visible, panning left, the opposite. In order to simulate this effect, the ball itself has been dented inward, toward the camera, so that its edge matches up with the wall’s corner in the prerendered scene. From the outside, the ball would appear to have a large dent in it, hence our name for it. Because the camera offset is most noticeable when objects are close, gradually falling off to imperceptibility as objects move farther away, the actual dent of a perfectly right-angled wall in the ball would not have straight edges, but would in fact taper out at an increasingly gentle angle before plunging smoothly back into the outside surface of the ball.

Despite our name though, dents aren’t the only method we’ll need to produce proper foreground/background separation while panning. (We should just go ahead and call this separation “parallax effects.”) Reference the pen with one eye closed again. It, like a blade of grass, glasses on a nearby table, and any number of other real world objects exhibit a complete separation from their background. In such cases we’ll need to slice the ball into concentric layers, like an onion, and map a series of cutout portions of the scene onto each. There will be times when we’ll need to combine slices with dents. Depth maps, grayscale images representing simply how far any point in a given image is from the camera, can be rendered from any 3D animation package, and can be used to assist an automated workflow for making these dent and layering decisions.

The Dented Ball allows us to create a richer visual experience, both static and in motion, than any previously conceived graphic adventure engine. By repurposing modern video cards to draw concentric near-3D nodes, we find a new way to leverage the technologies users and game developers already possess. We unify the rich legacy of graphic adventure games like Myst V while discarding our detrimental modern preoccupations. In doing so, we glimpse a third path though the complexities of contemporary game design and begin once again simply to explore.