Sunday, August 31, 2008

The Joys of Politics

As you might have guessed, I've got a lot of opinions on just about everything. But probably my weirdest opinions are reserved for politics. So I was curious about this post on Skepchick, which essentially asks why diehard skeptics can have so many different political views.

I'd comment there, but I would have to register, so no dice. I'll comment here. Plus, it means I don't have to worry about length.

It is odd. If you gather us together and ask our opinion on, say, global warming, we'll come back with responses that agree 99%, and are only a little different about exactly what the results will be/what we should do about it. If we are asked, as a group, what we think about equality, or space travel, or any number of other things, we'll almost always be in almost full agreement.

But if you get us all together to talk about gun control, or universal health care, or just flat-out "which party is best", we're extremely diverse. We're more diverse than any other group I can think of. There are green party skeptics. Ngah?

I think it boils down to what a skeptic is. A skeptic is someone who, in theory, weights proof above their own opinions. If there's a group of us chatting, and one of us brings up an interesting fact that weakens another's position, there's a serious moment of thinking. More often than not, the other guy will say, "Hm, I'll have to think about that," or, even more likely, "I'll have to look into that some more".

Facts are pretty easy to come by on things like equality. There is such a strong correlation between equality and general economic progress that it's almost impossible to deny that the two are connected. There's a strong correlation between nations with good science education and nations that don't suck. You can argue that correlation does not imply causation all you want, but the truth is that, in the absence of absolute proof, correlation is much better than just making up whatever you feel comfortable with.

When we get to politics, the facts are a lot blurrier.

We're going to talk gun control. Are you for or against gun control?

If you chose something, you're wrong. There's no really good evidence of correlation between gun control and violent crime. There's a lot of mediocre evidence in both directions, but all that's clear is that gun control is probably the least important factor, far behind things like freedom of speech or police to population ratios. Anecdotes are common on both sides, but usually they are misaddressed - guns are blamed or lauded even though the real issue was something else, such as poverty or cocaine or being-an-idiot.

Arguing whether gun control is good or bad is like arguing whether we should paint our space hotel gold or green. There's no real reason to choose in either way, and it's not like it matters much. In general, I'm against gun control because it's spending money for no particular gain - the same way I would be in favor of painting the space hotel gold if green paint was ten thousand times more expensive.

There are things that do matter, like universal health care. How can a skeptic believe that universal health care is (the opposite of your opinion)?

Well, again, the facts are very fuzzy. While we like to believe that universal health care is good, there is evidence that it slows medical research and provides a lower overall quality of care per dollar. There is evidence that the evidence I just mentioned is bullcrap. It's very fuzzy because it's difficult to analyze such a foggy situation with so many variables, especially when most of the people doing the analyzing are on a biased payroll.

So we tend to err in the direction of our gut. We like freedom, so we argue that gun control is bad. We like safety, so we argue that gun control is good.

Arguing from the gut is the same thing that nonskeptics do. It's not something we should be doing!

I don't know if universal healthcare is good or bad in the general sense. I do know that if Massachusetts provided universal healthcare, it would suck sucky suck suck sucky sucky suck suck. So, I'm against MA-provided universal health care, because the MA government is a stack of pandering imbeciles fifty meters deep.

I know this because the evidence on MA-provided government services is not fuzzy. Thus far, I haven't seen many MA-funded projects that've done any lasting good, and the vast majority of them have wasted millions (or billions) of dollars for no reason other than to secure some votes and skim a few hundred thousand (or tens of millions) off the top.

In this manner, I blatantly dodge the question. "Do you believe universal health care is good?" Well, no, because in MA, universal anything will drive itself into the ground and explode. But... in a mythical government that doesn't screw things up quite so bad?

Then I have to start addressing the lack of clear data. I have to say, if I'm an honest skeptic, "I don't know."

If a skeptic has a strong opinion that isn't backed up by equally strong data, they're not being a skeptic. So the answer to the original question is that skeptics disagree on things they can't prove. Basically, when we're forced to think like the rest of the world, we don't do any better than they do at figuring out what's best.

Saturday, August 30, 2008

Flying Cars!

I've been thinking about world design, especially scifi world design.

Most scifi worlds seem to include flying cars. It's becoming steadily less popular, being slowly replaced with the idea of merely "hovering" cars that are just like normal cars except without wheels.

I was thinking about why flying cars never came to fruition. You can argue technology, but I think that even if we have enough technology to create them easily, we still won't see them, except on worlds where gravity is below 0.3: it would be difficult to get enough ground traction to move your mass at that point.

Anyway, I think the reason we don't see flying cars (or flying anything) is because of how we build our cities. As humans, we tend to centralize. Because of this, it's pretty easy to build roads from centralized point A (your suburb) to centralized point B (downtown offices). And it's clear that it's actually easier - more efficient, more effective, and more psychologically acceptable - to improve the roads rather than the vehicles we drive.

I can see a world where flying cars are a necessity, but it would have to be a world where the places of interest aren't connected by roads. Basically, a world of hermits.

In my mind, world building is perhaps primarily about movement. How people move from place to place, how information moves from place to place. By changing how often and how rapidly people/information moves, you can radically change the feel of a world.

In a world with flying cars, most people would probably not travel very much. If they did, they would travel to be nearer each other. Flying over to visit your friend would be a weekly thing, and you'd probably produce all your food in-house. Now, there are two fun things you can do to this world.

One would be to make information flow very easily. Although everyone is separated in distance, wireless communication is extremely easy, and everyone is pretty much always talking to each other over some extremely high bandwidth VR system. In essence, although they don't physically travel, they cohabitate as they want. They may even use robot proxies. It's a very social, very connected world, minus the actually being near each other bit.

That kind of world would have a very different feel from one where some technobabble keeps wireless to a minimum. In such a situation, communication would be very difficult, perhaps even restricted to people physically driving their flying cars around. There would have to be some reason why everyone doesn't just move next to each other, but assuming there is, this kind of world would lend itself to a more exploratory game, trying to find another hermit's dwelling, trying to figure out what's going on with only a trickle of information...

This kind of thinking also works in fantasy settings. For example, signal towers are a great way to rapidly send messages from place to place: a nation with signal towers will be much more organized and collected than one that uses riders. You can put in fun details: the signals can only clearly be seen at night, so they don't operate during the day. In turn, this means that any time anyone wants to do something particularly dastardly, they do it at dawn, so they have a maximum amount of time to run before the signal towers report their crime...

Dragons are another example. Usually, dragons are used as combat mounts, as if they were helicopters. But that doesn't make much sense: economically, you can make a fortune hauling highly perishable goods to the wealthy. Mail, spices, ice, exotic fruit, vacationers... assuming your world has enough wealth to feed the dragons off profits, you could do very well at that sort of thing. But no matter how fast they are, dragons are slower than light, so it doesn't make much sense that they would be the communication medium if your culture has thought of signal towers.

To me, these kinds of details are what make the world tangible. If you have a fantasy setting, we're already bored of it and we haven't even seen it yet. On the other hand, if your next scene is a tremendous dragon landing in central plaza, watched by a horde of eager peasants, we're suddenly interested. A cry of "mail's here!" would make your world particularly fresh and unusual.

The reason I focus on travel and communication as my favorite aspects are because I've gotten in the habit of designing game systems around the idea that the players will primarily want to travel and communicate (usually with each other). It's naturally wandered into my thinking about world design.

What kind of thing do you think of to keep your settings feeling fresh?

Thursday, August 28, 2008

Highku

One of the things about haiku that's usually overlooked is that they're really a form of nature poetry: they're supposed to refer to elements of nature.

Well, I've invented a new kind of poetry called "highku". It's exactly the same as haiku, except that instead of referring to the world around us, it refers to a new and alien world. It's basically the inverse of a haiku. A haiku makes us appreciate the world around us. A highku makes us feel terrible that we're not off gallivanting around the universe.

Here are some examples:

Martian seas
The fish fly beneath
The domed sky

Glittering
Ships line up in rows
Vanishing

Horrible!
Teeth, claws, eggs... eggs? Shit
it's a queen


So, waste your work day: what kind of highku can you write? Let's see 'em!

Wednesday, August 27, 2008

Even more on social NPCs!

My brain won't stop...

I was thinking about what I posted yesterday, and I decided to think in the exact opposite direction. Think about this: fun gameplay doesn't necessarily come from complex enemies.

In a game, any enemy - even a boss - is actually pretty straightforward. But they are only a part of the whole situation. In addition to the boss, there is the terrain, what resources the player has, how exacting the skill challenge is (which has nothing to do with the boss himself). Sometimes, these get really blurry. In Shadow of the Colossus, the enemies are also the terrain and a big chunk of the exact skill challenge.

But the idea holds: in most games, the interesting fight is not necessarily against an interesting enemy. A lot of the time, really interesting things can be based on really simple, almost boring components.

Along the same lines, if we're thinking about a game where socializing with NPCs is a major factor, maybe we shouldn't be thinking about how to make the NPCs more interesting and deep. Instead, maybe we should be thinking about the other factors that can make the relationship system interesting to play.

There's always the idea of totally abstracting it out. Turn it into a match-3 puzzle, or a driving game, or something else that has absolutely nothing to do with socializing. That works to an extent, but you're still looking at rewards for playing. In essence, you've made the relationship complicated to use, but it's still a very simple relationship: do X to get Y reward.

I'm trying to avoid that. I'm trying to make it so that there's a point to the socializing itself, in the same way that shooting things in an FPS is the point of the game. You don't shoot things because you get a better gun later. You shoot things, and sometimes you get a better gun. The shooting is the fun part, the rewards are just to add additional spice.

The same is true of every kind of game. The fighting and leveling in an RPG is usually fun on its own, without any of the "do X get Y" rewards such as advancing plot, new characters, or weird new equipment.

The basic loop I'm talking about is the test - accumulate - test - accumulate loop. Just shooting bad guys is only interesting because of the way your experience as a player accumulates, the way your health slowly degenerates, and so forth. When you run across the fiftieth fight, you really appreciate the cleverness of the game designer, who has made this fight still feel new and interesting, building off of everything you've learned and done. Nearly every game works the same way.

But relationship gameplay doesn't. Every relationship game I've ever played is test - test - test - test - lump reward. There's no accumulation of value. It's just a series of win/lose challenges with some kind of stupid reward at the end, like playing Chutes and Ladders. That reward may help with another kind of game play, but it never has any effect on the continued relationship games. It's just... test-test-test-test-test-test-interrupt-test-test-test...

What would be interesting is to make socializing a... tactically complete part of your breakfast. While the characters themselves can remain fairly uninteresting - no need for advanced AI or topical drama engines - the situation should be such that it is interesting to play, and there is accumulation after each bit.

You could still use completely abstract gameplay - in fact, it would probably be easier. So let's go with an old-fashioned deck of cards. Each character has their own deck of cards... but the decks are not even. This is because of how the game is played. Everyone starts with a full deck...

To begin socializing, you draw five cards off your shuffled deck. Both players pick a card from their hand and reveal simultaneously... this first card is the wager. At the end of the fight, you will get your wager back. It is all you are guaranteed to get back. To win the conflict, you need to win the number of hands as the value of your wager card. If you wager a 2, you need to win 2 hands. If you wager a king, you need to win 13 hands.

The person with the lower wager puts down a card, face up. His opponent then puts down a valid card on top of it, face up. Your hand should always be four: draw when you play. If you're out of cards, you'll have to make do without drawing.

The hand is considered "won" when the other player cannot play a valid card (or refuses to play). Valid cards follow this rule:

You can play a card one higher of any suit. So you can play a 9H on a 8D. Aces can be played on kings. You may not play 2s on aces: this isn't circular.

You can play any card of a dominant suit. Suites are D->H->S->C->D. So that 8D could have a 3C played on it, but not a 3D or a 3H.

You may play an ace of a dominant suit, which automatically wins the hand. So that 8D could have an AC played on it, and you would flat-out win.

Lastly, you may play a joker, in which case you automatically lose the hand. However, it changes what happens, as I'll explain in a moment.

The loser gives his four cards to the winner, who has to shuffle them into his deck (he may see them). The loser then picks the top card and three cards of his choice from the stack. (If there aren't four cards in the stack, he takes them all and draws from his deck to four.) The remaining cards are put to the side - they have become "the pot".

If you lost by joker, you still give your four over, but instead of taking from the stack, you take your enemy's four, and the whole stack goes to the pot.

Once someone wins their requisite number of hands, they get the pot and add it to their deck. Deck maximum size is 60, so if they are over the limit, they must give cards to the loser to get themselves down to 60. They may give any cards they choose.

If both players run out of cards, the pot is split between them randomly and everyone walks away. (If one player runs out of cards, he can expect to lose a lot of hands!)

This card game has very strange dynamics, because this isn't a card game that ends and restarts, like Poker. Instead, the cards themselves are long-term cash.

While winning the pot is extremely valuable, strategically losing hands is also valuable. You can foist the crap in your hand off on an enemy while claiming four really great cards from the stack. There is an element of luck, but there is also a lot of skill involved, especially in your initial bid. If you bid a king, you'll need to win 13 hands, basically an impossible number unless you can run your enemy dry and force him to lose hand after hand...

Lastly, when the game is over and you are deciding which cards to give back to get yourself down to a deck size of 60, bargaining is perfectly acceptable, and is where most of the real-world social side effects happen. If you run someone dry, it's perfectly possible for you to give them 48 cards of total suck, basically dooming them forever. They're usually quite willing to do something for you in order to get a more reasonable deck from you. Also, cards can be traded at will outside the game, so there is often bargaining in general.

This is a very confrontational setup. While people can form teams, most of the "socialization" is zero sum.

What kind of setup would you use for a less unfriendly socialization system?

Tuesday, August 26, 2008

Natural Language Barrier

This is going to get ugly...

I was thinking about social AI. Social characters that can comment on things in meaningful ways without being carefully scripted. Let me take you on a tour of my thought processes.

Okay, pretend you're Batman. What is your opinion of... bank robbers?

...

If you bothered to stop and answer the question, you probably came up with something like "I hate 'em. I'm gonna catch 'em and lock 'em up!"

Now, pretend you're Mario. What is your opinion of... bank robbers?

...

A little fuzzier? They're... bad people... not quite as crisp an opinion as Batman has.

Now, pretend you're frogger. What is your opinion of... bank robbers?

...

Frogger doesn't have an opinion of bank robbers. Frogger has opinions about trucks and logs and jumping from lily pad to lily pad. The only possible opinion he could have about bank robbers is that he doesn't like them because they drive too fast.

The pong paddle doesn't even have opinions on that level of cultural depth. The pong paddle's opinions will be so simplistic as to not even really count as opinions.



Well, obviously, frogger and Mario and Batman don't actually have opinions. They aren't capable of judging things for themselves: they don't have any kind of algorithm to let them. But we can imagine what they would think if they did, and the basic idea holds up.

You can only have opinions on things that you know about.

For most characters, the things they can conceivably learn about on their own are extremely limited: they can hate goblins, maybe, or have an opinion on a sword or whether a girl is pretty. In the case of a chatbot, it would be even more severely limited, because they don't even have a world to fall back on.

Even young players bring in an expectation of depth. Even if we're interacting with Bugs Bunny, we're expecting Bugs to have a life. A history, a future beyond this two-minute sequence with Elmer Fudd. We expect him to have a life, with all the complexities, changes, judgments, and opinions that entails. That's what makes him worth knowing.

So, if you try to build a social AI such as a chatbot or an RPG NPC, one of the things people will routinely do is to try to program those in. This character... doesn't like bank robbers. Okay. Now, if the question comes up, the character will say, "I hate bank robbers!"

...

"Why?"

Oops. No answer. We broke it.

Adding information in this way is the shallowest, most brittle method of adding information. The illusion of depth we gain is painfully bad. It only works when we carefully restrict the player's topics of conversation. Everyone's familiar with this: you can't ask why unless the programmer has added that option to the menu. Otherwise, you're stuck with asking about, say, goblins. Or where the magic sword is.

Chatbots tend to be extremely clumsy because this brittleness is faced head on, along with the natural clumsiness of trying to interpret player input, which has the same basic issues. Fundamentally, we square the brittleness.

I don't think this is a very good way to do things. We seem to be climbing the steep side of the mountain. Every inch costs us another hour of painful scrabbling.

Is there a way around?

...

Okay, the problem, at it's core, is that you can only have an opinion on things you know about. And the world we build is pretty limited: we only include the things we want the player to be able to interact with. This means that our NPCs will never experience building a house, getting married, dying, electing a new president, learning a secret... not unless we specifically script them in, creating a very fragile, shallow experience. They can have opinions on how to fight orcs, what's the best way to level up, and so forth... but those opinions aren't terribly interesting...

The solution would seem to be to get our NPCs to experience many things that are outside the scope of the game. If we want them to have actual opinions, we have to give them the experiences. Then they will be able to comment on them in depth.

However, creating a world where all of these experiences are algorithmically emergent would be... well, I'm not sure there's a word for it. "So close to impossible you might as well spend your time looking for wild polar bears in Florida."

The world is an extremely complex place, and the computation required to simulate something even 1/100,000,000 as complex is prohibitive.

The only real option is to glean experiences from the real world somehow.

How about we use a handy-dandy filter? One that's very common?

How about we use you?

What if we built a chatbot that learns what things are via stories? This isn't a chatbot that asks you how you are, or tells you that it's a chatbot. This is a chatbot that listens to you tell stories... and maybe tells stories back.

Humans tell stories to children all the time. Not simply for entertainment, but to teach. "Don't touch that, it'll burn you!" is a story. "Your face will stick like that!" is a story. So is Sleeping Beauty.

The chatbot has to come pre-equipped with a lot of basic tools for learning and interpreting. In order to be deep enough, the chatbot has to have an "experience" fairly similar to a human. That means that the chatbot has to be able to learn things like "thunder is loud", "lemons are sour", and "he felt sad".

Let's take a look at how it might work.

YOU: "There was a little boy..."
CB: (There: preprogrammed element to assign focus)
(Was: past tense be [complexity hidden])
(a little boy: unknown element: LITTLE BOY)
(LITTLE BOY is noun...)
CB: "Tell me about the little boy!"

YOU: "He was fast and clever."
CB: (He: re/little boy, now defined as MALE)
(Was: past tense be [complexity hidden])
(fast and clever)
(fast: basic adjective, preprogrammed)
(clever: unknown adjective)
CB: "Tell me how he was clever!"

YOU: "Well, he once outsmarted the goblin king..."
CB: (Well: response fluff [complexity hidden])
(he: re/little boy)
(once: time marker, preprogrammed)
(outsmarted: unknown verb)
(the goblin king: unknown element: GOBLIN KING)
(Plan to say: "tell me how he outsmarted the goblin king!")
(Compare to original, apply modifier only)
CB: "How?"

etc, etc.

There is a lot of hand-waving here, obviously. We're presuming a pretty advanced parser with a strong understanding of basic linguistics combined with a strong ability to link things to a human-like experience.

To give you an example of the complexity, let's look back on our Batman/Bank Robber example in a new light.

"I hate 'em. I'm gonna catch 'em and lock 'em up!" is what I said. But Batman would be more likely to say something like, "If you rob a bank, I'll make sure you end up rotting in prison."

These both say "the same thing", because we're used to thinking about the "logical content" of a phrase. To a programmer, used to computers, that's all that matters.

But in truth, there is a world of complexity between the two sayings. Let me show you.

"I hate 'em" is a value judgment that isn't even brought up in the second one. Even though we specifically ask what Batman thinks of bank robbers, the more canon Batman doesn't say "I think X".

This is because canon Batman tries to keep his emotions out of it. To him, it hardly matters whether he personally likes or hates bank robbers. They are objectively criminals, so his opinion is pointless.

This is a subtle point, and it's easy to wave it away as projection or overanalysis. Except that these subtle differences are the meat. The logical content of the phrases is almost unimportant - our valuation is what matters. In this case, off-the-cuff Batman is saying "I think bank robbers are bad" and canon Batman is saying "bank robbers are bad" by simply taking it for granted that his opinion isn't even worth mentioning.

There are other subtleties. Here's another: canon Batman says "If you rob a bank, I...", while off-the-cuff Batman jumps straight into the "I..."

Canon Batman once again shows a different mindset. We asked what he thinks about bank robbers. He redirects the question to be about bank robbery. He's not talking about the people that rob banks. He's talking about the act of robbing a bank, which happens to be attached to a person.

Again, he's not judging the person, he's judging the activity. He's basically saying "Robbing banks is bad", as opposed to off-the-cuff Batman, who's saying "Bank robbers are bad". They're very different values.

These complexities add up pretty quickly. If out little chatbox later decides to tell a story about bank robbery, which way he was taught will matter. If he learned from canon-Batman, he can tell a story about everyday people who get caught up in the need to rob a bank, and suffer the consequences. If he learned from cuff-Batman, he'll probably tell a story about ne'er-do-wells who rob banks and are generally bad people. (Of course, by the time he can tell a story about bank robbery, he'll have to have heard a few stories about bank robbery. At this point, he doesn't even know what "robbery" means...)

"That level of complexity is impossible!"

Hmmm...

What you really need is a carefully chosen fuzzy semantics system, and then you build it step by step by step, naturally.

In order to comprehend the story, you need to understand a huge amount of basic experiences that humans learn in their infancy. Things like: time moves forward. Stuff doesn't just vanish. Some things smell bad. Big people are usually stronger. People like being happy.

These same bits of understanding should be able to form the basics of the semantics system, as well.

How would you store "bank robbers are bad" as opposed to "robbing banks is bad"? Well, the first is a person who, in their past, robbed a bank. The second is the act of robbing a bank. They're fundamentally very different, and the first one contains the second. It's not usually so simple.

Here's a really subtle example to chew on:

"The baby grew up clever and strong" as opposed to
"The baby grew up to be clever and strong"

What a tiny difference. Surely there's no difference?

Actually, there's a huge difference.

In the second case, the act of "growing up" has a purpose: to be clever and strong. In the first case, the act of "growing up" just happens, and the baby is clever and strong while growing up.

The difference is the distance between "the Goonies" and "Stand by Me". The Goonies is about a bunch of kids who run around being kids. They all have their personalities and shticks, and there is some growing up, but by and large it's about kids being kids. The movie ends with them still being kids, and the whole point was actually to maintain the status quo.

Stand by Me is about kids going out and growing up. They have personalities and an adventure, but the whole point is to grow up. Their childhood is a transitional phase. It's the point of the whole thing.

That's the difference adding two little words makes, when you are thinking in terms of stories!

How would you represent this in your semantic web?

Whoa-oh, now you're getting into a messy situation!

Classically, we'd build our semantic web with some kind of connective system. "Grew up clever and strong" would link "grew up" to "clever" and "strong" directly. "Grew up to be clever and strong" would have the same links, but with some kind of qualifier. "Purpose" links, perhaps.

The problem with this method is that it's more or less one-way. We're not looking for a book report: we don't care that the kid grew up clever and strong. We just care that kids grow up, and whether they grow up with attributes or for attributes.

So I've started to compile a list of... I don't have a word, really. We'll call them cogshazams. Cogshazams are mental pigeonholes (or, perhaps, pidginholes, ar-har) that concepts can fill. They are the basic mental responses someone can have.

One example is "security". A concept might be about security - giving more security or taking security away. Getting married is usually slotted strongly into the security cogshazam. Having a kid is generally full of insecurity - it's a big responsibility that changes your life - but being a kid is generally pretty secure.

Another example might be "competition". The cold war was anti security, pro competition.

The idea is that our little listener will build a semantic net based mostly on these kinds of judgments rather than building a really complicated semantic net.

In the case of growing up: if growing up is for the purpose of ending up an adult (IE, growing up to be clever and strong) then we can label "growing up" as "destiny" cogshazam. When we think about it in the future, we'll keep in mind that people who are growing up are marching towards their destiny.

If growing up is just something you do, and you can be all clever and strong while you do it, then we would use "building" cogshazam. We would keep in mind that someone who is growing up is improving, growing... but are who they are, not necessarily marching towards being some specific "final form".

"Growing up" can have a lot of other labels attached to it, depending on the stories you tell. Friendship is a common one, as is security, but anti-control...

Anyway, once we've labeled "growing up" as building or destiny, we might later wish to reconstitute that knowledge. How would you do that?

Well, if you wanted to talk about someone growing up, you would call it up. You would see it has, say, destiny attached to it. You would find something else you like that fills the proper linguistic slot and has destiny attached to it. You would combine them. To simplify grossly.

So you might say, "When he grew up, he conquered the world!"

There is still quite a lot of handwaving... for example, we'd need to keep track of amounts. Something that is only a little bit destined should probably not be so strongly combined with something that is strongly destined. For example, "He was born on a dark and stormy night, so he grew up to conquer the world!" is a little awkward...

Also, this doesn't cover things like twists, and I'm flat-out leaving out the parsing part...

But I think this is plenty long as it is.

If you get this far, you have a lot of time on your hands. Might as well leave an insightful comment.

Thursday, August 21, 2008

Thought Exercise

Here's an interesting thought exercise:

Imagine a game where reproduction is the gimmick. I don't mean human reproduction: I mean things making things.

The gimmick isn't to be used as a backdrop: it's to be used as the primary game mechanic. The point is that the player's primary action is to change the nature of the thing that reproduces. Sort of like "battlebots", I guess, except that it's about making more bots rather than killing things.

There are a lot of more advanced ideas - resource management on a "racial" level. Cooperative, symbiotic, and parasitic activities. Changing environments. Etc. But they must all be managed through tweaking the "machinery" of the reproduction.

The difficulties in this thought exercise are twofold: How do you make it fun, and how do you make it at all?

What kind of system would you build to allow a player to create reproducing things? And make it accessible?

How would you do it?

Thursday, August 14, 2008

New, Illegal, or Pointless

This is a pointless futurist post/rant...

I keep getting hung up on the fact that, every day, I break laws. I can't really ignore the fact that nearly all Americans between 14 and 34, especially the smart ones, are felons and commit, on average, more than one crime a day.

This is not because we're immoral, it's because we've been shaped by a technology the old farts don't understand. Hell, even we don't understand where it's going, and we grew up with it. All we know is that it's not going where they think it's going. Or where they want it to go. It's gutted the old ways. They just haven't quite fallen over dead, yet.

I'm not advocating anarchy. I'm advocating something new. The old idea of anarchy is just as obsolete as the old ideas I'd like to replace. We need something new.

The idea of copyright. Love the intent (well, the stated intent), but it doesn't work any more and gets more confused every year. Need something new, now.

The idea of possession. What's ours? Is our computer ours? Then how come MS and other companies with internet-capable software are allowed to communicate to and from it without explicit permission? How come it can be seized - without warrant, without reason - and held indefinitely "for analysis"? Are our avatars ours? Our virtual gold? Our website, even though it's hosted elsewhere? Our computation cycles? The very idea of what "ours" means has to change, but I have no idea how. We need something new.

And what's up with this idea of a "EULA"? A screwed up attempt to cram old laws into a new situation. Need something new...

Data on the internet. Eternal records of who we were? I keep wanting to go back and delete the first three years of this blog. I still get comments on that shit, and I just want to officially say, "Hey, the guy who made that post DOESN'T EXIST ANYMORE. You can, if you like, talk to ME instead." Need some way to deal with that...

It's easier to talk to ten thousand strangers on YouTube than call your mom, and definitely easier to post random blog entries than spend time with people. Need something to deal with that...

It's easier to learn by doing, by interacting, and now we can do that. Sitting in a giant auditorium, loading up on crippling debt to listen to someone teaching outdated knowledge in an outdated fashion? Yeah, we need something new...

Hell, even our nationality. I feel more kinship with a Star Trek geek from Kenya than with most of the people in Boston. If I were given the option, I would not contribute to most of my government's wastes... and I don't really see any reason other than inertia why a government can't be revamped to take advantage of instant, open communications. I don't really see any reasons, other than inertia, that we can't have "second-order" governments that're independent of place and instead focuses on goals and values that actually matter. Government 2.0.

Government 1.0 is just for providing physical protection (police, fire dept, and environmental protection), roads, and baseline medical care. Since it's tied to land and population, those should be the only thing it taxes... let's chop everything else off and make it government 2.0. And let me NOT SIGN UP.

"How naive!" Well, where else are we heading? In twenty years, I'll be able to develop my own breed of tomato that lives on the walls of my house and is plaid. I won't be able to sell them, though. Selling them would either be illegal or totally pointless.

In twenty years, the now-cool idea of "paper displays" will be obsolete because we'll have replaced them with virtual displays that don't even actually exist, and are imaged into space by a projector, probably one pointed at our eye. They'll probably have to be made on home fabricators, though, because someone will own patents on the basic technology and refuse to let anyone except Shitty Megacorp Incorporated the rights. IE, they'll be illegal, and the legal ones will be totally pointless.

In twenty years, we'll cringe at the fact that it's taken us this long to put up a moon base... but, hey, at least we'll have one.

And, I'm sure, it'll be illegal. Because the alternative is that it would be totally pointless.

They're whining about music sharing? About people remixing commercials and adding silly voiceovers to newscasters? In twenty years, the kinds of crimes we commit every day will perplex today's people. It'll probably be illegal to grow your own garden without a farming permit, or something similar.

And it'll be just as pointless to make these things illegal. You can't enforce these laws, and breaking them is as immoral as jaywalking.

Hah! Hopefully, stupid laws will become illegal. But, chances are, they'll just stay pointless.

Tuesday, August 12, 2008

Effort!

I went back and played Timesplitters: Future Perfect a few days back. If you haven't played this XBox (not 360 compatible) game, maybe you should: the writing is excellent and the animation is astounding even held against today's games.

But if you play it, play it on "easy". The game is haaaarrrrd. Thumbsticks still don't mix well with FPS games...

Anyway, this got me thinking about difficulty in games. One of my complaints about many games is that they're too easy. Especially RPGs, which are built specifically so that any idiot can reach the ending.

Some RPGs offer "extra challenges", like Final Fantasy's "Ultimate Weapons" - optional super-hard bosses. Some games also offer multiple endings depending on the course you take, which is kinda-sorta related to difficulty. Some games also allow you to choose a difficulty.

Personally, I think all three of those methods are mostly dodging the question. Some, like the multiple ending one, are actively more irritating than simply making the game hard. I don't like having to restart a forty hour game to get "the better ending", and I doubt anyone else does, either. "New Game+" mode can alleviate this irritation, though. Mmmm, New Game+.

When I think about difficulty, I can't help but think of Ye Olde Days, when games were hard and hardware was erratic. Things were paced differently back then. Adventure games featured hours of wandering around places you'd already been, searching for whatever the next key was. GameFaqs didn't exist. That level of patience seems extraordinary today. The idea that I would ever willingly wander around for hours in the same places seems unbelievable.

Similarly, in games like Future Perfect, they're not really hard hard. They're just hard enough that you can't beat them without dying a few times. But I find this to be irritating.

Did I get spoiled? Did I get old? Did culture change?

What's your favorite difficulty level? What kinds of opinions do you have on the subject?

Tuesday, August 05, 2008

More on Space

To me, one of the most important things in designing a game is designing the space of the game. The "map" on which things take place.

It's not always a map, obviously. A game like Civilization takes place (mostly) on an actual map... as does a first person shooter or a match-three puzzle game. But plenty of games don't use a landscape that is recognizably a map, or augment their map with other not-so-mappish landscapes.

As an example of augmentation, an RPG may use a "real" map for the walking-around bits, but will use abstracted landscapes for battles and skill advances. These spaces are still "maps", although they are usually much-simplified "graph"-style maps like you find in board games.

Sometimes, a game has no "map-like" terrain at all. For example, most card games do not have you laying out a meaningful terrain. But they still have a method for what cards can interact with what cards - those rules and the slots your cards can fill are a very simple space. They are much simpler than, say, a continent in Civilization, but they are still a space that most of your play happens on.

Generally, the game takes place on this space. The connectivity of the space - the "bumps" and "valleys" and "obstacles" and native "stuff" - affects how you play. If your city is landlocked, you don't get ships. If your RPG character encounters a lava stream, he'll have to find some way to get across. This "bumpiness" in the space of the game is what gives the game much of its flavor.

I'm avoiding the term "rules", because I think the term is a little inadequate. It's both too large and too small for what I'm talking about. I'm also not talking about "gamespace" as in "all the potential ways to play through the game". I'm talking about the space in the game: the terrain, if you want.

For example, the "rule" that a specific sword does extra damage doesn't have anything to do with space... although it may change how you can travel through the space. On the other hand, if one room is filled with underdressed ladies, that's not a "rule", but it will change the nature of the space and make it more or less attractive to various kinds of players. As I've said before, a game is the sum of all its parts, not simply the rules.

BUT... this view is a little simplistic, isn't it? A game is definitely more than a space!

Well, in some cases the game is almost entirely the space. Frogger, for example. Or Pong.

But in a lot of cases, the space of the game is affected by the player's actions. The space of a chess board is uniform, but the position of the pieces gives it a powerful texture. In essence, while playing chess the players build a game space with all its bumps and nooks and grooves.

Similarly, in Civilization, the world map is a space... but the game is not about just exploring that space! The game is about taming and inhabiting that space, and there is another space "on top" of it that is all about researching better ways to tame and inhabit...

Even in an FPS, where most of the space is pretty well set in stone, the way a player interacts with the space changes dramatically as the player gets various weapons and/or vehicles. A window overlooking a courtyard is not even worth noticing if all you have is a shotgun, but as soon as you get a sniper rifle, it's THE place to be.

...

My last post was about how letting players put bits in space is a good way to get player-generated content. This post, obviously, is on the same basic theory.

I've run a lot of non-computer games, games of all sorts. I've run Nobilis, the ultimate tabletop RPG. I've run Kung-Fu the Role Playing Game the Collectible Card Game 2: the Electric Boogaloo, a game which almost certainly caused a ten-point drop in some student's grades: I unwisely ran it during finals' week. I've run everything inbetween.

What I've found, universally, is that there are two things that players love doing: exploring space and building space. And what they seem to love best is doing both.

Now, of course, there's a lot of different kinds of space. Some players are in it for the social experience. They don't care what level they are, or how much damage their fireball does. Instead, they love seeing what others are feeling, or what relationships they have... and maybe they love building a world full of people feeling emotions and having relationships.

Of course, even that's oversimplified. Apples to Applies is a very social game in which you can explore and build a social space in the real world, very easily, very quickly. A lot of people hate it, even if they're the sort of people who love putting on grease paint and playing Vampire: The Masquerade LARPs. Maybe they need the fantasy setting (it does provide very different social dynamics). Maybe there's some other element they like. It's hard to say, although it's an interesting avenue for investigation.

In my games, I've come to automatically build a certain way: I put out a space for the players, and then I put out rules that allow them to interact with and alter that space. I often put out layered space, too - a social space over here, an adventure-world space there, some weird metaphysicky space underneath...

Any way I do it, the key is this "adjustable space". It's not a world where I dictate all change. It's not a world solely for exploration, but nor is it a world solely for building stuff. The fact that it allows for both (and either) lets me draw in a variety of players with a variety of interests. (Pacing is a serious issue at that point - probably the biggest issue - but it's not a terrible issue to have!)

To create the right type of space was originally a challenge, but I've gotten so used to it that now I find I don't even have to think about it much. Here are some observations I've found to work, although I don't really have a formula as such.

1) Space is a connective force.

Any space you build is for the purpose of connecting things to other things, and moderating those connections. If you build an actual map, things like mountains, rivers, and roads change the way that people travel across the map and therefore change what is appealing, defensible, etc.

For less literal spaces, such as the "space" of a card game, the connections can be much more explicit. "Creatures can attack creatures, but not enchantments or spells", "turn phases are always done in this order:"...

In a social space, the idea is to give certain players reasons to get to know each other, and others reasons to avoid cooperating. This creates "walls and roads", allowing you to make the social terrain interesting. It takes some practice (and, occasionally, math and graphing) to make this social terrain worthwhile: I'll talk about it some other day.

2) Space is seeded.

While you can just give out empty space and let your players get to work, this creates a very high entry barrier and extremely high early "difficulty" level, as they have nothing to work with. (I've made this mistake a few times... um... in the name of research! Yyyeah...)

It is important to put stuff in your space to make exploring/inhabiting various regions more or less important/appealing. In some spaces, this is a fundamental part of the space or the gameplay.

For example, in a CCG, the space starts empty, but you have very few options as to how you're going to develop it. In a social "space" such as the social part of a LARP, the people themselves are the space, so it comes pre-seeded with both character sheets and the personal presence of the player.

But in a lot of cases, the space needs to be pretty densely populated, and by more than simply roads and walls. Rivers and mountains and plains are all well and good, but a gem mine or a herd of elk will really make some place stick out as particularly nice. Similarly, an RPG world comes pre-inhabited by cultures and plot-tastic elements, even if you are going to rely on the players to do most of the heavy lifting. (Which is not very common in mainstream RPGs, but far easier in high-power RPGs such as Amber, Nobilis, etc.)

3) Space is adapted.

The last "great rule" of space design, at least for me, is that space is adjustable. Players can change both the first and second elements with enough effort.

Players can erect new walls or tear them down and build roads. Players can seed new resources, or transform areas.

In social landscapes, this is already pre-started for you. If two players really want to get along, nothing you can do will stop them, no matter how stridently your character sheets point out that they're enemies. The opposite is also true.

But that's just a start. The players need to be able to change the terrain's values as well as knocking down walls or building roads. This would mean, in a social situation, creating, destroying, or morphing the social resources people have. Their attractiveness, their in-game power, how much they know, how much they seem to know, who they have sway over, and their character's personality.

In other systems, such as a real map, the players must be given the same abilities you had in building the space originally. Obviously, balanced versions.

Even in CCGs, the players need to be able to create loopholes or weirdities in the simple space of the game. Thus you get the special abilities. "Trample", "cannot be targeted by green creatures or effects", "swampwalking", etc, etc, etc. These create an interesting, complex space built by the players. It works the same way as any other space.

...

I'm not saying that all games need to do this or this is the holy grail or yadda yadda yadda. I'm just saying that this is how I design my games, and it seems to work.

It's a lot easier in non-computer games, though...

I'm also saying that I think I've had too much caffeine at the moment.

Monday, August 04, 2008

A Model for Player-Generated Content

Well now, it's time for a little bit o' theory.

Let's talk about user-generated content, and how to make it fun, interesting, balanced, and so forth. I'm going to shorten it to "CUG" (content: user generated. It's a better acronym than "UGC") because I have to write it a lot and I don't feel like typing it eighty times. CUG CUG CUG!

When people think of CUG, they usually think of SecondLife. Put forward as a holy grail of CUG, mostly by people who have obviously never played a tabletop game, it is a vast world filled entirely by CUG.

Unfortunately, compared to games such as the Sims or even Halo, SecondLife fares poorly. It is primarily popular for the breadth of its content: you can't pilot a jet in the Sims, or create hard-core porn. Machinima in the Halo engine does not make it easy to build, say, a 1920s speakeasy, or create hard-core porn. In SecondLife you can build and pilot a jet, make a speakeasy. And, of course, create hard-core porn.

Except for the small, insignificant little fact that it's almost impossible to make anything of any real quality in SecondLife unless you are a really dedicated creator with access to a lot of outside software. Mostly, SecondLife exists as a distribution platform for people who are really good at creating content... whether in SecondLife or elsewhere. The actual tools are A) not easy and B) not fun.

Those are different problems, but together they mean that perhaps 1% of the player base makes 99% of the content worth having, which is maybe 1% of the content in the game, the rest being worse than worthless. Every poorly-slapped together newbie house, every "custom avatar" consisting of basic shapes and colors actually decreases the overall value of the play experience. It makes the world less pretty, less interesting. The signal to noise ratio is very bad.

"But wait!" you shout, "you're overstating it! It's always going to be the case that most of the players will be consumers, not creators!"

Like in Spore? Like in the Sims?

These are games where content creation is the game. There are a lot of games like that. Even games like Alpha Centauri or Oblivion can be argued to be like this, but Spore and the Sims are the clearest examples.

Every player creates content and, viewed from a newbie perspective, all the content is fairly interesting. A newbie watching someone play the most boring game of the Sims is going to be fascinated. A newbie seeing the worst-constructed monster writhing around will still find it amazing. Even newbie seeing your poorly-dressed level three thief will be fairly interested.

A newbie seeing an untextured box house will NOT BE AMAZED. Even a little. But the SecondLife world is full of them.

...

What I'm circling here is that there is a new, emerging paradigm for user-generated content. One where even casual players produce high-quality content as part of the game.

I'll call it the "Wright Paradigm", because he's the guy who seems to have got it really going.

I'm not here to ooh and ahh, though. I'm here to tell you how I think it works and how you can use it (or, at least, understand it) yourself.

As far as I can tell, the Wright Paradigm uses the basic ideas of space and bits.

Bits are the atomic nuggets. A sword that's +5 attack and costs 50 gold. A werewolf. A police station. A claw. Bits have specific game stats and ways of interacting with the game world.

A game comes with a large number of bits. The players can often create more using outside software, as when someone creates a new shirt or item for the Sims. Controlling which bits are available to a new player allows you to lure them into the game - an easy slope. Bits are very easy to use.

Almost every game uses bits. Oblivion uses bits. Even Chess uses bits, although you aren't really allowed to pick which bits to have on your team.

But Chess isn't really about CUG, and even Oblivion struggles with it. Only a miniscule number of chess players actually create chess variants. Similarly, nearly all players of Oblivion are happy with either the default content or freely available custom content: it's rare that they actually go and make a new kind of sword themselves.

What's the secret, the dividing line between something like Oblivion and something like the Sims?

It's such an obvious question that everyone will come up with a different answer. But, to me, the fundamental difference is the way that bits attach to the game world.

In Oblivion, you slot bits into various slots. You get a new spell, equip a new sword, and so forth.

In the Sims - or Spore, or Alpha Centauri - you add those bits to specific locations to change how they affect the game world.

You build a house out of bits. You don't really "equip a new chair", you buy the chair and find someplace to put it. You don't replace one city with another, you build a new city somewhere useful on the planet surface. You don't swap out claws, you put claws on arms of a length and size you choose.

The paradigm, as far as I can tell, is to let the users add bits directly to game space. In many cases, game space is literally space in the game. In a situation like Spore, game space is actually the body of your creature, at least initially. But the idea is the same.

This offers the same kind of easy-intro gameplay that bits provide, and it also enables the user to create content. Even uninispired CUG will be decent, because A) the bits are cool on their own and B) the structure you forge has some kind of shaping feedback mechanism.

In SecondLife, if you build a jet, you can delete the wings and it will still fly fine. The types of content are completely separated from each other: the atomic "bits" are ultra-generic and intended to be combined in very complex ways using very clumsy tools.

If you cut the legs off your creature in Spore, it'll become a pitiful thing, crawling or humping along with whatever limbs it has remaining. If you cut swaths of destruction through your commercial district in SimCity, your city will limp like a crippled puppy.

That same feedback system also allows you to build things as a game. It's fun to build things if, when you put it together, the game comes back and says "here's what happened!" It gives you goals and grades.

That doesn't happen in games like SecondLife, which is why content creation there is about as much fun (and about as high quality) as randomly introducing someone to Photoshop and telling them to get to it. Occasionally, yeah, you'll get someone who can do something good. But usually?

So, as far as I can tell, the "Wright Paradigm" of user-generated content is to provide bits (and allow for custom bits) that have gameplay effects, and allow the user to place them in game space.

The idea of sharing content between players is completely unrelated to this, and it also doesn't mention how the bits have to work, how space has to flow in an interesting way... this is just an introduction.

Saturday, August 02, 2008

Soul Calibre IV

I haven't posted in a while because I'm working on a tool... more on that if I ever finish it. For now, have this piece of fluff!

I bought Soul Calibre IV yesterday, just finished beating every character's story mode (no reward). I have some thoughts, not all of which are positive.

First, the good stuff. It's a solid game, a lot of fun to play. Everything moves nicely. Basically, it's what I hoped for.

Now, the whining.

Half the stories don't make any freaking sense. Half the characters just kind of stumble across the end boss, kill him, and then wander off. Ooh! Exciting! You spend three years doing eighty pieces of clothing for each character, but you can't spend ten minutes making sure their story makes sense?

Maybe I'm just spoiled by the extensive adventure mode in the previous game, which had a world map and a convincing set of mini-stories. Maybe I'm spoiled by DOA, in which all the characters actually have a personal reason to be beating the crap out of each other. Either way, I feel a bit let down by the lame endings.

I also feel let down by the new characters. I admit that most of the character designs are pretty shaky even on the best of days: they seem to follow a particular school of character design. "Did we see that character in a movie somewhere? Yes? Put it in, but change it so nobody will be able to sue us!"

The problem is that the new characters are all pretty dull. The new end boss is basically Cervantes (an end boss from an earlier game, now become a normal character), except without any sense of style. The add-ons are Yoda and Nameless Sith Apprentice. To be honest, they're pretty cool, but they clash with the scenery and make absolutely no sense. One of the sith's throws is to grab you by the throat with the blade of his light saber and throw you fifteen feet that way. It does 10% of your health in damage. No freakin' sense at all. (Also, Yoda appears to have been voiced by someone who thought he wasn't enough like Liono. He's got a weird, smarmy undertone all the time.)

The big thing they push for this game is clothing. Most characters can equip a huge variety of equipment in a large number of layers, which can then be knocked off in combat a'la Fighting Vipers. This is all well and good, except that it's really complicated, and not in a good way. There are six different kinds of "capacity" you can have that let you load up on skills, except that you have to unlock the skills. Also, you have health, defense, and attack stats that have a direct influence on the fight.

Trying to balance all this stuff is confusing at first, and then it's just irritating. It's basically impossible to get a fighter that doesn't look like a six-year-old who snuck into a Hollywood costuming closet. "I'm a ballerina! And... a bandit! And... a witch! And... um... a crocodile!"

Dunno, maybe there's a trick to it, but all my custom characters end up looking slightly demented.

Okay, very demented.

...

Also, as a side note, they've officially entered the uncanny valley. Whenever there's a close-up on a face, I shiver a little. Especially about the eyes, which have become really unpleasant-looking.

...

Last but not least is the fighting itself.

I'm a little concerned about the depth of skill this game can support. The blocking and countering feels too easy, the throws feel too accepting (I can throw people in the middle of their swing). I haven't been playing long enough to know for sure, yet, but it doesn't feel very deep.

Also, I don't know why the hell they're still doing that "FORWARD AND ATTACK = TWO INCH PUNCH, BACK AND ATTACK = GIANT FORWARD LEAP AND THRUST" crap. If I press forward and attack, I'd like to attack forward, not do a pelvic thrust or whatever other quarter-foot range attack they do. If I press back and attack, I'd like to attack while moving back.

It's especially irritating because half the characters do it that way, and half the characters do it the other. For a generalist like me, that's really irritating.

Anyway, there's my fluff-tastic review.

Lunch time, then back to tool programming.