If you don’t know what you’re making, how will you know when it’s done?

Hi, I’m Tom. Life has been fairly busy, lately, and I keep meaning to get back to writing something here. Well, today something got me going enough to actually stop and write again. Imagine, if you will, a large number of spider monkeys. These monkeys love to climb and play all day. One day, one of them decides they need to organize and get something done. So they all fall in line and sit around to discuss what they will do. One particularly astute monkey declares, “We shall build a glorious Frumjoozit!” “Here, here!” the monkeys shout in chorus. And so they begin work…

The monkeys don’t quite know what a Frumjoozit really is, but many of them had seen one before. When asked about the experience they said there was an LCD monitor, a lot of hand waving, and they had a really fun time. In fact, the “fun” part was really all that mattered. “Our Frumjoozit will be fun!” declared the monkey-in-charge. And so the monkeys proceeded to design and build their Frumjoozit.

Three years passed, during which the monkeys consumed 5 million bananas.

At the end of the 3 years, an older, wiser monkey asked what they had produced after all that time. “We present to you, wise monkey overlord, our Frumjoozit. We like it, and we know you will, too.” The old, wise monkey took the Frumjoozit and examined it carefully. “This Frumjoozit sucks,” he said unapologetically. “You are all fired.”

Alas, the poor monkeys. What they lacked were clear requirements. The common sense approach to game design is to make something “fun.” In my opinion, this is not the right perspective. “Fun” is horribly ambiguous, and ephemeral under the best of circumstances. A 3-year software development project is completely hit-or-miss without rock solid requirements. And if those requirements are expected to change, then either shorten the development cycle, or use a software development methodology that continuously solicits, analyzes, and incorporates new requirements.

Continuous improvement… it’s not just a trite buzzword.

Bioshock is the New Zork

Hi, I’m Tom. There seems to be a bit of stagnation in games, lately. It seems like everywhere you look another first person shooter is popping up, sometimes playing out some kind of plot, sometimes not. Bioshock is one of these shooters. Is it really that different from the shooters that came before it? Well, not really. There are lots of cool weapons, and it sure looks nice (when it isn’t crashing on Vista), but the formula is well-worn. Run. Shoot. Shoot. Run. Crouch. Shoot some more. Wash, rinse, repeat.

However, there is something special about Bioshock. It’s the Zork of the current generation. Zork was not only fun and groundbreaking, it was also a commercial success. It was a text adventure, or what is now called interactive fiction. Now, Zork wasn’t the first of its kind, but it was an inflection point in quality. The Infocom parser (that thing that read what you typed) was really incredible at the time. Gone were the days of navigating stories using one or two word commands. In Zork you could type an entire sentence! Cool as a moose, eh?

Unfortunately, most people don’t like to type out complete sentences, have a poor grasp of grammar and spelling, and are just plain lazy. As graphics technologies improved, interactive fiction faded to an obscure niche. And today we have games like Bioshock and Half Life 2. The principal is the same as Zork — immerse the “player” into a story where they play the protagonist and possibly other supporting roles. This is great for story telling. The immersive nature of Bioshock, Half Life 2, and others to follow allows an “artist” to tell a truly great story. I mean, it’s like you’re really there, indulging in latent homicidal tendencies, killing everything in sight. And the “artist” is free from the shackles of morality, free to allow the “player” to completely wander off the beaten path and plunge his or her self into the abyss of antisocial purgatory. But, I digress.

The real point here is that Bioshock and many other “games” are really just the latest incarnation of interactive fiction. I like Bioshock. I like Half Life 2. Yes, there are fiercely gruesome elements to poker play moneypoker torneos gratistexas holdem estrategiastrip poker online gratis,poker online gratis,juegos online gratis pokerpoker online sinjugar a poker gratisjuego de poker pcpoquer com esfree poker playing online,free online poker,free online poker fake moneyfree texas hold em gamebest internet pokeronline poker gamblingtexas hold em gameonline texas holdem tournament,freeroll texas holdem tournament,texas holdem tournamentpoker software developeronline poker for funonline poker tourfree texas holdem poker download,free texas holdem poker,free texas holdem poker game7 card stud hands7 card stud oddsplay poker online,play poker,how to play three card pokeronline poker no downloadfree video poker game7 card stud hi lowonline poker softwarepoker game downloadpoker rule,5 card draw poker rule,strip poker ruleonline video pokeronline poker strategyinternet poker gameinternet poker softwarefree online poker tightpoker7 card stud softwaredraw pokerplay free poker onlinevideo poker softwarecrazy game of pokerplay video poker7 card stud gamesfree video pokerfree texas holdem poker playonline poker sitefree texas hold em pokerpoker casino gamefun game home play pokeronline poker freefree on line pokerbad credit card,approval bad card credit credit instant,bad card credit credit people ukcredit card consolidation loan,card consolidation credit interest loan low,card consolidation credit debt debt loancard compare credit uk these games that young kids should not be exposed to. However, they provide entertaining experiences for mature audiences. Unfortunately, some “artists” are wandering quite far from the beaten path, seriously challenging societal mores. They are making ultra-realistic simulations where the “player” interacts with the world, acting on often unsavory impulses. Okay, free speech is protected. Just because one CAN say something, however, does not mean one SHOULD say it.

Bioshock is the new Zork. What we often call games is really another method for delivering stories. Sometimes we like the stories, sometimes we don’t. As always, stories will have the power to inform, sway opinion, and challenge beliefs. Viva la interactive fiction!

Evolution 1, Creative Chaos 0

Hi, I’m Tom. Over at Gamasutra I just read an opinion piece by Colin Anderson on “why casual game cloning makes sense.” I agree with his opinion. The world of intellectual property is already dominated by rabid gorillas trying to strongarm the minds of the masses. If “ideas” were property, our minds would become legal minefields.

Creativity, in my opinion, is not about wild new ideas that no one has seen at all. That’s called chaos. Creativity is actually a refinement, revision, or evolution of ideas that have come before. All of human culture didn’t suddenly spring out of a primordial soup of random behaviors. Instead we gradually alter existing ideas; we retain the modifications we like and the rest fade into obscurity.

So it is with games. Most (perhaps all) game mechanics, plots, and visual styles have evolved from prior works. Sometimes the deviations are radical, but most often they are subtle. I think we would all be best served if the courts were not in the business of regulating our ideas.

Embrace Criticism

Hi, I’m Tom. The dinosaurs, as popularly envisioned, went extinct long ago. Tyrannosaurus Rex was a work of art that the world did not want. Humans, on the other hand, have been extremely adept at recovering from calamities. Consider a game — would it live longer as a fierce Tyrannosarus Rex or as a humble candelstick maker?

Just as the dinosaurs faced natural disasters, games face criticism. While art withers in the face of criticism, games should embrace it and thrive. Criticism is most often a refinement of requirements. When criticism is levied against a game, it often means the game does not meet the expectations of the player. That leaves two possibilities:

  1. The game does not meet the user’s (i.e., the player’s) requirements, or
  2. The game was built for a different user than the one who has levied the criticism.

If the game is not meeting it’s requirements, that’s a legitimate problem. In that case the criticism should be embraced, as it is a constructive refinement or clarification of requirements. Don’t rebuff such criticism; it is important and valuable.

If the game was not intended for the user levying criticism… well, that criticism may or may not have value. In any case, the criticism is not invalid. It still represents the unmet expectations of some group of users, but not necessarily those to whom the game is marketed.

What’s the point? If someone says your game is broken, not fun, or otherwise off kilter, don’t take it personally. Carefully consider the criticism. It is the key to making better games.

Slowly step away from the ego…

Hi, I’m Tom. Today I saw a link to a blog entry by Daniel Cook, “Evolutionary Design.” Hey, if it works for monkeys, it should work for games, too!

The central idea behind this Evolutionary Design stuff is that the game design changes over time, eventually converging on something that is maximally (or at least very) fun. Build something, test a little, refine it, test a little more, refine it again, etc. On the whole, this is indeed a great recipe for designing games. However, there is a bit more to this story than just games…

In well disciplined software engineering, good requirements are extremely important. And building video games is really building software. Do video games come with good requirements? Do monkeys and pigs fly, battling ninjas and pirates high up in the stratosphere? So the real problem here is that the typical game design is not preceded by good requirements. Some possible problems include:

  • Requirements might not be identified.
  • Requirements may be ambiguous or underspecified.
  • Requirements may be incorrect.
  • Requirements may be overspecified.

Game design really boils down to understanding user needs (what players will like) and translating those needs into requirements. If a game designer sits down and “designs” a game without consulting potential players, then just what is being designed? Game players are the users and users are notorious for not clearly stating their needs. A designer needs to constantly go back to the users (players) and check to make sure that what is being designed meets their needs. This iterative approach has been around forever, though it has been known by many different names. Evolutionary Design now happens to be one of those names.

A deeper question that I won’t dig into here, is why is it so hard to get good user requirements. Software developers are notorious for assuming they understand user requirements, without actually validating those assumptions with real users. In the world of game development, validation means letting people play the game. Do it early and do it often. Don’t let ego get in the way — the goal is not to make a “good game;” the goal is to make a game that people enjoy playing. The right game design is not the one created by a brilliant game designer. Let the users say what the game design should be.

One Defect to Rule them All

Hi, I’m Tom. A game with cosmetic faults is like a dog with bad breath. Sure, the dog may stink, but that doesn’t mean it’s not a loyal friend. A game with bugs, however, is like a dog with rabies. Would you let rabid Cujo curl up on your bed? No way.

A movie is something you watch. You judge it by how it looks. A game, however, is a system of rules you play through. Movies degrade gracefully; games usually don’t. A movie may have bad lighting in this scene or that, or perhaps there is gum stuck on the screen. Does that ruin the movie? Not always…

A game might have a spot where a character gets stuck, an area where the controls don’t work right, or a crash bug. Do these ruin the game? I’d say yes. (Most of the time, at least.)

Visual blemishes usually don’t prevent a game from being completed, but bugs often interfere in the worst of ways. Think about what you feel is most important. Would you rather have a nice looking game, or a game that works? What about other game developers? Can you think of any games that looked great, but because of bugs they just weren’t fun? Should those game developers have stuck to art?

Different game developers feel differently about this, I’m sure. For me, however, I prefer games with no defects rather than “pretty” games that don’t deliver on gameplay.

I would take stinky dog breath over rabies any day!

Resumes and Interviews

Hi, I’m Tom. I was listening to a Gamasutra interview with Marc Mencher from Gamerecruiter.com, and it inspired me to write today’s entry. Can you tell the difference between a paper mache lemur and the real animal? Of course you can. Can I tell the difference between a BS resume or interview and something authentic? You bet I can.

Lots of stuff has been written about resumes and interviews in general. I won’t even bother linking to any of it; there’s so much information out there it’s practically infinite. What I will relate here is my own personal experience and opinions regarding resumes and interviews. Do you really want someone to hire you? Read on.

First, both resumes and interviews are really disqualifying tests. They are tests to see if you should be disqualified. Neither a resume nor an interview can tell me if someone will do well on a job. They will tell me, however, whether you are not qualified. Are you just throwing in buzzwords because you think that’s what an employer is looking for? I can tell. Did you really just slack at your last job, not really doing anything substantial? I can tell. Are you applying for a position just because you need a paycheck? I can tell.

In both your resume and interview you need to be:

  1. Honest. Don’t try to write or say what you think an employer wants to hear.
  2. Thoughtful. I know programmers program, tech writers write, testers test… Tell me, from your perspective, what made what you have done a valuable experience.
  3. Positive. If I see a single negative word in your resume, it goes straight into the trash can. The last thing I want to deal with is someone who writes down on paper and publishes to the world how bad their last employer was.
  4. Brief. Nothing in the world is more valuable than my time. Don’t expect me to read your life history. Be brief and direct.

And what about that interview? Well, I’m looking to determine:

  1. Were you honest, forthcoming, and accurate in your resume?
  2. Do your personality, skillset, and career aspirations match the position?
  3. Will you be productive in the position?
  4. Will you require too much on-the-job training to be cost-effective? (Or, are you really qualified?)

Do I believe in technical tests in job interviews? No. Life is an open book exam, and there should always be people there to help us out. I’d rather have a broad sense of a candidate’s strengths and weaknesses, aptitudes and dislikes. When it’s all said and done, I’m trying to see if the resume or the interview indicate that a candidate is not really qualified.

If resumes and interviews are really just filters used to disqualify, then what makes me think more favorably of a candidate? Personal references. If someone I know and trust recommends a candidate, that’s a huge plus. (Keep in mind that I can also tell when a referal is genuine.) I will ask about how well a person performed, and why. What were the person’s strengths and weaknesses? Did they work well in a team environment? Could they show initiative and work without close supervision? Could they function in a leadership role?

Keep in mind that it’s the big picture I’m looking for. I don’t care if a programmer is terrible at one particular technology, or if a tester didn’t really write stellar reports on a particular job. I want the big picture so I can get a feel for whether a candidate will 1) fit into a specific position, and 2) be able to take on other responsibilities later.

Remember, you know a paper mache lemur when you see one. So do I.

“Games are not content.”

Hi, I’m Tom. Over at Gamasutra I just read an interview with Raph Koster. He said,

Games are not content. Games are systems that content gets put into. Still, we keep insisting on making these tiny simplistic little systems and spending massively on content. Well, that’s a bad recipe for a couple of reasons.

As the HackMasters would say — Hoody Hoo!

Why is this site called Semspace.com? Because it’s short for “semantic space,” which is precisely how I see games. Games are not graphics, or sound, or cool toys inside — a game is a system of rules, a sematic space, in which players navigate.

As my family I and I were out shopping the other day, we strolled over to the electronincs section, hoping to get lucky with a Wii. They were sold out of the Wiis, of course, but I commented to my wife, “where have all the games gone?” I saw so many “games” that wanted to be movies, or “games” that wanted to be photorealistic simulations.

What ever happened to the golden age of arcade games? Pac-Man? Space Invaders? Tempest? Galaga? Sure, these games are considered retro, and often revived as nostalgic novelties. But my point is why spend millions on a new game (overstuffing it with “content”), when something put together in one or two months is just as fun?

As Raph pointed out, people can do amazing things in a short time. All this “content” stuffing that goes into games is really yielding diminishing returns. I don’t care if each individual eyelash is modeled and animated. I don’t want an accurate physics simulation of hyena hair; I just want to play a fun game.

Why should I fall off the bridge?

Hi, I’m Tom. I just read an interesting article in Game Developer Magazine. The article by Mick West, “Running in Circles,” addressed the problem of funky controls in games. After reading the article I was left with the thought, “why should I fall off the bridge in the first place?”

In the scenario Mick presents, the player is on a narrow bridge, confronts a monster, and wants to quickly backtrack to get away from the monster. The controls go wild, the character starts wandering into a circle, and the character falls off the bridge. Mick goes on to superficially discuss the programming behind character control, and muses about how there are still games released with poor quality controls.

I see two issues here:

  1. Character control should never interfere with the game.
  2. A game should never let the player do stupid things.

Character control is addressed by Mick in the article. I’ll add my two cents, if for no other reason than to hear myself type. I believe how a game feels is more important than how it looks. A game’s controls and how it responds to input give it a “feeling.” Non-realistic physics, for example, are instantly detectable by most players. Players also immediately discern linear versus non-linear behaviors, even if they can’t name them as such. I will go out on a limb and state — Games that don’t feel good are not fun.

I was hoping the article would address constraints, such as falling off of bridges. It kind of dodged that issue, though, instead focusing on a programming solution. I firmly believe that a player should never, ever be allowed to “accidentally” do something stupid. In the bridge example, why doesn’t the bridge have sides or rails? Did the game designer want the player to jump off the bridge? If not, then why let them do it? Many games have these little microgames within them, where the player must carefully control the character — often for an extended period of time — or else something bad will happen. Tomb Raider was pretty much like that for the whole game, but that was the point of the game. If I’m playing an RPG, I don’t want to worry about what will happen if I sneeze while guiding my character along the narrow cliff ledge.

How can these problems be avoided?

Quality assurance. There should be some kind of quality assurance (before the game is sent to testing!) that checks for awkward controls, unanticipated events, etc. There are many approaches to quality assurance, but I am partial to continuous integration and eating one’s own dog food. That means build the game every day, play it every day, and nit-pick it to death every day. Some rules of thumb I use:

  • If the game starts to get boring after playing it every day, then something is wrong with the design. Fix it.
  • Some “fixes” are very expensive and you might just have to skip them.
  • Playing the game every day can help generate new ideas for the design. Entertain these ideas and see if there are sufficient resources to implement them.

Any game development process that does not include quality assurance is really rolling the dice. Every day is another opportunity to make a game into a hit. Don’t squander this time.

Code Crunch = Management Failure

Hi, I’m Tom. Ever hear this line? “Your failure to plan is not my emergency.” That’s what a code crunch is all about. If “management” comes up and says everyone has suddenly got to work 70 hour weeks to finish in time, then “management” didn’t really do the management they were supposed to.

Management (this could be a line manager, producer, programming lead, etc.) has two basic responsibilities:

  1. Achieve company objectives.
  2. Take care of the employees.

Forcing everyone to work 70 hour weeks because of a shoddy plan or poor execution most certainly fails objective number two. Employees are not slaves, and should not be expected to give up pieces of their lives because management doesn’t know how to properly manage resources. And lines like “Free twinkies while we crunch out these last few 70 hour work weeks!” are pretty lame.

But aren’t crunches necessary to get a high quality product out the door? No. I’ll say that again so it might sink in. No. Crunches are not necessary. Crunches are a direct result of shoddy plans and poor execution. A good manager should be doing everything they can to protect everyone from crunches. Anyone who thinks that is not true has been living under a rock.

“Crunches” come in many flavors, and they are not unique to game development, or even to software development in general. Sure, there might be code crunches, where tons of programming must be done in a short time. There are also writing crunches, art crunches, administrative crunches, and even corn chip crunches. Also, many insects will crunch when stepped on.

So, what’s the secret to avoiding these crunches? Luckilly there is an easy solution:

  1. Hit management upside the head with a clue stick.
  2. Hit them again.

Seriously, though — the answer is to get competent management. I would say the most common problem is that “management” doesn’t have the skills and education they need to do their job properly. Here are some resources that could help a clue-starved manager:

Of course, these are just a tiny random few things a neophyte management chimp can do to find their clue. Just remember this one thing above all else — any kind of crunch is always management’s problem.