Chapter 19. Gossip

In late 1981, Dr. Alan Kay recruited me into Atari Research and challenged me to dream. Most people take a lazy approach to dreaming. They put their feet up on the desk and engage in idle mental forays for half an hour, and they call it dreaming. To me, dreaming is a much more deliberate and difficult process. Dreaming is hard work!

I see dreaming as occupying a middle ground between fantasy and planning. A fantasy is the free indulgence of human desire, unconstrained by the limitations of reality. A plan reduces human desire to a pedestrian statement of objective, and then posits a sequence of steps that will attain the objective. Fantasy springs from human desire, where planning hews to reality. Dreams live in the gray zone where fantasy merges with planning. Where a fantasy spreads its wings and soars off into space, and a plan plods along earthbound, step by bitter step, a dream takes a running start and leaps as high as it can to gain a handhold by which to hoist itself up.

Fantasies and dreams both create alternate universes. A fantasy's alternate universe is unconcerned with the real universe. It is a desirable universe, but not an attainable one. A dream creates an alternate universe that is both desirable and attainable. That requires the dreamer to sketch out all the ramifications of his dream, to create a complete and consistent universe. A fantasy universe can be fragmented or inconsistent, because human desire is often fragmented and inconsistent, but a dream universe cannot be so self-indulgent. A good dream universe is a complete image, not a partial sketch. Every detail of the ideal is clearly specified, every consequence worked out. Only when we know precisely where we're going can we begin planning how to get there.

So, under Alan Kay's prodding, I set to work on my dream. It took me a year and a half to give it form. I wrote the first edition of this book, The Art of Computer Game Design, as part of my process of forging my dream. By 1983, I had my dream:

I dreamed of the day when computer games would be a viable medium of artistic expression an art form. I dreamed of computer games expressing the full breadth of human experience and emotion. I dreamed of computer games that were tragedies, games about duty and honor, self-sacrifice and patriotism. I dreamed of satirical games and political games; games about the passionate love between a boy and girl, and the serene and mature love of a husband and wife of decades; games about a boy becoming a man, and a man realizing that he is no longer young. I dreamed of games about a man facing truth on a dusty main street at high noon, and a boy and his dog, and a prostitute with a heart of gold.

What elevated these thoughts from fantasy to dream was the identification of the central problem: the concentration of computer games on things rather than people. I wrote an essay entitled "People, Not Things!" in which I bemoaned the fact that all computer games were about things, not people. "You chase things," I noted, "and things chase you. You acquire things, expend things, utilize things, shoot at things, but it's always things, things, THINGS! There are never any real people in our games!" My goal was clear: I must perforce design a game about people.

But how? Given the wimpy hardware available to me in 1982, I had difficulty imagining a game about people. So I got down to basics. If the game is about people, it has to be about their behavior. More specifically, it has to be about their behavior toward each other. After much random flailing about, I hit upon the earliest expression of Crawford's First Rule of Software Design (Lesson 43).

LESSON 43

Always ask, "What does the user do?"

The answers to this question tell you everything important about the design. The user's choices and actions lie at the essence of any software design, not just games. You can describe a word processor in a thousand ways, but the best description provides a list of what the user does: type words, edit them, and print out the results. The user of a spreadsheet enters numbers and formulae, and then fiddles around with those numbers and formulae to explore various scenarios.

My little rule, simple as it might be, offers vast utility. It can sniff out a design error in a flash. Pick out any piece of badly designed software and ask the magic question, and you'll get an answer that reveals the fundamental flaw. The old checkbook balancing programs of the early 1980s were utter failures, but the personal financial management programs of the 1990s were big successes. Why? Because the checkbook balancing programs allowed the user to do nothing more than enter the amounts on bank checks and then print out the results that's not much better than doing it by hand with a calculator. The personal finance programs, in contrast, allowed the user to enter all financial data, categorize it, prepare budgets and compare them with actual spending, and use the data in tax returns. These are useful things to do, which is why many people like to use such programs.

And so I asked myself, "What should the player of a people-style game do?" The obvious answer is that the player should be able to do social actions with other people. So what do people do to and with each other? The answer to this question is as vast as the range of human culture, so I needed to find some clean, simple subset of human behavior, some set of actions that form a closed set of actions. After much trial and error, I hit upon the answer: gossip. People love to gossip about each other.

Of course, gossip is a complex behavior requiring the use of language; there was no way I could get the full range of gossip behavior into a computer. But I could get a tiny subset of it in place: the declaration of affinity. A great deal of gossip boils down to statements of affinity: "I like Jane," "I hate Tom," and so forth. Such statements have a pronounced effect on the listener, serving to alter the listener's own affinities. After all, if your best friend tells you that he likes Mary, then you are likely to be more favorably inclined toward Mary.

Even at this simple level, gossip behavior offers all sorts of interesting possibilities. For example, it works in reverse: If your best friend tells you that he hates Mary, then you are likely to be less favorably inclined toward Mary. And if someone you loathe is Tom's best friend, you are likely to be less favorably disposed toward Tom. This behavior also feeds back to the speaker: If your best friend tells you that he likes Tom, then your estimate of his friendship will diminish.

This can all be summarized by a simple statement: "People like people who like people they like, and vice versa versa versa." (I put in the extra "versas" to cover each of the different "likes" in the statement.) The idea can also be presented in mathematical form:

CA [Listener, Speaker] = DA[Speaker, Object]xA[Listener, Object] / K1

CA [Listener, Object] = DA[Speaker, Object]xA[Listener, Speaker] / K2

where

  • CA is the change in affection.

  • Listener is the person hearing the gossip.

  • Speaker is the person speaking the gossip.

  • Object is the person being gossiped about.

  • DA is the declared affection.

  • A is the absolute affection.

  • K1 is some constant greater than one, say, 10.

  • K2 is some different constant greater than one.

Now, these are simple differential equations, but they apply individually to each member of an entire group of people, and so the overall behavior of this system of equations can be complicated.

All the hard work lay in getting up to the point where I realized that gossip restricted to declarations of affection could provide the basis for a game. From that point forward, it was easy. I wrote a quick version in BASIC in one day; it lacked graphics, but the game was playable. Much tuning would be required, but the gameplay seemed solid. It was a ridiculously simple game, but then, so was Pong. This game was to people-games as Pong was to videogames.



Chris Crawford on Game Design
Chris Crawford on Game Design
ISBN: 0131460994
EAN: 2147483647
Year: 2006
Pages: 248

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net