Sunday, April 30, 2006


I got it to work. It ain't pretty, but it works.


The algorithm is actually pretty slick, but it's slightly different from the release algorithm, as it is only one target. This is because of the restricted nature of a maze puzzle. In a "real" game, it can force you to go one place before going another - locked gateways.

Anyhow, the algorithm works.

Here I am, Brain the Size of a Planet...

I have created the most powerful topological search and modification engine I've ever seen. Woo-hoo!

In a labyrinth of an almost arbitrarily large size, it can find the shortest path(s) to the goal and then modify them. It can even make an intelligently designed path if one doesn't exist. This may sound familiar: I'm implementing Perkplot as a simple labyrinth puzzle game.

It is astonishingly fast and I am well pleased. But I found something irritating as I was trying to tweak it for release to anyone who wanted to download it:

T2D crashes due to the huge number of sprites involved in creating a 100 x 80 labyrinth (~24,000). It can create them, but when it comes time to get rid of them... crash!

This means that although it is extremely powerful, it has this pain all up it's left diodes...

So I'm looking into ways to reduce the number of sprites from 2-5 per tile to 1 per tile. It may take me a little while, but take heart:

The algorithm works!

Friday, April 28, 2006


Okay, I'm done talking about the Revolution. Except to say that they lost my pre-order. Now, on to other, greener pastures. Flat, green pastures with Lincoln stamped on them.

Here at WPI, there are "meal plans" for people who are still students. One of the more popular "meal plans" is the "VIP" meal plan.

When you spend a meal, you get into "DAKA". Okay, so it hasn't been DAKA for most of a decade. But you get into the cafeteria. There, you may eat any of the stunningly average food they produce in any quantity.

With the VIP meal, you may also spend meals at a more classic area which charges actual money for actual food - Burger King, pizza, sandwiches, salads, etc. A VIP meal is worth $5, despite the fact that, calculated out, you're actually paying closer to $9.50 per meal to get the plan. The students spending a meal spend $5, even if they only buy $1.30 of food. Meaning the food guys get, free, the excess cash.

In addition, students have "points", which are essentially cash on the card, except they can only be spent on food.

So, if you were the pricing guru of this money-charging area, what would you do?

Is your first instinct to make your meals come in cleanly at $5?

Yes? Bad monkey! You're not nearly sleazy enough to work for this kind of company.

Your instinct should be to price everything so that it adds up to just over $5.

Think about it. Either the student pays you the extra cash out of points (extra money for you!) or the student holds back and only buys $3.50 of stuff. In which case you get a literally free $1.50.

So, you price the most popular goods at $2.75.

How incredibly clever!

How incredibly sleazy!

Side note: As far as I know, any meals and points which aren't spent on food go to WPI. WPI doesn't run the food service: it's Chartwells. This means that, if you spend a VIP meal on non-cafeteria food, WPI gains to the tune of $4.50.

So, WPI screws Chartwells, Chartwells screws the students, and, well, WPI also screws the students. A big, happy family.

Peer Pressure!

The Revolution's cool new name also offers a cool new study in peer pressure.

When it was announced, there was a pretty much instantaneous shout of hatred. I am part of that shout.

However, a mere day later, a few diehard voices have posted how it's a decent name because - get this - it's nonconformist.

Now I'm watching other people hesitate in their scorn and say, "maaaaaybe..."

As fascinating a study in peer pressure as it is, there is no "maybe". Just because a name is nonconformist does not redeem it. Nuking Seattle is nonconformist. Drinking gasoline is nonconformist. These are not things that are redeemed because they "sock it to the man". They are, regardless of what the public thinks, still stupid.

I admit, I don't know the Japanese market. Maybe it's cool in Japan.

But it isn't cool here, and we're one hell of a major market to piss off. "It wasn't built for you, the hardcore gamer: it was built for the 'mainstream'!" they say.

What mainstream will like this name? Give me one market segment. Just one. And don't try to say "6-8 years old". I know children in that age bracket. They won't like this name.

This is not a cool name. It is not an acceptable name. It is like selling a car named "Nova" in Mexico. But this is the first time I've seen a linguistic idiocy hit us instead of the other way around.

So, to everyone who thinks the name will work out okay: if you're right, it's solely because Nintendo spends lots and lots of money on advertising the name. It will not "work out okay" on its own.

Thursday, April 27, 2006

A Revolutionary Parable

In a world much like ours (but missing a few essentials), there was a man named "Nin". He was a famous writer and director. He was looking for something to put in his next movie. Something which would make the whole world remember him forever.

He came up with an idea, and called his Friend over to discuss it.

"I have an idea, Friend," Nin said. "Imagine there is a secret society of spies."

Friend was not overly impressed, but there were worse premises.

Nin continued. "The spies are, when they need to be, assassins."

Friend nods.

Nin pushed on. "These spies all wear an old-style Asian outfit, all black. They wear a hood and a mask to cover their face, like a cowboy's handkerchief. All black."

Friend nods. "Cowboy spy assassins. Pretty cool."

"There's more. These cowboy spy assassins don't have morality as normal people do. Instead, they have a code of honor which they are bound never to break. It doesn't make them good people, but it makes them interesting and driven people."

Friend smiles. "Knight cowboy spy assassins. Now we're getting somewhere. What kind of firepower do they carry? James Bond style gadgets?"

"No, these guys are so badass that they only carry simple stuff. Swords, throwing knives, smoke bombs. They don't need anything more! They're old school!" Nin shouts, pointing to the sky. "And it saves on production costs!"

Friend grins. "Badass! Awesome! What is their name? It has to be something unbelievably cool!"

"I was thinking... 'Ninja'." Nin said.

"... That has to be the most arrogant name I have ever heard," Friend said.

"It's impossible to come up with a name good enough to reflect their coolness," Nin explained, "so I've come up with a clever plan. I'll develop them using this name as a silly throw-off project name. I'll say I'll announce their real name later."


"After my hundreds of thousands of fans have gotten used to 'Ninja' and are wondering what the real, cool name is, I'll tell them. Something like 'Pii'. Something really, really, unbelievably lame. Lame enough to cross international borders. Lame enough to leave a stunned silence in its wake, then a gathering tide of outrage."

"Um... okay..."

"Then, I will 'listen' to my fans. I will say, 'You're right, you're right. What say we just leave it "Ninja"? Sure, it's arrogant, but what other choice do I have?'"

"I see..."

"They'll be so grateful that I listened to them that they'll be even more in favor of these 'Ninja' then ever before! They'll watch the movies, buy the merchandise, and remember my name forever! It's a flawless plan!"


There's always hope, eh?


I didn't think anything could dampen my enthusiasm for the Nintendo Revolution.

I was wrong.

Can we say "out of touch"? Well, we know Nintendo can.

Wednesday, April 26, 2006


This is interesting. Palladium is on the verge of going under. They're the guys who made RIFTS, one of the games I turned to after D&D got on my nerves too much. From a game sense, RIFTS is unbalanced and poorly thought out. From a narrative standpoint, RIFTS has some of the most amazing world design I've ever seen. But that aside, I'd like to talk a bit about the company.

Kevin Siembieda appears to be the biggest Palladium guy - he not only seems to write about half the books I bought way back when, but also seems to run the company. The company itself doesn't seem to be well run. "Treachery" that can kill the company shouldn't really be very possible, and any company which can be convinced to think that the Nokia N-Gage is a valid game platform doesn't have any fingers on any pulses.

Also, their web page® design® is rather® poor®, as "you" might be "able"® to tell® if you clicked® on their "link"®. It's not all polished like slicker companies do.

The thing is, this problem they're having could be turned into an opportunity.

See, in order to raise money, they're turning to their fans.

In this day and age, that is the most powerful tactic possible.

Oh, sure, it's not viable if you need tens of millions of dollars (yet), but bringing a crisis of a mere million before fans numbering in the hundreds of thousands doesn't seem like a huge stretch. So it's a great idea. But it could be more than just a salve on poor business decisions. It could be... really, really big. For them.

I have seen things catch the eye of the internet crowd and have a golden era. I'm not talking about some stupid internet fad. I'm talking about movies. Series. Wines. Musicians. They crept into the internet - usually infiltrating via blogs - and then stayed there by providing a cheerfully personable continuous stream of content.

Handled correctly, Palladium has the potential to leave them all behind. These things came into the field with tens, maybe hundreds of fans. Palladium has hundreds of thousands of fans. Moreover, by convincing people to invest in their recovery, Palladium attaches that attention to themselves with ten foot long staples.

You can use that attention. Nurture it.

All you need is a blog.

You need something which allows you to post weekly (at a minimum) fun content. You need something which allows the fans to rally - a forum, a comments section, etc. Functionally, it's a blog, even if you name it something else.

Palladium is made of content. Imagine posting two, three times a week. Art that never made release. Ideas that never reached a book. Articles from mythical newspapers. A bit more data on particular characters. Stats for monsters not seen in the expansions. Links to fan sites. My god, the company is ripe for a blog! Especially since it's run without that sense of being a polished corporation. The blog would feel human. That's good.

I wonder if they'll run with it. They could. I think it would double their earnings in a year and a half. I think it would cement themselves in the heart of gamer culture.

Honestly, I can't think of a better opportunity. But they need to move fast. Real fast. Because that blog will earn the majority of those "save our ass" payments.

Episodic Overlap!

Me, I think that a major new game style is going to be episodic games. But I also think that virtually every game a decade from now is going to be built around player-generated content. Frankly, the two don't mix too terribly well.

(Edit: by which I mean, having one shared world in which episodes are written by different authors using different characters. Think of the Star Trek universe. And that had lots of editors!)

But it gave me an idea.

What about an episodic game where there are a dozen - or two dozen, or ten dozen - writers? They write episodes, you download and play them. But they are in a shared universe. Could you make the universe stable without a giant overlord editor putting the smackdown on authors?

Well, say you let players download whichever episodes they want. If they think Arnold is a bad writer and Boba is a good one, they can download all of Boba's stuff and none of Arnold's.

But what happens when Carrie makes an episode which uses content from Arnold? You download that and - wait a second! What's with this integral character you've never heard of before? Wait, Arnold's episodes are all high-power and your character is low-power!

Ah-ha! Ah hahaha! I have a solution! And here you didn't even realize there was a problem!

If you remember, a few posts ago I wrote a little essay on a possible metalanguage called Perkplot (or Plerkot, or Plotz, or whichever, I don't really care). This system represents the game's relations to other parts of the game, allowing it to judge how difficult it will be for players to get from one portion of the game to another. Then, it can modify the relationships to make it easier or harder on the fly.

What if we apply this to that! Or that to this!

What we end up with is episode maps. Think of them as a kind of outline. Each part of the outline is linked with some writing. Played alone, the map is traversed with ease like a regular game. However, it establishes a metamap containing what boils down to "the current state of the game". For example, an episode ends with Diedre in love with Egon. Until something changes that, Diedre and Egon will be in love in all future episodes, rather than having a scene written by another author in which they are neutral.

In addition, the episode provides element maps. Element maps are little fragments of map that can be used in other episodes to bridge connections that rely on something that doesn't exist in this player's particular metamap.

For example, if an episode has a villain, Frogenheimer. The way it's written, this villain's defeat is led up to by Egon and Diedre's hatred of each other. Obviously, having already played the Egon/Diedre love episode, that would be a rather shocking change.

So, the engine goes and looks for a way to make it work. What it does is it tries to fit an element map into the episode map to route around that node. Exactly how this works depends on the episode map, and I'll explain that in a bit.

If the engine has no suitable element map or if the number of patches required is higher than the player's "patch" threshold, the engine uses a different element map to change the metamap to match what the episode needs. IE, it plays through an element map which makes Egon and Diedre hate each other. (The player may have to actually track that down, a kind of sidequest in the game.)

In addition, an episode can include element maps to patch itself if there are other, popular episodes you want to take into account.

What this ends up meaning is that if you want Diedre and Egon to be in love throughout all episodes, you write element maps to route around every conceivable situation which might include them not being in love any more. However, volume does not always outweigh quality, and certain authors can be considered to have dramatically more "weight", leading to their episodes ignoring your element maps.

What does this mean?

Aside from meaning that poor Egon and Diedre are likely to have a tempestuous relationship, it means that you can have episodic games with dozens - or hundreds, or thousands - of unedited writers. A player can download from whoever, play it, keep it in his universe or uninstall it, change their opinion of the author...

It comes at a price. This isn't simply scripting. It's one level higher. There would need to be a tool kit to help.

The amount of stuff you would need to produce in an episode would be higher, but the amount of exactitude required would be lower. You don't have to do stats, for example, simply relative power levels. Of course, you would have to have several axes of power, and understand the RPS of the game - it would have to be carefully designed.

The episodes would functionally need to be written twice. Once for humans, once for computers. Transitions from one constraint to another would require you to mention the method of the constraint change. For example, our heroes teleport across the world to a far off land. If your player's world doesn't have that power level, the engine needs to know it can replace "teleport" with "boat" and shorten the distance considerably.

There could also be "stealth" episodes - episodes which inject themselves into the slack created by other episodes. If they are boating across the sea, a stealth episode could happen at that time which has little to do with the primary plot.

The system would be complex, but with the right tool, it could be managed. Combining the map-routing system I just explained and the difficulty-monitoring system I explained in the original Perkplot post, your episode would fit itself into the world delightfully, neither too easy or too hard, and not breaking much...

There's so much you could do. If you're playing an episode by a weaker writer, you could have it more likely to be patched with an element map from a stronger writer than if you were playing a stronger writer's episode and considering a weaker writer's element map.

People could post their versions of what happened, and the episodes they used to "seed" the situation.

If you don't want to play the episode, you can just have the system take the episode map into account without actually running through it.

You could have different paths through any given episode, resulting in a different metamap of how the universe is. You could save different paths through all the episodes as a whole. The "Egon/Diedre love path" vs the "Egon/Diedre hate path", for example. Save them as pieces, so you can add in one of those two paths to any other set of paths...

You could play an episode in the past, forcing the engine to recalculate the metamap leaving out episodes past a certain date. Or you could run an old episode as a current episode. Imagine watching an episode from Buffy or something, where the episode plot and dynamic is the same, but the episode airs in the wrong season entirely! Totally different power levels and character dynamics.

Of course, the engine would be... yow.

Maybe the engine could also be open sourced... hm...........


Anyhow, comments appreciated.

Tuesday, April 25, 2006

Video Villain

People are talking: video game bad guys are uninspiring and boring!


Everyone's got a theory. Welcome to mine. My theory is simpler than their theory. My theory is this:

Video games focus on the player.

The key step to making any character come alive is developing them. However, video games have a very focused "presence": your character. It is rare and disconcerting when a video game ships itself off to the other end of the universe to suddenly be from the bad guy's perspective.

Think about all the best villains in video game history. The game almost certainly went to absurd lengths to develop the villain, to give them screen time.

In System Shock 2, the ever-memorable SHODAN was an incessant voice in your head, doling out rewards and ad-ad-ad-adviiiiiiiiiiice, insect. In FFVI, Kefka was continually tromping up and down the world, and every time you saw him, he was packed with (A) world-changing goodness and (B) comedic dialogue. In FFVII, Sephiroth showed up in a huge number of cutscenes and flashbacks, making him more commonly present than many of the party members.

There are lots of ways to do it, but it takes effort. Games aren't movies: cutting away to a situation on the other side of the planet feels strange to us. However, that's far from the only way to develop a villain!

Perhaps I can talk about some of the ways, later. Fun times!

Monday, April 24, 2006


Finally over the cold... bleah. Here's some thoughts on heroes in games.

I was reading this article. Although it's based on a deeply flawed theory, Clive Thompson (the author) seems to pull the truth out of the mire.

The question it asks is: when watching a slasher film, why do people seem to side with evil, then switch over at the end to rooting for good? Carol Clover's theory argues it has to do with sexuality and blah blah blah. She is, of course, entirely wrong.

Rooting for the "final woman" - the last girl standing in a horror movie - has nothing to do with sexuality.

It has everything to do with the underdog.

We root for the underdog. You have to make the underdog really nasty to get us to dislike him or her. The more hopeless the situation, the more we empathize.

In the beginning of the movie, the killer is the underdog. One man fighting against normalcy, shaking things up. This is probably also the reason the vast majority of slasher victims are incredibly irritating. At the end of the movie, the killer is the dominant force and the girl is the underdog. This is half obvious, and half camera tricks - we slide from portraying them as "the norm" to portraying them as "the underdog".

The last survivor is often a stereotypical woman because a stereotypical woman's "starting point" in our mind is pretty low when it comes to physical danger. A giant jock against a killer, not so much tension. A little cheerleader? Lots of tension. She's much more of an underdog.

Now, sexuality does come into play, of course. It makes us like her before we know her plight. It makes us pay closer attention to her. And, yes, it may make us feel a little protective. But the vast majority of these feelings are due to her being an underdog.

Don't believe me? Let's look at some examples from the world of video games.

Yorda, from Ico, is a girl, but not in any way a sexually attractive one. She's essentially a little blip of a waif. Yet we feel very protective of her. Because she corners the market on being weak and timid.

From the same line of games, Bob (okay, I don't really know his name...) from Shadow of the Colossus is a man. Not only that, he's a powerful one. He's got an awesome horse, a killer sword, and a grip that was never matched by gravity. He can take a hundred foot long stone pillar to the head and not die.

But we're rooting for him more than we ever rooted for Duke Nukem. Why? Because he's not fighting some little thing. He's not on the streets, beating up punks. He's fighting titanic monsters that are half level, half boss. The experience is very intense, and arguably even more so for the people just watching.

In Terminator 1, we root for the girl. As expected. But in Terminator 2 and 3, we root for the kickass robot. Why? because the kickass robot is the underdog in those movies!

It's a pretty clear pattern. The more of an underdog someone is, the more you want to protect them. The more you root for them.

This is a useful thing to remember, because it is one of the few things that holds true for the vast majority of humans. You can't count on everyone thinking someone is attractive. You can't count on everyone thinking someone is funny.

But you can count on everyone thinking someone is about to get their ass kicked. It's kind of a universal constant.

Thursday, April 20, 2006

Plot Blocking

Very long!


I've been plinking away at a new system for handling plots in computer games. I've come up with a tentative scripting meta-language which, in theory, can handle any kind of plot and allow a computer to change the plot slightly to account for player capability.

Of course, I can't decide what to call the language. I think that "plotz" and "plotalot" are both likely to have it die without ever being born. Heh. I guess I'll call it "Perkplot", at least for the moment.

Perkplot works as a constraint system using a few basic fundamentals which all plots share. Although Perkplot cannot come up with plots, it can modify plots to take into account a given player's capabilities by adding or relaxing constraints, and instantiate a full plot without requiring everything to be carefully scripted.

What's a plot?

A plot in Perkplot is a set of constraints and challenge markers. A challenge marker changes constraints and a constraint limits how you can reach or use a challenge marker. A constraint may be, but is not usually, a plot.

For ease of discussion, a plot is considered to have "nodes". A node is a given group of challenge markers and constraints.

For example, if you wake up in jail, the first plot node might involve getting out of the cell. The second might involve getting past the guards. The third might involve figuring why you're in jail. Each of these nodes probably has a fairly large number of constraints and challenge markers, but another node is not likely to share them.

These nodes are for simplicity of discussion: they are not actually inherent in the language of Perkplot.

Challenge Markers!

Challenge markers are the heart of the plot. This is how plot moves forward. A challenge marker may be a place, an event, a thing, an acquisition, an action, or anything else that can be measured by the game. A challenge marker allows you to move from one plot node to the next because when it is triggered, it changes the constraints and challenge markers in play.

If multiple challenge markers are reached simultaneously, the one with the highest priority happens first. If there are two markers with the same priority, the one with the most constraints on it happens first.

This allows you to perform some detailed plot "trees". For example, if someone reaches a room, you can have two markers in it: a "reached room" marker and a "reached room with ally still alive" marker. In the latter case, there's a constraint on it: the ally still has to be alive. Therefore, it fires first. In firing, it erases the "reached room" marker.

They can also call other markers. So maybe the reached room and reached room w/ally markers both call another marker which is used for the results they share.

Anyhow, just traveling from marker to marker isn't terribly fun. Therefore, we put in constraints.

Restraining Orders

constraints are things which change the way the universe works. This allows plots to actually exist rather than just be a long line of challenge markers.

For example, if a plot is about a virulent space disease, then one of the constraints might be that certain people get sick and cannot travel. This sickness may even spread. This constraint changes the way the world works and also packs a strong emotional punch. This constraint sets it apart from another plot about space pirates or tribbles.

Anyhow, constraints are often used to keep players away from challenge markers. This is the challenge of a plot: to solve it despite the difficulties.

There are a few kinds of common constraints:

Data constraint: A data constraint is something which could theoretically be solved without any information, but is very difficult to. So you need to go hunting. It's very similar to a key constraint, but generally can be bypassed by walkthroughs or multiple playthroughs.

Key constraint: A key constraint is the classic widget hunt. Of course, not all widgets are physical. A key constraint can require a keycard, a code, a person, a decision, an attribute, and answer... anything, really. It's a very specific constraint often used when you need to highlight a given piece of information, person, or map area.

Character constraint: A character constraint is something which requires a character skill or attribute at a given level. For example, lockpicking. In simulationist games, you can usually use other characters to fulfill these constraints. In a less simulationist game, using another character's skill would fall under a key constraint rather than a character constraint. The biggest difference is that a key constraint always has a solution. A character constraint might not.

Red Herring constraint: This is a constraint which exists solely to make the player try to solve it, even though it is unsolvable. Perhaps it requires an impossibly high skill, or a character that's dead, or a widget that doesn't exist. These really piss players off.

Hunt constraint: A hunt constraint is a constraint that can be fulfilled by trawling the area. Whether social, physical, or locational, the hunt constraint offers a way "past" the other constraints without disabling them. For example, finding a hidden door or getting the king to write you a letter of recommendation.

Skill constraint: A constraint which the player must perform an actual skill-based game to fulfill.

Chain constraint: A chain constraint is a constraint which can only be fulfilled by reaching another challenge marker (and, usually, solving a bunch more constraints).

None of these constraints are actually different in terms of the language: they are differentiated specifically for discussion. In the language, you simply list the method(s) by which a constraint may be filled, whether that's a challenge marker or a ball-point pen. (This is why some of the "types" of constraint conflict.)

Can't Get No Sastisfaction!

The problem with simulationist games is that players will often find that a plot has become either very easy or impossible.

By creating a constraint satisfaction language for your plots, Perkplot allows the system to adjust the constraints to match the available resources.

When a constraint is introduced, Perkplot determines roughly how easily it can be satisfied. For example, if a constraint requires someone with red-level access and two of your party members already have it, the constraint is worthless. Therefore, new constraints need to be created to make the game a little more fair.

Each constraint has a supposed difficulty. Although they could be painfully marked one by one as the game is created, it's generally easier to just have "easy constraints" and "hard constraints", along with maybe a few "very hard constraints" for things like bosses. constraints which are created in play have this difficulty automatically calculated and compared to the difficulty they were intended to have.

If a constraint comes in as significantly easier than it should be, a new constraint is created at about half the difficulty difference. This means that making wise choices is still rewarded, but without making the game a cakewalk.

Creating additional constraints is one of the key elements of Perkplot. It uses what is pretty much simple graph theory to determine a valid additional constraint for the too-easy constraint in question. The constraint may go "above" the first constraint, requiring you to do something before you can fulfill it, or "below" the first constraint, meaning you do the first constraint and then realize you're not done.

An example of the first would be if your red-level clearance party member was kidnapped: you have to track him down to get your red-level clearance back. An example of the second type would be if after you open the door, a monster attacks you.

In addition, if a constraint turns out to be considerably harder than it should be (and is the only path to a marker), a new challenge marker is added that will bypass the too-hard constraint. For example, if you need red-level clearance but everyone with that level clearance was spaced, the "blow the hell out of the door" marker will be added, allowing you an alternate method of obtaining entry.

Of course, in a simulationist game, this is usually not needed. Although spacing the captain would make it harder to get that clearance you need, there should be a large number of other ways of accomplishing your goal through the "natural" laws of the universe. Crawling in through ductwork, or hacking the door, or blowing it up, or going back and finding the captain's spaced body.

Also, good designers will likely have several "routes" to any given marker. If a route is too easy, it is made harder. But if it is too hard, simply take another route.

Either way, we run into one of the problems that this system was created to prevent:

Invisible constraints

Very few games have every constraint spelled out to you. Moreover, even the ones which are spelled out usually have lots of steps which are not. However, an automated system cannot meaningfully choose if and how to represent constraints.

constraints are the part of the plot that give it an emotional appeal. As a writer, the designer needs to tell the constraints as best he can in order to make the player feel like something important is happening. The system cannot frame constraints such as "Dave just died" in ways which are both interesting and touching. That's the writer's job. They should write in a cut scene, or a piece of dialogue, or something.

But the system does create new constraints. These constraints have to be clearly stated, but need not have any emotional content. For example, if the door breaks and you can't get through, the game can simply tell the player, "The door is broken. Maybe there's another way around/Maybe there's a way to fix it." (Whichever is the case.) It doesn't have to try to inspire you to any emotion other than irritation.

This is the missing heart of the system: it generates no inherently emotional content, just balancing content.

constraint Levels

Creating constraint series is what the whole game is about. Really, you just move from constraint to constraint during the course of any game, with occasional bouts of luck and skill in any given constraint.

For example, imagine a level from a game like, say, Doom. Each corridor and room can be thought of as a constraint: once acheived, new constraints are made available. The room off to the side. The collapsed rubble pile. The elevator.

A hallway can even be broken up into multiple constraints, if it is long enough for that to make sense.

These constraints would allow us to modify the level to change over time. If the level is too easy from point A to point B, one of the constraints fails. A hallway collapses. A door needs to be unlocked with a widget from point C. Etc.

Any physical level can be designed like this. Moreover, any nonphysical level can be designed like this.

Peoples' relationships can be defined as a set of constraints. People's positions can be constraints. People's beliefs can be constraints. What weapon can affect someone is a constraint. How much damage they can take is a constraint.

All of these constraints change the way your world works. They can be built with painstaking personal care, or they can be assembled by algorithms. They can be big, affecting the whole game, or small, affecting one corner of one room. They can be physical, mental, emotional - anything you want. You can have a constraint that says all type 1 doors can be blown off their hinges with explosives, or a constraint that says this particular door can be.

The key here is that constraints are a navigable graph. You can tell which constraints lead to which constraints, and thereby you can tell how many "nodes" and how much "difficulty" there is in trying to accomplish a specific task.

When the constraints gain too much complexity, things can start to become a little shaky due to the difference between the searching algorithm and the emotional player simply grokking the situation. But for most games, that's simply not a problem.

(Don't forget: a constraint can be long term. It's not like every time you hit a challenge marker all the constraints go away. The ammo you spent and the friends you lost stay spent and lost...)


Perkplot is useful for more than just making your plots adapt to a chaotic player presence. It's also useful for adapting your non-plot elements and allowing you to plot a plot in vastly more detail.

Preferably using a computer tool, you can reduce a given plot sequence down to a set of constraints and markers. You can bring in what the player is likely to have as resources, see if it works okay. Moreover, you can bring in the bizarre extremes that players are likely to bring in: the player who can't hit the broad side of a barn. The player who's been leveling for the past two weeks. The player who hates your stupid mascot character so much that he leaves her dead continuously. The player who forgot to buy a new weapon and is still weilding "pointy stick, mark one".

This is especially useful in more simulationist games. You can write a simple script to run through all the permutations. What if the player brings comes in a mage? An archer? A swordmaster? A berserker? A thief? What if he comes in with eight hundred packs of high explosives and no gun? (A valid tactic in surprisingly many games...)

What if the player is friends with group A? Group B? What if he hates both? What if he has them radically outclassed?

Now, there are parts of your game that might not technically be constraints. Like the NPC AI. I suppose you could make it a series of restraints, but it would be kind of messy. So, this simulation is far from perfect. But... it is helpful, don't you think?

Memetic Locking

It is easy to program in a system of adaptive constraints which allow for and more fully utilize pattern adaptation control, wolfpack memetics, and some other fun content adaptations using words nobody who hasn't read this blog has heard. :)

The grain is a little coarse, but it's still much better than existing systems, which don't have the capability at all.


Just in case it's hard to understand, here's an example.

Let's say it's a college hijinks game. You live in a dorm, as do many other characters.

The level constraints are relatively simple. In the dorm, each wing of each hall is a constraint. While fulfilling that constraint, you can go to stairwells, elevators, hallways, and rooms constraints which are fulfilled by the constraint you are currently standing in.

So, if you're standing in your room, the only constraint it might lead to is the hallway constraint. From there, you might take the elevator constraint to the lobby constraint and out into one of the campus constraints. We'll stick to our dorm for now.

Each person in the dorm has his own laundry list of constraints. Who they like, what their schedules are, which room is theirs, what they enjoy. This allows the player to interact with them in a more freeform manner. If correctly programmed, the constraints in this part are open to freeform alteration. Ellen likes Frank? You can intervene. Maybe get Frank to go out with her. Maybe get her to hate Frank. Whatever.

The exact level of response we can get from these characters depends on how we've built our restraints. In our game, we might be able to get Ellen to fall for us, or if reality doesn't bend that far, maybe not.

For plots, maybe we have a power failure. Our constraints come into play. It's dark. The elevator fails. The campus' overactive security doors slam down into "bulkhead" mode and the stairwells aren't accessable.

Our plot demands two people in the elevator: Gerard and someone else. Gerard is terrified of dark, enclosed spaces. Who else is in there?

Well, it could be random. Or we could have a specific person. Or, more likely, we can choose someone based on their connectivity with Gerard. Of course, to allow NPCs to freely change their opinion of other NPCs, we'd need a pretty solid social engine, but we could have scripted changes without too much issue. Maybe Gerard is stuck in the elevator with whatever's closest to an enemy. After a little while, they get in a fight. After that, they give up on being enemies and come to an understanding. After that, Gerard goes cannibal.

We could set it up however we like. That is why we write the plot, not the system.

How would you rescue Gerard and his enemy? Well, we can also define that, but remember that we already have a constraint net in place. We need to remember to disable the standard "hallway to elevator" constraints. Then we put in new constraints: turning the power on, breaking the doors open, whatever. We can put in some other constraints where we can shout to people on other floors, or even go out and in windows. Maybe we can hear Gerard yelling and pounding on the door.

All of this can be done with constraint management.

If you got this far, you are a patient person, and you have invested an absurd amount of time in this. So, invest a little more. Comment.

Wednesday, April 19, 2006

Lazy Smart People

I was asked by someone who doesn't read this blog to re-post my theory on why smart people are lazy. I guess doing so proves I'm not so smart, eh?

Anyhow, the basic observation is this: most of the brilliant young people I've met are also quite lazy. We're talking ages of 15-25. We're talking brilliant, not just bright.

Now, to be honest, a lot of not-so-brilliant people are also lazy. But the percentages were off: the number of brilliant and hard-working people in that age bracket is countable on one hand.

My theory on the matter can be most clearly explained using public school. A brilliant child going to public school finds that maxing out the reward requires either being brilliant or working hard. Obviously, being brilliant is easier. Working hard while being brilliant produces no additional reward.

What's worse is that the ease with which the reward can be obtained devalues it. It's like this story:

"Hi, welcome to class. For coming to class, we're giving you a little baggie full of toenail clippings!"

"Uh... okay..."

"But if you work real hard, we'll give you a gallon jug of toenail clippings!"

"And if I don't want any toenail clippings at all?"

"Then you'll have to come back next year and try again!"

The devaluation of the only reward public school offers means that not only do brilliant children not work hard, they stop working at all. It's easier not to care at all about the class than to only care a little.

Now, before you think this is a situation caused solely by public schools, a similar thing happens in all interactions.

Adults reward brilliant children entirely out of proportion with hard-working children. Anytime a child says something brilliant, nearby adults are astonished and gush appreciation. Anytime a child works hard, they just get a consolation pat for being hard workers. No contest: why would you stay addicted to chocolate when you've got heroin? Stop working hard, it's not worth it.

Similar situations arise with other talents, of course. Charismatic children usually have a pretty easy time making friends, which devalues friendship considerably. This usually manifests as having tons and tons of mild friends or mistreating your close friends because you can always make another.

(I haven't studied these other talents as closely, for passably obvious reasons. Feel free to comment on your own experiences with them.)

The basic idea is simple: working harder rewards less than working smarter. In some situations, that's not true. Sports, for example: a talented athlete often finds that if he works harder, he kicks much more ass. A much better reward. But in our society's mad march towards mental mediocrity, the rewards are capped at a level which is absurdly low. Once your intelligence allows you to max those rewards out with only a few minutes work, the rewards devalue to the level of toenail clippings.

Some children could be made hard working, I imagine. Perhaps private schools, or home schools, with much higher reward standards. This seems to be largely true: all the brilliant, hard-working young people I've met have been from one of those two options, save one.

Also, once they get a family, it looks as if people's whole demeanor changes. Maybe they stop being lazy. Maybe they stop being brilliant. ;) Either way, that's why this is limited to the under-25 crowd.

Anyhow, that's my theory. And you're welcome to it.

Tuesday, April 18, 2006

SecondLife Economy

Apparently, Linden Labs (the controllers of SecondLife) are cancelling "dwell payments" in an attempt to get their economic feet under them again. You can read a bit more here.

Ah, so it's dwell payments causing the downward spiral. Of course! It's not like dwell payments have been around since the beginning of the freaking game or anything.

Oh, wait, it's just like that.

Ever think that the reason your economy is both crashing and booming at the same time is because you have devalued your money? Yeah, they're spending more. Yeah, they're buying it for less. It's not just because you've got a lot of extra cash flowing into your economy. An economy is more than just supply side!

It's because you've shown that your money and your game can't be trusted. Scriptors are irritated. Griefers are growing more potent every day. Land owners - they can and have spoken for themselves. Of course, you've ignored them. Don't want to piss off "the little folk", so instead you piss off (and, in fact, repeatedly stab) one of the foundations of your economy.

This isn't even to mention the way that you crush outside implementations - a rather bizarre and ironic twist for a game supposedly about user-generated content. You killed the stable and trusted third part RMT vendor, preferring to replace them with your own yellow version. As unbiased and trustworthy as a politician. You kill any attempt to change policy from the inside, as well.

Your money has been devalued not because there is too much, but because the people who matter don't fucking trust it.

Monday, April 17, 2006

The Second Time

I've been doing a lot of thinking on the subject of social AI, automatic character generation, and simple narrative generation. To make a long story short, I've got some solid stuff, but it's not sparkling. (Maybe I'll polish and release some of it, but I'm not satisfied...)

What I'm thinking now is a bit different.

I just finished watching someone play through the end of Radiata Story and immediately start again, and although he didn't actually do very much in the new game, he shows signs he'll continue. I watched someone finish playing a game and pass the controller over to next person, who starts playing the same game, roughly the same levels, with his own save.

I've been thinking about narrative automation. Even if it's possible, I'm not sure it's a good idea.

What we want isn't narrative automation: we have a story we want to tell. We want to communicate, and the players want to hear the story. Moreover, if it's artfully written, they'll gladly play it multiple times. System Shock II, for example. So, we don't want random or automated storytelling.

What we want is to be able to tell our story in the most interesting way and with the least effort. What we want is to be able to tell the computer the story, and then have the computer flesh out the details.

And I think I have an idea as to how to do that...

It's not done, though. I'd like to hear some other ideas, see if I can get the last pieces to gel. What's your opinion?


Taking a break from what I was working on... Here's an anecdote from the future! Whoooah.

"Doctor, can you tell me what's wrong with my daughter?"

"Yes. But first, do you watch which games your daughter plays?"

"Well, outside of family night, no... aren't all games pretty much the same?"

"No, I'm afraid not. Just like every drug is different, even though they all come in dermal patches, every game is different."

"Wait... are you saying Aviva has... gamer's complex?"

"I'm afraid so, Mrs. Stevens."

"But there hasn't been an outbreak of gamer's complex since the '41 cyberludic laws!"

"That's a common misconception. In truth, thousands of people come down with gamer's complex every year. It renders them almost incapable of interacting with the normal world, and with the information trade laws, nobody ever hears about them."

"My... my father died in the ludic wars... isn't this what the cyberludic laws were passed to prevent?"

"Well, laws don't work very well. Many of the games that are released slip through the cracks in the laws. Moreover, there is a large underground black market in anachronist games. By her responses, it's likely your daughter has been playing games from the late twenties."

"The same games my father played..."

"I'm afraid so. Laws simply cannot stop information."

"What am I going to do? Back when my father caught it, the only treatment cost millions, and it had a 40% success rate with lots of side effects. Every treatment had to be carefully configured for the individual... we couldn't afford it. I can't afford it now!"

"I'm afraid that the information trade laws and psycholudic restrictions have made legal research in that area nearly impossible. The legal treatment now is the same as it was then, plus inflation."

"... And... illegal treatments?"


"Not all anachronists are anarchists, Mrs. Stevens. Many are trying to advance their science, living in countries which were not advanced enough to sign the laws in '41. Have you heard of The Calling?"

"A little. They say it's a terrorist organization."

"Not all anachronists are anarchists, Mrs. Stevens. I happen to know the frequency codec for a domovoi of the local Calling darknet. You'll need to disconnect yourself from the government network..."

"Wait, you can do that?"

"Yes. Your daughter knows how, and she'll probably be eager to connect to The Calling. Get her to hook you up. Here's the codec seed. But be careful: the darknets are unfair places. Most people tell it like they see it, and some tell it with vigor. You're not used to that, and it will be quite a shock. You'll learn some things you probably don't want to know."

"Won't you get in trouble for this?"

"Only if you turn me in, Mrs. Stevens. Even if you do, I'm a doctor: I took an oath to help wherever I could. Aviva is suffering. The anachronist cures have a seventy to eighty percent rate of success, with fewer side effects. I'm confident that your need to cure your daughter will keep you from turning me in."

"Well... I'll try it. Thanks."

Saturday, April 15, 2006

You ain't nothin' but a hound dog!

A post on friends and games and friends by games.

There are two kinds of games:

The kind that uses real people as the social power, and the kind that uses fake people as the social power.

There's a big difference. A fundamental difference that most designers don't seem to understand.

See, multiplayer games such as Starcraft, Settlers of Catan, or even Apples to Apples, they use one tactic to bring players together: direct in-game effect.

You like or hate Sue because Sue just played in your favor or against it. You and Sue might gang up on George, and you'll like Sue depending on how well she helps in your campaign against the evil menace that is George.

Recently, single-player (and single-player portions of multi-player) games have decided this is the best way to make an artificial friend for you in a game. By giving that person an in-game effect.

What they have forgotten is that if Sue blocks off the thoroughfare with a spawning pit, we get really irritated with Sue. Being part of a team requires that you feel the other members are pulling their weight. If they aren't maybe we can yell them into straightening up... but even if we can, we're still irritated with them.

Can you create an AI for your game which won't ever get in the player's way? What's that, you're introducing the would-be friend with a mission to save him? Wrong answer!

Really, "Hound Dog" is an excellent way to keep this in mind. "You ain't nothin' but a hound dog, cryin' all the time." Is this your character? Change it. "You ain't never caught a rabbit and you ain't no friend of mine!" Your AI doesn't work well? Don't put a character in a situation where they have to use it.

Okay, to laser in here, there is precisely one way to put friends in games:

Steal from movies.

I rarely suggest this. Games and movies are deeply different. But in this case, movies know how to make friends. The AI for games can't hold a match to it except in very rare situations. Even if it can, using movie techniques as well can't hurt!

Friends in movies are made primarily with three techniques, as far as I can tell: hang-out, support, and history. In a movie, Alex and Frank are friends. How do we show that?

Well, usually we use dialogue. We show Alex and Frank hanging out when there is no need for them to. Alex isn't rescuing Frank, and Frank isn't helping Alex fight off a horde of exploding demon zombies from St. Louise. No, they're spending time together because they just want to.

Sure, you have to be careful not to bore your players with hanging-out cutscenes. But I'm sure a clever person like you can work out a way to do that. ;)

Support is more straight-forward and often applicable to games. To show Alex and Frank are friends, maybe Alex loans Frank fifty, or maybe Frank advises Alex on his girlfriend. This shows the meat, the reliability, of their relationship. This can be done really easily in a game. It's rare that I feel as much friendship with a clumsy AI character as I do with a character that simply gives me a new gun every level.

Of course, this support needs to be useful. That means that the tutorial guy is usually irritating, because he says useless things. This takes up your time and presumes you're an idiot. Similarly, if I already have Excalibur, having someone give me "Steel Longsword + 1" isn't going to make me feel like they've helped me at all.

The last technique is history. And here is where the interesting and unexplored section of the idea lies.

In movies, history is shown through either dialogue or random stuff like photographs. We show that these people have been together for a while. They've been through stuff. Alex says, "Just like that time when..." and Frank says, "She looks just like Tilly..."

This can be done pretty easily in games, too, of course. The interesting way to do it is to tie it in to the game mechanics.

If you have team mechanics which obviously change over time, you can use those. For example, if your game has dual techs, give two friends great starting dual techs. If your game uses a gunner/pilot system, make your best friend be awesome with you in the other role.

However, if you don't have any such thing, you can still tie it in with game mechanics by tying it in with support.

The main character, Alex, is going out to fight exploding demon zombies from St. Louise. Frank says, "Hey, Alex, I've still got that sword we made in shop class, if you want it." Frank doesn't just give Alex the sword: he establishes a history.

Similarly, if Alex and Frank have a cut scene where they do something cool, there's no need to have them talk it over in length. They're old friends. They know how they think. Alex says, "We need to -" and Frank says, "Yeah, I know. Ready?"

Once you have made a friend, there are lots of things you can do with them to make the player react. But that is another, even longer, essay. Enemies are also a fun topic for another day...

Lots to do!

Friday, April 14, 2006


I noticed yesterday that the most popular character from Babylon 5 was Marcus. Everyone I know that watched B5 really liked Marcus.

I thought to myself, "why?"

The answer I came up with is "contrast".

The show is a serious, slow-moving political show, and that's fine. People like it. But fighting is rare, and in the times where there is a fight, it's a shootout.

Marcus is the exact opposite. He has an overbearing sense of humor, no patience for politics, no interest in the slow moving plot, and kicks ass short-range. He gets the blood pumping. He exists tangentally to the rest of the show.

You can see another example of this in action in earlier seasons with Lineer. At least in the crowd I was in, what made the episode is when Lineer started kicking people's asses.

This is interesting, because it perfectly aligns with pattern adaptation control. It's a real-world example of a tenuous theory.

Take a look from the other side. In a story mostly about fighting, the enigmatic brainiac who outmaneuvers everyone is often considered the coolest character. That's because he contrasts.

It's not that fighting is cool, or that being smart is cool. It's that moving tangentally is cool. "Shorting out" the normal routine, circumventing it, or ignoring it.

Of course, do that too much and you end up making the tangent the norm. Do it too many times, and there is no norm to tangent off of. That's not always a bad thing, but it bears consideration.


Wednesday, April 12, 2006

What we have here...

Read the previous post before you read this one.

It is amusing that in a post that started by being about ways of communicating, I failed to make clear the difference between the various AI bits. Lemme 'splain:

Each of the AI bits uses a different algorithm. They aren't filters. They're full-blown systems which parse different data in radically different ways. The only thing they have in common is an emotional framework which affects all of them: if you are pissed, the way you look at the world changes at every level.

Other than that, they work on different algorithms entirely.

The "reality" system does short term goals, long term goals, and situational extrapolation. It does this by a long list of fuzzy rules which it trawls through. For example, "fights cause harm x 0.4" when harm is understood to be bad. The fuzzy multiplier is smaller the more powerful you are, because the fight is less likely to do you harm. Similarly, the enemy has a "visible power" which modifies your own multiplier.

By trawling through this rule set, the reality system can determine what basic actions the character needs to do in order to achieve or avoid a given result. This is a fairly basic system, but requires a fairly large number of explicit rules. Remember, this trawls, so it could go, "insults cause punching", "punching causes fight", and "fight causes harm".

The "social" system doesn't use logic or trawl through anything at all. It simply judges each person with a few stats. These stats, such as "attractiveness" and "power", are then used to determine what actions the system wants to perform to these people. These actions are passed to the reality engine, which determines exactly how to do them. This engine also handles conversation, because it has all the necessary emotional and relationship parameters already.

The social system is an active system. It doesn't simply judge the situation, it actively seeks out friends and enemies you know you have. The reality engine might have a sweet adaptive rule set that takes these things into effect, but that's pretty advanced...

(The social system could be done with a neural net or simple alife, if you wanted to be all snazzy and inefficient...)

The "convention" system uses a long list of simple rules. Unlike the reality system, there is no "tree" - no "this causes that". Instead, it is simply a list of situations and proper responses, paired with emotional feedback for achieving or missing the proper response. This list is the primary means of emotional change, the only other one being goal accomplishment and failure (remember, the social system causes goals to be made).

The convention system is similar to the "law" system. In fact, they could probably be compressed into the same system. It's not like I polished the concept.

These aren't differences in filters. The data they take in is different. The effects they efficate are different. And, most importantly, the algorithms they use to decide what data should be responded to in what way are radically different.

Not simply filters. Filters are a different concept entirely.


I was cruising and I found this post, a little toss-off post about marketing. But I've never heard the argument about different kinds of reason-giving before, and it strikes me as an interesting idea.

According to Tilly, according to Gladwell, there are four ways we explain what we're doing. Social conventions, stories, codes, and accounts. If you use one when another is called for, you come off looking foolish. Now, I'm not going so far as to say that's right, but I am going to think about how you might use that in a game.

It doesn't explain how we decide something, just how we explain how we've decided something. But, as everyone knows, in a game it's really the explanation that matters, not the action. If your characters do semi-random things (with a central theme making them reliable), so long as we can rationalize why we're happy.

Now, I think it's possible to drive an entire narrative AI using something similar to these four basic ideas. See, each person in a simulation needs to do things, but making those things both interesting and comprehensible is currently beyond us. Instead, we program that stuff in by hand, which limits us to "small" and "everyone gets the same stuff".

In my experience, the hard part of any social engine is that there are several "pieces" to life, and these pieces don't appear to act the same. If you drive your characters with one algorithm, they become "flat". For example, obsessed with social contacts or obsessed with money or whatever. Even if you tweak your algorithm, there's a huge difficulty making your people feel different from each other in any interesting way. This is worse because you have a hard time showing that people change depending on who they are with. There's a big difference between me at a party, me at home, me hanging out with friends, and me trying to get a job done. With a monolithic algorithm, I haven't seen those differences come out in anything short of spaghetti code.

Well, how about giving each NPC several AI algorithms that tell it what to do. Depending on the situation, it either calls one AI, or refers one AI to another.

To use a modified version of the four systems of explanation Tilly apparently uses, we could have four AI (each of which would be a different level of power in each NPC):

The social convention AI determines what kind of norms this culture has, and presses the NPC to follow them. For example, it cuts in with "murder is bad" and "keep your clothes on". When another AI forces the character to break these social conventions, there is a lot of discomfort. How much depends on the situation, of course.

They social story AI attempts to build a network of people you know. It is what refers you to friends rather than strangers, what makes you crave vengeance or be jealous. It tells you to give your friends an absurd amount of help, and allows you to make sacrifices that the other AI wouldn't.

The law AI recognizes the laws of the area but does not emotionally internalize them. For example, a sociopath with no social convention AI would not feel upset about murder, but he would recognize that he needs to be careful about it. If the NPC is in the same place they grew up in, the law AI and social convention AI are likely to be very similar, except for silly laws without a solid emotional hook. Like, say, jaywalking. But the law AI adapts to the situation: you can add laws from the culture you're standing in, figure out the limits of the tolerances of your party, and so forth. It allows for mental adaptation.

The reality AI is what drives the NPC to do things. Big and small. It says, "time to eat". It says, "you don't have any food, go get some." It says, "conquer the world!" Whatever the NPCs goals are - short or long term - the reality AI's job is to tell him how to accomplish them using a simple logic search. The reality AI also learns "habits" and generally comes preprogrammed with several habits picked up in your youth (such as, say, brushing your teeth and taking a shower). The longer you deny a habit, the more it bothers you until it begins to decay and bother you less.

In any given situation, all four of these AI might be called. Getting up in the morning? Call each of the AI. Combine the results. Refer them to each other if needed.

The trick is that this sounds computationally expensive. You'd need shortcuts. For example, building a social network takes months or years, and our NPCs are supposed to have had months or years... but our computer can't possibly simulate those. So there would be two tiers of AI: "on-screen" in full detail, and "off-screen", where it just does the rough stuff when loading and then more or less freezes.

Used accurately, the interactions of these four AI could lead to all the stereotypical behavior which eludes normal AI. For example, the loudmouthed, pushy bastard who backs down from any real fight. The social AI says, "push! Be the biggest!" and the reality AI says, "whoa, that's too dangerous!" :)


Monday, April 10, 2006

Making Work Fun

As you might expect, this is a post about making work fun.

Games are fun. Any decent game is fun. You are eager to play it. Eager to start it up, eager to see it through. Until it gets boring, of course, but lets forget that for a moment.

Work isn't fun. I find my work - programming and databases - to be fascinating. But, unfortunately, it's only fascinating 3-15 hours into a 40-50 hour project. It's not fun to start, and it's not fun to finish.

The question is simple: can a programming/databases project be reconfigured such that it uses game-like approaches? Can you make a project "fun" right from the get-go? Make the programmer eager to begin a new challenge? Make the programmer enjoy slogging through the tidying-up phases?

I don't know. But it seems to me that it should be possible. Any ideas?

Sunday, April 09, 2006


So, I got Oblivion on Friday. I spent literally all of Saturday playing it. I'll write a beautiful dissection if I ever beat it, but for the moment, I'm going to write a long essay instead. It's like a dissection, but I haven't finished the game.

I noticed a lot of details about Oblivion. Let's start with the small stuff:

There's no "Save My Ass" in "Team"

The most fascinatingly idiotic choice the Oblivion team made was to make it so you can't give your team mates stuff.

I can understand not implementing a complex team AI thing. But giving your team mates stuff isn't exactly a hard thing to implement!

I play an alchemist. I get a warrior team mate. Awesome! Yeah! Just what I need to support my archer-like lifestyle! Plus, I've got a comedic surplus of healing potions, so this guy can just be my meat shield!

Except... I can't give him the potions. What the fuck were they thinking?

A Horse with no Name

Oblivion has a remarkably detailed face-morphing engine. A bit too detailed, actually: there's a million little toggles to tweak. Despite this, most of their NPC faces end up looking like one of about eight basic types. I think this is mostly because they apparently only have four voice actors, and when you hear the same voice, you tend to drop the difference in faces.

Their emotional visualization is, as I expected, pathetic. First, their faces are apparently limited to two expressions: neutral and pissy. When you're "talking" with them, you get four more expressions, but these expressions have nothing to do with the actual emotion the NPC is feeling. They are simply cues to allow you to play a rather fun but totally immersion-breaking minigame.

Moreover, there's no body language. Their eyes do some neat dancing, but I'm under the impression that the people who made this game have never talked to anyone in their life. People do not stand with their face locked straight ahead, and they certainly don't keep the same expression throughout an exchange.

People tilt their heads. Shrug their shoulders. Lean forward or back. People's expressions move across their face. When they smile, their smile marches between a grin and a little, quirky smirk. Their eyebrows dance. Oh, and people blink.

This is body posture and gesturing aside.

These things aren't tremendously hard to implement. I've implemented them myself.

However, their faces are pretty humanlike. This is the most unfortunate success ever to grace a video game. Why? Because humanlike faces lead us to expect humanlike people. And these people have about as much difference between them as M&Ms.

For Love of Love

Let me take a moment to piss about the culture.

I don't know why, but Morrowind and Oblivion have no sexuality in them. At all. This is bizarre, because until that time, their games had blatant sexuality and, in fact, often had nudity.

Now, I'm not saying that all games should have sexuality in them. But Oblivion is functionally a world. It has a cast of thousands. Many of these people have a history, even a spouse.

Okay. Now I'm going to count the number of children. One, two... zero. There are zero children. I guess that's what you get when there's no sexuality in a world.

The number of (mortal) people wearing attractive garments? Zero. The number of attractive garments? Zero. They go out of their way to make every piece of clothing as boring as possible. There's a million different clothes you can wear, but all of them are boring as hell and nearly identical. Where are my pumpkin shorts? Where are my frilly capes? Where is my "Evil Dead" shirt? Nowhere.

It's not just garments. Nobody thinks about these things. There's no talk of sex. No talk of romance. There's barely even any commentary about people being of the opposite sex. The closest I've seen to talking about sex or romance is people saying that a specific girl is beautiful... but it's always another girl saying it, and it's never realistic.

Oh, and one little exchange with a drow about what the fine for necrophilia might be. I have a feeling that slipped by because the editor thought "necrophilia" meant "necromancy".

Let me hit that again:

There's no romance.

One of the driving forces in every fairy tale, every legend, every myth, is romance. But in this game, not only do you not have a love interest, neither does anyone else. There's a pair of elves that are married, but if you hear them talk to each other, it's "hi!" "Hi." "They charged me five gold for littering! Littering!" "Well, safe travels." "Thanks. You too."

I'm not sure what the developers were thinking, but the lack of romance means that everyone has only two bases for relationships. Only two kinds of tension. Friend-based and power-based. People can be friendly or unfriendly. People can be respect or disrespect the power of another person. That's it. That leads to eight kinds of relationship, nine if you decide "completely neutral" is a valid option. Thousands of people with only eight relationship types? Pretty shallow world!

This means that a network of relationships can't realistically be more than four or five people. IE, she respects him, he dislikes her, it disrespects but likes him... the web which you can walk into when you saunter up and talk to these people is extremely limited and very repetitive.

Adding in romance leads to around 30 kinds of relationships. Now your network of relationships can be significantly more complex. This is especially useful because, unlike respecting or being friends with someone, romantic tension leads to a kind of ownership. Two people who are friends with the same person are probably friends, as well. Two people who are (or wish they were) romantically entangled with the same person are nearly always enemies (or, at least, their friendship is in danger).

Leaving romance out of a fairy tale is nearly inconceivable. I'm flabbergasted. I'm stunned. I'm agog. It's like going skydiving... while the plane is on the ground.

Puddle Jumping!

On that same topic, the whole game is puddle jumping. Every time you get somewhere, there's a wide variety of tasks and quests available. Some of them are rather entertaining, although the dialogue trees frequently don't give me the options I wish I had.

They are all puddles.

None of these things has any effect on the rest of the game. None of these things can get you allies or friends. None of these things is connected to anything. This means that each time you jump into a new town, they discard all the emotional investment you built up from your previous towns and start over. Seems pretty brutally inefficient to me.

I suppose I can forgive the lack of adaptativity. I would have preferred being able to, say, introduce people to each other. Or convince anyone to join my team. Or convince people to move out of their house. Or any number of other long-term effects aside from "kill". I can understand that would have been difficult, so I don't mind that it's not there. Much.

What I do mind is that nothing else is there. Why am I playing this game, if it doesn't matter what I do? I know why I am playing this game: I want to get into the academy of magic and build my own spells and magic items. Too bad all their wearables are so boring boring boring!

It seems sad to me that the primary reason I'm playing this game has nothing to do with the huge world they've built, nothing to do with the thousands of man-hours of NPC work they put in, nothing to do with their dungeons.

To me, that stinks of failure.

Dominant Strategies!

So, they tweaked the game such that alchemy was less broken than last time. Largely by making it so that you can't drink more than four potions.

But alchemy is still hideously broken! Absurdly broken!

You walk up to someone - anyone - and buy all their random ingredients. Bread. Apples. Turn it into the completely worthless (for this character) "restore fatigue" potions. What was $4 of stuff is now a $13 potion. That's the sell price, at the beginning of the game. I haven't had less than $10,000 for the past few hours.

Okay, so money is worthless. Good to know.

But that's not all that alchemy does. I walked into Oblivion as level five. The only attack magic I had was fire based. The only weapon I had was a bow. Literally the only one: I had fists, otherwise. Wearing light armor.

But I brought my secret weapon: 105 "cause health damage" potions.

My bow barely scratched the enemies. But soaking every arrow in a "cause health damage" potion was enough to kill just about everything. Even the stupidly overpowered bad guys only took two arrows and a bit of running away to kill.

The cost to build those potions? Zero. Everything I used to make them I either stole or harvested. And it's not like I've spent a significant amount of game time stealing or harvesting, either.

(Actually, it turns out that there are fire daedra in the city, and they are completely immune to potions. So... I had to go off and level up somewhere else. I haven't gone back to finish the mission, yet.)

Maybe this isn't a dominant strategy. Maybe all the strategies are equally game-breaking. But it sure seems pretty hideous.

The only reason I'm really harping on this is because they had the same problem in their last game. Now, honestly! You went through this once already, and you still failed to fix it?

Last Thoughts

Okay, bitching aside, the game actually is fun. The outdoors are beautiful! The dungeons are repetitive, but the cities are unique.

The reason I'm complaining is because the things that would have made this game awesome are so simple! A few extra meshes or skins for interesting clothes. A writer with some romance in his heart. A simple bit of semi-random animation for the heads and faces. A writer who connects the dots, rather than just putting them down.

I guess hindsight is 20/20, but these are all the same things I hated about Morrowind. Am I the only one who notices?

Introduction to Villainy

My special villain power today is the power of run-on sentences much like the ones you'll find below. Sentences that continue for too long, strings of words for which there are no periods inserted into the gaps between them. I am Mojo Jojo!

It struck me that there is a bit of confusion in the forums about the role people want to play in video games. Lately, playing as a villain has been getting more common. Not necessarily playing a villain, but playing your character as if he were one. Killing off the citizenry, for example.

This rise in villainy is mostly because the simulations have finally become advanced enough to give us the freedom to exterminate everything that moves... without the accompanying freedom to build. This is not a fundamental change in the preference of players, just in the capability of the games.

In truth, the only real demand people have for a role in a game is a simple one: something that gives them a taste of a life they do not have. If they are allowed to, they will experiment with every kind of life they find unusual. At least, until they get queasy.

At the moment, I think playing a villain is "in" for two reasons. One: until recently, you weren't given much chance to. So it's a sharp contrast from the usual fare, and therefore more interesting. Two: being evil is always a slippery slope.

In a set of games where you can be good or evil, chances are you'll try each. Maybe not in the same game, but you'll contrast, in your mind, the "prize" for being good and the "prize" for being evil.

Every time you're evil, you're rewarded. With loot, with a sharp reaction from the simulation, with the chance to play a new minigame called "kill the cops". Every time you're good, the game doesn't even notice.

This is largely true to life. Being nice out on the street gets a whole lot less attention than a shooting in the middle of downtown. Obviously, games build off of that. But that means that the interesting short-term thing to do is to be evil. And games can't do the other half of the equation very well.

Let me see if I can explain.

"Evil" is a very relative term. I generally play through a good game twice, and once will be mostly me slaughtering innocents and stealing everything. This is because they are nameless, faceless hordes. As soon as someone starts putting some humanizing features on the faceless hordes, I can't do it any more. Instead, I want to interact positively, build a useful relationship. Suddenly, I expect the simulation to allow me to build, rather than destroy. It never does, unfortunately, which really pisses me off.

For example, in any KoToR game, I can't be evil for two reasons. First, the evil is a twelve-year-old's idiot evil, rather than the more sophisticated kinds of evil I would prefer. Second, I don't trust the villains. If I ally myself with the good guys, I expect they will hold to their side of the bargain and even rescue me if I need rescuing. The evil side? They're as likely to shoot me as pay me, and they certainly won't raise a finger to back me up later.

It turns out that the KoToR games don't think that way, and most of the evil people are as trustworthy as the good people, and nobody ever backs you up. But that's a weakness in their simulation - in real life, it holds true. And that's what I bring to the game.

Similarly, in Oblivion, the people all have faces full of personality. Although I'm not fond of the fact that half their faces look identical and they only have three voice actors, that doesn't keep me from getting upset whenever I accidentally stumble into a bandit camp and are forced to kill people who look unique enough that I would have liked to have talked with them.

In these games, the world is getting deep enough that the simulation can't keep up. There's simply no reward for being good, and a reward every time you are evil. I can't let go of my wish to build rather than destroy, but obviously I'm not in the majority. The majority of players gravitate to where the simulation is deepest.

The simulation is deepest at the "evil" side. For the moment. That means that evil is the play style of choice. For the moment.

At least, that's what I think. Any other opinions?

Thursday, April 06, 2006

An Oversupply of Points of View

What people think of the same data varies dramatically based on the situation they are in. It's a fact of life, and one of the reasons that communication is such an awesome, world-conquering tool. For example:

Here is a post from a smart guy about oversupply.

I didn't reply, because I dislike replying weeks after the original post. But I would like to comment on it.

Simple summary: Supply and demand. Demand is what we normally concentrate on increasing, so that our prices and/or profit can go up. But we usually ignore the other half of that equation: we don't muck with our supply.

For those of you who haven't noticed, all non-Nintendo consoles for a considerable length of time have followed the "less supply leads to higher prices" philosophy. Whether this has worked is questionable, but it's probably more than half due to the difficulty of producing the hardware, rather than trying to increase prices.

In theory, it sort of could work. If people want what you're giving, and there's not enough of it, they'll pay more. The problem is, if people think you're being a dick and trying to drive the price up, they'll mock you and not buy you at all. Like, say, the XBox 360.

Right now, all games have an unlimited supply. Games which use micropayments also have an unlimited supply of the things you micropay for. Either way, it's the demand that drives the game, and you set the price to match it.

The only way I can think of to have a game with a limited supply is to offer "tiers". For example, a massively multiplayer game. Any number of people can play in one of the worlds, but the other worlds are limited to, say, 150 people, invite-only.

SecondLife has supply variation in their land sales. So it's possible. The thing is, it has to be done without alienating the populace. Linden Labs (SecondLife's owners) have had to dance very nimbly to keep people from rioting about the problems with the land limits. This is for something that actually is a hard limit due to hardware restrictions, and it's still difficult to get people to accept it.

Anyhow, it's an interesting topic. Anyone have anything to add?


Err, I hope this doesn't screw anyone up, but I just hopped on to the Feedburner wagon. I was a little sick of not knowing what kind of feed traffic I'm getting.

Of course, unless Feedburner does something magic, Blogger's atom feed is still what all of you are signed up for. In which case, I won't get any useful data anyway.

Well, that's the way it works. Or, rather, fails to work. :)

Edit: So now, of course, Feedburner appears to have crashed. My magic touch at work!

When I get it to work, I hope it doesn't screw any of you up. Heh.

Data-Driven Design

Game architecture. This is a messy post. I'm not thinking clearly today.

One of the more popular design paradigms coming into play these days is "data-driven design". This method of design stresses a simple, robust back end where most of the experience of the game is centered around the content that gets pumped through it.

Maybe it's because I'm a databases guy, or maybe because I've seen too much SecondLife, or maybe just because of the way I run tabletops, I don't actually think this is "the future".

You see, data-driven design has one tremendous drawback: you can't exceed the limitations of your back-end. For example, most of the new 3D chat programs will die off, because their back-end is too limited. It's just about 3D chat, and pretty limited 3D chat. No matter how much user content gets created, the overall capabilities of that content are limited.

Some software tries to get around this by allowing scripting as well as simply "more stuff". This allows the stuff to do a wide variety of things instead of just being aesthetic. SecondLife allows you to create a huge variety of things which few other games would allow their players to create: vending machines, polymorphic vehicles, learning scripts. But these things are still limited by the choices made about the back end itself: the game is unresponsive, the graphics are poor, there are huge limitations as to what you can build in terms of size and complexity... these are limits which cannot be worked around.

It's true, you can keep pulling back from limits. Instead of insisting that everyone run their client, SecondLife could have allowed anyone to make their own client. Instead of insisting on the same player model base, they could have allowed people to make their own. Instead of running it on only their limited local servers, they could have allowed shard instances.

But these excessively robust back ends come with prices of their own: incompatibility and steep learning curves. A newbie signs on with the default client and quickly finds that he can't access three quarters of the content because his client doesn't recognize it - or recognizes it poorly. That incompatibility can be solved, but only by hunting down other clients, installing them, and struggling to get them all to work together.

Sure, it's theoretically possible to make everything always compatible with everything. In which case you get another problem: bloat.

The end result is that "data-driven design" leads to one of three roads: limited variability despite unlimited content, incompatibility, or bloat. Often it leads down all of these roads in various amounts, but if you're doing a one-player game, it's usually primarily limited variability.

There's nothing fundamentally wrong with this. All games have limited variability. In fact, those limits are often what drive the game to be razor-sharp and great, rather than a mushy mash of media.

Still, data-driven is not the only solution. It's very efficient for games of a specific size at the moment, but for games which are small or quite large, it's not very efficient. Too much overhead, or too many limitations.

The most efficient solution, for larger games, is probably algorithmic generation. Instead of being "data-driven", you're exactly the opposite: your algorithms spontaneously generate your data. Depending on what sort of game you're creating, the difficulty here varies from insanely difficult to merely somewhat obnoxious. For example, it's not too incredibly obnoxious for Civilization's worlds, cultures, and NPC gameplay to be "emergent" rather than carefully scripted. That part of the game is algorithmically generated, not "data-driven". On the other hand, the actual tiles of the map (jungle, ruins, etc) are "data-driven", because it's nearly impossible to create an algorithm which can generate as meaningful a set of terrain tiles.

The tiles are data, the placement algorithms are algorithms. Is this data-driven design? How about the AI? It's algorithmic, but it has to know about the usefulness of any given tile. That's pretty clearly algorithmic, with very little in the way of being data-driven. The tech tree? Entirely data-driven.

See, it all depends on the depth your creation needs to contain. Few people complain too much that the AI in civilization doesn't act like real countries do. Aside from the fact that real countries have more than ten cities, nobody expects a game to model such a level of political complexity. So a simple model can create algorithmically generated gameplay, instead of having to carefully script each instant of every level. You don't need data on the level: just plug the countries in and let them chug. No data. Just algorithms.

But a quick jaunt over to the world of voice acting shows just the opposite: it's nearly impossible to algorithmically generate good voice acting. Even the best voice programs might sound realistic, but none of them can put as much emotional power in their voice as a good voice actor. At least, not without having every instant carefully controlled, in which case it would be easier to get a voice actor. This is an example of content that had damn well better be data-driven. No algorithms. Just data.

So, no, I don't think "data-driven" is the wave of the future. In fact, I think it's the wave of the past: I think algorithmic generation is becoming more powerful every year. The days of scripting a level are nearly done. In ten years, we'll just say what things should be in the level, and then our algorithms will build it for us.

"Data-driven" design is very useful in many situations. But I don't consider those situations to be universal. Or anywhere near it.

Monday, April 03, 2006


I sometimes like to trawl the world of on-line games to see what's going on. So, I've spent about two hours kicking IMVU into working. It allows for developer content and real money, so I figured, hey, I'll look into it.

I'm not sure I like it.

As far as I can tell, their business has to be built around two types of customers: the short-term "this is so cool! Okay, now I'm bored" teenager and the "ooh, on-line sex!" customer. Because nearly all of the the first type and most of the second type will only play for a month or two, there don't appear to be any reoccurring fees. Just initial fees. And, of course, the ability to buy money. Which, presumably, only a tiny percentage of people do after their second month.

Personally, I prefer a business model which caters to long-term players rather than short-term players, but IMVU is only a pretty chat and a cluttered web page. It would be difficult to keep players more than a month or two. That's the tradeoff: save millions on not having to build a virtual world, but lose customers who would have been addicted to it. Maybe I'm wrong: maybe IMVU is a long-term addictive thing. I just don't see how.

For what it is, it seems quite good. Except a few itsy-bitsy little details.

Being a developer. Actually getting "clearance" to develop costs you $8. That's a bad initial bump. Once you've gotten clearance, you'll actually be able to develop. The developer tool is not polite. I'm not sure why everything else in IMVU is interconnected, but the dev tool isn't. To use the dev tool, you need product ID codes and a rather sizeable outlay of virtual cash to acquire some baseline products. This is on top of the fact that it uses 3DStudio Max and requires you to actually do 3D modeling if you want to do any 3D stuff, instead of a nice simple-initally-plus-optional-Max.

Yikes! The learning curve is just a touch steep for high school students, I would think. Maybe that's the idea: to limit the high school students to creating stickers and therefore allowing the advanced developers to rule the rest of the market. If that was their intention, however, a quick cruise through their catalog shows it failed. Instead, they get about the same ratio as what I've come to consider "normal".

One thing they did which I find interesting is that they put a $20 price tag on buying into the adult world. I can understand their theory. Again, my preference is for a minimal initial hurdle, to lure in the maximum number of players. A large initial hurdle seems to imply that your content isn't really worth anything, since if it was, you'd be raking it in on micropayments and wouldn't have to charge an initial fee. And, no, you can't see the adult content before you buy the adult pass. Hence the feeling that they're trying to cheat you. This is especially silly since people who are interested in that sort of thing are also often willing to pay a mint once they get there.

Another interesting thing is that there's a $20 option to "try it" - this lets you try on all the things in the catalog without actually buying them. At least, for a bit. This is another thing I would have thought would be default. It's just another hurdle towards buying something.

I can understand their idea. It's a combination of raking in the flat fees, teens not usually being able to micropay, and a fast turnover. But the whole thing rubs me the wrong way, and I think it's not as friendly or efficient as it should be.

I think I would have it some other way. Maybe half of any purchase price gets sunk from the game, and the other half gets passed on to the seller. This would produce a constant demand for more cash which, of course, should only be obtainable, at its root, from us. There can be resellers, but they don't have the ability to manufacture cash. There are no other sources.

I would have to do the math to figure out exactly what the percentage is, but the basic idea with this kind of micropay/buy fake money setup is to make money off your money. That is powered by letting people go where they want, build what they want, and do what they want - but only charging for the latter.

Well, has anyone else tried this thing? Any other comments?

Sunday, April 02, 2006

How serious!

Right, enough long essays.

Money is what you make it!

... where you make it.

There are lots of different kinds of money. For example, we have the US dollar, the Canadian dollar, the ruble, the zlotny, and so on and so forth.

More than that, there are kinds of money not usually categorized as "money-money". Stocks. Bonds. Gold. Land. These things have a definite value and can usually be converted over into something anyone will happily accept... although the time to convert may be considerably longer than if you're using "money-money". (Okay, technically, there's other words for this kind of thing. But it's close enough for a blog post.)

Then we have the tenuous moneys. The standing example here would be virtual world currencies. This is just like the previous examples, although most of the world might not yet agree. Just remember: ten million Lindens can buy you a car in real life. That's close enough for me.

All money - virtual, real, or standard - is valued based on what people think it's going to be worth in the future. How far in the future depends on the timescale the person is looking at. Lots of people buy up undervalued stocks and land, hoping that it will become extremely valuable in a decade or so.

Now, back to virtual worlds: what is the long-term (or even moderately short term, say two years) stability of these moneys?

Nada. The stability doesn't exist. The problem is that games are run by small groups of idiots. Real economies are run by huge groups of idiots - hundreds of thousands or even millions of significant customers. Their personal idiocies are ironed out and the basic laws of money keep the economy stable. Ish. More stable than a game's economy.

A game economy is run by a small group of idiots, rather than a large group of idiots. Not only are there rarely more than ten thousand significant consumers, those consumers are continually trumped by a very tiny group of idiots - usually three or four - and their ill-thought out ideas as to how to break the laws of money.

The end result is almost always staggering inflation. Sometimes, it's staggering deflation. Just about the best virtual world for stable money appears to be SecondLife, but it is entering a glorious inflationary spiral because of - guess why? One guess. Okay: the small group of idiots breaking the laws of money.

Did you guess right?

Now, I've actually met several of the Linden Labs people. Some of them are staggeringly brilliant. Some of them aren't. Presumably, the staggeringly brilliant ones are not, in fact, being listened to. But everyone is an idiot, sometimes, and with so little error correction, even one idiotic lapse can spell disaster. Linden Labs has had three big ones that I can see. I won't go into them unless people are interested.

This is the stable money on the market!

You're talking about your virtual world economies? You want to think your world's cash is "real cash"? You've got to prove it: survive!

In this world, MMORPGs come and go. Even if they don't die (I don't think UO is dead, yet) they grow and wane in popularity. Their economies bloat and deform under the pressure of thousands or thousands of thousands of players. They get cancers and diseases from poorly thought out expansion packs and band-aid patches.

What's the answer?

Well, I suppose you could design your game with a perfect economy in mind. Of course, to do that you would have to allow unlimited player content and let players distribute their own cash. Plus, your world would still get old and die, someday.

The other thing you could do is use a pan-world economy.

For example, if an economic juggernaut from one game (say, Anshe Chung of SecondLife) decides to distribute her own cash. But distributing it solely in SecondLife makes a slave to SecondLife's life cycle. Which, at present, appears to be a rather poor decision.

But what if your "Pan-Universal Credits" were seperate from SecondLife and linked to other games? You can exchange them not just for SecondLife capital, but for money in Eve Online, or any of the hundreds of "3D chat rooms" popping up all over? Buy them with game money in one game, redeem them for game money in another game. Or real money. Whatever.

All you need is a significant amount of cash in the game you're going into. Then, you can distribute your PUCs. Anyone who has them can use them to buy cash in any game you keep a bank in. Sure, there might be a run on the bank and you end up unable to give out cash on that game for a while. But, honestly, that's a threat regardless of how you do your banking.

Plus, you can minimize it: have a standing offer. "Bored? Leaving this game? Don't let your time be wasted: transfer us your cash in exchange for Pan-Universal Credits - almost certainly good in the game you're going to be in next!" The local (this-game) value of your PUC can be directly related to how many people are willing to give you cash for PUC.

Some people are probably thinking, "why not just pop it into real money?"

Well, first off, real money is trackable. If you're doing significant business, it's of interest not only to the people running the game, but also to people like the IRS. PUCs are not "money", and the vast majority of games which outlaw outside sales don't word it to prevent these kinds of "barter trade".

Second, having a powerful nexus of game money allows...

Let me see if I can explain it.

Right now, games are like ten thousand water hoses, spraying at various speeds. Their spray just kinds of sloshes around, soaking into the ground as people change games. Having a network of capital built specifically for games keeps this water from hitting the ground. Instead, it is channeled into another, larger hose. This hose has a hell of a lot of water in it, and an astonishing amount of water pressure. Some of that pressure feeds the tops of the hoses spraying down: a symbiotic relationship. However, that water can be used for other purposes. That's pure capital.

What would you use that capital for? How about designing "the perfect MMO" - Funded by the MMOs which are currently popular? How about splashing it back and forth a bit to get the attention of venture capitalists and the media? How about just the fact that it could prove the viability of virtual money - paving the way into a bright new future?

All that aside from the fact that it's busily making you rich.

Of course, the math you'd need to keep your affairs in order would be astonishing. And games would adapt their rules to ban your money. But those are initial problems: after two or four years, they'll go away and you'll be riding high.

Riding high on money.

(I'm thinking of the math right now. Man, that would be fun.)

Anyhow, this is the sort of thing I think about when I'm trying to design games. :D

As always, comments are welcome.