I went to a GDC session this morning with Kim Pallister, who used to work at Intel, and now works in the Microsoft Casual Games group. I’ve read Kim’s blog for a long time, and it was cool to get to meet him in person today. He presented with Chuck Walbourn, also from Microsoft, and these two are very sharp guys.
Kim talked about the new features that available for games under Windows Vista. For a long time, certain file types, like MP3 music files and photos, got “special” treatment in Windows. You had the “My Music” and “My Pictures” folders, with some special tasks that you could do (like view as a slideshow, etc.), but games never not the same treatment. In Vista, that has changed.
Now there’s a “Games” section (no more “My ” anything in Vista – just Documents, Pictures, and now, Games). When you go to this special folder, called the Games Explorer, you see all the games you have installed on your system, along with their cover art, rating, and some other metadata. You can right-click on any game and get specific context menu actions – load a saved game, launch the game, etc.
The metadata for games is contained in a new file type, the GDF (Game Definition File). It’s XML based, and you can easily create one for your game by using the GDFMaker tool in the DirectX SDK. But what about all of those games that you already have installed on your system, that came out before the developers could make a fancy new GDF file to go with them? Here’s a nice touch – Microsoft has compiled a database of hundreds of known games, with some basic information about them (rating, cover art, etc.), and if Vista detects one of these games installed on your system, it automatically shows up in the Games Explorer view. Sweet.
Kim also went over the Parental Controls feature for games, which allows you as an Administrator to control access to who can play what games at a very granular level. Nice for families that give each kid their own account in Windows, assuming it’s a Standard User account, and not an Administrator account.
Chuck went into detail on some of the compatibility issues that arise with Vista, mostly stemming from the fact that you no longer run everything as Administrator by default, even if you’re logged in as an administrator. Windows User Account Control is the thing which is constantly popping up and asking you “Cancel or Allow?”, just like in the Mac vs. PC commercial. For programs that are correctly written for Vista, however, that tell the system to run “asInvoker”, can behave just fine, no matter what Cupertino would have you believe. 😉
Chuck talked about all of the things you need to do to your game to make it well behaved, including signing your binaries, running under the correct context, not trying to write to the Program Files directory or HKEY_Local_Machine registry keys, and other off-limits areas. As much of a pain in the neck as it may sound like, it really doesn’t seem that hard to make a well behaved Vista game. And there’s lots of information out there, and people like Kim and Chuck, to help.