the argument

Here it is – the argument i had with a good friend. Let’s see if it makes more sense in text.

What started it: we’re watching a game of Poker. My initial statement: “I think it’s cheating that people can use a hat and glasses to hide themselves while playing Poker. That’s why I like computer games – when done right, the rules are the same for the player and the computer.”

My friend came up with this point (paraphrased): “No matter what you do, a computer player will never be on the same level as a human player, and therefore will always cheat by your definition.”

Background: I’m a game developer. I have strong feelings about how games should be designed. As an example, my game library for PS2 consists of about 10 games. Yes, that is all, despite all the possible games out there. And some of those are from series. Now not about to say that’s *all* that’s good. Just that there are relatively few that get it right.

I agree with part of his statement: computers and humans are never going to match abilities. He was maintaining that the humans would be better most of the time, while I felt the puters would have better, more accurate reactions, but either way, we agree on the point. What I don’t agree with is that the computer will always cheat.

When writing a computer player, you really do have the option of choosing what level of integration the player has with the mechanics of the game. Because the game world is effectively open and available to the computer player, it is literally possible for the computer player to make anything it wants happen.

Therefore, to create fairness, you must create an artificial bottleneck. A place where a computer player can ‘see’ the same things as a human player, and ‘react’ by sending input back to the game. Personally I prefer to keep it as close to the controls as possible (whether it be gamepad, steering wheel, or wii-remote). This way the computer player is limited in exactly the same ways as a human player is.

My friend’s response was something like, “But if you have two characters with different abilities, like one can fly and the other cannot, is that not innately cheating?” Sounds plausible. Here is why I disagree: it is only cheating if the human were to choose the same character as the computer, but not be able to make every move the computer can make.

This all comes down to the level playing field concept: if all things are equal, then the human and the computer should have an equal bottleneck to do the same task. This is not to say that the computer cannot be better at making the bottleneck do what it wants. This is the entire point of games – that different human players have different abilities at persuading the bottleneck to do what they desire. It just means that as long as the bottleneck is consistent for human and computer players, then it is not cheating.

Our real world has it’s own bottlenecks built-in: we typically call them “physics.” And in most any real-world game, it is considered cheating to get around the bottlenecks. Therefore, to wear hats and glasses should be considered cheating, unless *everyone* is wearing hats and glasses.

And I don’t like wearing hats and glasses.

README.txt

Had a mock-argument with a good friend over something very dear to me and my work. Realized that I couldn’t get my point across.

My job requires that I can get my point across. I’ve been working so hard that my ability to communicate seems to have suffered. Up to now I’ve avoided jumping on the blog-wagon, as anyone who I wanted to know what was going on with me, already did.

This is a training excercise. Comments are welcomed, to see if my points are getting across.