Wednesday, January 31, 2007

Geek Love

For those of you who still use vi/vim on the Windows platform, hang on to your hats. I know you're used to nothing ever changing, but there is, in fact, news. There's a new, less ugly user interface available for your old favorite text editor.

Yes, I know, user interfaces are superfluous. Yes, I know, you don't even know what those silly icons at the top of your vim window are for, and you can't even remember the last time you actually used one of the menus. Yet, I do have to recommend the upgrade. Check out the feature list. Macro recording! My God, we are marching boldly into the 1980s here, my friends. If you love vim, you should have a looksee. I'm taking it for a spin, myself.

Old Comments

Thursday, January 04, 2007

Screenplay Workshop

This may be of interest to designers and other writers in the Austin area:

An film-maker acquaintance of mine runs a free screenplay workshop. Game developers are welcome. I'll be at the one on January 13th.

Wednesday, January 03, 2007

I Hate Memes

Sara at We Can Fix That with Data has tagged me for the ubiquitous 5-things-you-don't-know-about-me meme, probably as some sort of sinister plot to try to get me to stop ignoring this blog. (As some of you have noticed, I keep another one elsewhere, which is updated more frequently, but it's more personal, lifey stuff.)

I admit, it's hard to think of things that people don't know about me. I tend to talk about bloody everything, if you get me started. But I'll try my best:

1.) I find it almost impossible to listen to lectures -- I zone out after about five minutes, tops. I once took an astronomy course with no textbook. Instead of going to class, I went to the library, and studied every book I could find related to the items on the syllabus. It was honestly easier for me to absorb the information that way than it would have been for me to sit through the lectures.

2.) I hate learning new games -- This is one of those things that becomes gradually apparent to anyone who hangs out with me long enough. This holds true of board games, card games, and video games. No matter how fun something looks, I find it frustrating learning the new button combos, or the obscure rules, or the meanings of all the various pieces and symbols. My well-meaning friends will try to explain everything, but #1 comes into play, and I miss half of what they're saying.

3.) I once won a talent contest -- When I was 10, I won a talent contest at my elementary school. I sang the theme song to "Flashdance." Is that embarrassing enough for you?

4.) I was originally an Electrical Engineering major -- I thought they'd let me tinker. Instead, I spent two years solving circuit equations, and doing dull math. Boring!

5.) I've helped out with the Special Olympics before -- Pin the Tail on the Donkey has never been this riveting.

I don't tag anyone. I hate memes.

Old Comments

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