Thursday, June 29, 2006

No Rest for the Wicked

I don't post anywhere NEAR often enough to be putting plugs for anything in, but I have some good friends who have started up a small pen-and-paper game biz, and I couldn't resist putting in a word or two. I'm really looking forward to their Dresden Files RPG (based on Jim Butcher's Dresden Files novels), but in the meantime, they have just released a new product, and have yet another one on the way.

Their new offering, Dont Rest Your Head is a game for those of you who complain that generic systems are what killed pen-and-paper gaming. This is an all-custom system, heavily integrated into the game's theme. The concept behind the game is that the player characters are all insomniacs, and that their sleep deprivation has allowed them to see things that other people can't -- while also making them vulnerable to sinister elements that couldn't reach them before. This is a good game for folks who appreciate Grant Morrison, or Neil Gaiman's Neverwhere, or heck -- anyone who just likes unusual original game systems.

Old Comments

Wednesday, June 28, 2006

Are Electronic Games Art?

I was once disconcerted to hear John Carmack state to an entire auditorium full of game developers that electronic games are not art. Film critic Roger Ebert famously chimed in on the same topic at the 58th Annual Conference on World Affairs, resulting in an ongoing debate on his own website, and elsewhere. The debate has spilled over in many places in recent months, sparking all the usual arguments over whether one can even define art, and what the hell "art" means, anyway.

Yes, you can define art.

This is not to say that everyone (even informed academics) will agree on what it means, or that even after establishing a definition, you will be able to abolish all grey areas. Whatever definition you finally settle on, there will always be some Marcel Duchamp ready to gleefully come along and piss on your party.

Because it is the very best fabric I have to work with, I choose to use the classical definition which was taught in my Art Theory course, years ago: Art is recta ratio factibilium. What the hell does that mean? Well, at the very core, art is about making. But moreover, it is the recta, or right making of a work. Making without art is merely brutish labor. "Time to make the doughnuts." When you hear a critic complain that an actor was "phoning in" his performance, that is a perfect example of artlessness.

So, what about games?

The question is somewhat complicated by the fact that games are a compound work. Games are comprised of numerous sub-works, many of which are easily classified as being art, or potentially art. Music, visual assets, writing, voice performances, and many other sub-products within a given game are obviously art. In fact, we call our visual assets "art," and the people who make them "artists." However, I think that this is a red herring. Film is also a compound work, comprised of many sub-products (costumes, sets, writing, music, etc.) which are classified independently as art. However, the completed compound work, film itself, is also a recognized art form. So, we should not let the compound nature of games distract us from the real question -- whether the completed work is art.

Given my working definition, the only clear answer, for me, is that games absolutely have the potential to be art -- every bit as much as movies do. The question is not whether games are art, but rather whether we developers are being true to our work. Are we just churning out fast food? Or do we have the courage to make things right?

For better or for worse, the answer to the infernal question lies in our own hands.

Old Comments

Friday, May 26, 2006

Et in Austin ego.

For those who haven't heard, I left Australia last month, and I am now working for an MMO developer in Austin, Texas. I am settling in and doing well, and generally excited to be embarking on a new project. I just had internet hooked up at my palatial (and currently quite empty) flat this week, so I should be posting more regularly soon, assuming I can tolerate sitting on the floor that long!

Old Comments

Tuesday, April 11, 2006

I Hate Hungrian Notation

I hate Hungarian Notation. It's true. I'm willing to stand behind this one. When I'm reading code, the alphabet soup at the start of the variable names just slows me down. Moreover, it's often misleading. Take, this example from a real piece of code:


string m_pcResourceName;


Now, please correct me if I'm wrong, but I believe that notation is saying that the variable is a char*. But it's not. It's a std::string. While std::string and char* are used for effectively the same things -- storing string values -- their usage is completely different.

Now, you can say that this is just the bad habits of one person -- that he should've called it m_strResourceName, or some such. But how do you know what string library he's referring to. Heck, traditional Hungarian Notation insists on using an "o" in front of all objects. But, that's not meaningful or useful. The problem is, when you are doing object-oriented programming, your world is full of new types. A full game project could have hundreds of types. Do you call them all "o"? Or are you going to come up with some clever acronym for every single type in the entire project? And will everyone remember what the heck all those acronyms mean?

Variables should always be named very clearly, in a way that makes their purpose readily transparent. In the event that I need to know the exact type of a variable, there happens to be a very good, authoritative place to find out: The variable declaration. It is always right and meaningful, unlike Hungarian Notation.

Old Comments

Wednesday, February 22, 2006

Ten Things I Hate About Visual Studio 7.1

1.) When I try to attach to and debug an already running process, it often mysteriously crashes.

2.) It occasionally just starts ignoring all breakpoints, for no apparent reason, and the only way I have found to fix the problem is to restart Visual Studio.

3.) If you place a breakpoint in one file, and just happen to have another file with the same name, it often triggers the breakpoint on the other file, instead of the one you requested.

4.) Sometimes, it decides that it can't write out a new binary file, because the old one was in use. However, the only thing that was using it was Visual Studio, and the only way to fix this is to restart Visual Studio.

5.) Updating your project/solution files from your version control system while Visual Studio is still open sometimes results in the updates not actually happening correctly.

6.) It makes terrible use of screen real estate. Why can't I look at two source files side-by side?

7.) It habitually forgets the working directory for projects.

8.) Searching the source code in one solution, it might find a string I'm looking for in five minutes. If I'm lucky.

9.) It constantly reports that it has successfully built N projects where N is the total number of projects in your solution. Yet, when you go to run an executable associated with one of the minor projects, it tells you some of the files have changed, and they need to be rebuilt. Why couldn't it have told the truth, the first time?

10.) Whenever it feels the least bit busy with anything, the user interface becomes completely unresponsive. Whatever I'm trying to do is probably more important than whatever it's cogitating about, but it doesn't care. Heck, I might be trying to CANCEL whatever it's doing, but well, that's just too bad.

What are your pet peeves?

Old Comments

Thursday, February 16, 2006

Lack of Perspective

In Australia, any 15-year-old can buy games where they beat people up, shoot people, violate all manner of road laws, sell drugs, and heaven knows what else, but graffiti -- that's the scourge of civilization:

Australia First to Ban Graffiti Game

Now, this may come as a shock to some of the folks in the US who have quietly assumed that all the graffiti in their cities was the work of certain ethnic minorities prevalent in North America, but I can assure you that there is a hell of a lot of graffiti in Australia. It is, indeed, a problem here. I see graffiti in neighbourhoods I would never expect to see it in -- neighbourhoods where one would otherwise feel completely safe walking at night.

I'm from Washington, DC. I remember Cool "Disco" Dan. I remember Surrender Dorothy. We always had graffiti around us. My elementary school had to sandblast it off. Nonetheless, I'll tell you, there's a lot of graffiti here in Sydney. I'm simply shocked at the amount of graffiti on the trains, sometimes. No, I'm not just shocked. I'm angry. I feel bad for the poor shopkeepers who have to stay late to repaint their walls. Nobody is paying them for that. They'd rather be home with their kids. I want to grab the kids that mark up the trains, and yell at them, "WHAT THE HELL IS WRONG WITH YOU, YOU IDIOT? NONE OF US CARE ABOUT YOUR STUPID, MEANINGLESS BULLSHIT TAG."

But in spite of all this, I can't, for a moment, see any reason to ban a graffiti game. It doesn't make any sense that you can buy games where you kill people, but not games where you spray graffiti. Why is spraying virtual graffiti more harmful than killing virtual people? I'd honestly rather taggers were inside, playing video games, than outside, scribbling incoherent, pointless nonsense on my front gate.

Really, there are three separate issues that trouble me, with respect to this:

1.) There is a double standard between movies and games. If this were a movie, rather than a game, it would not have been banned.

2.) The reaction to this game has been wildly out of proportion with its danger. Playing this game will not make anyone a graffiti artist any more than playing hours of "The Movies" has made me into a movie mogul.

3.) Australia desperately needs an R18+ rating for games. They have historically had to deny classification to numerous games, because they have no equivalent to the ESRB M and AO ratings. It's not possible to sell a game in Australia, if it is deemed inappropriate for fifteen-year-olds to play. This is not only bad because it causes some games to be effectively banned, but also because there are games available to all fifteen year olds that were originally designed with mature audiences in mind (since the alternative would have been banning them). The lack of an R18+ rating really isn't helping or protecting anybody.