Thursday, August 24, 2006

How much is enough?

Recently, there has been a lot of talk among tech bloggers about open source projects, and contributing to them. Phil Haack has sounded off about this subject a lot lately, as have most of the bloggers around, including me.

So, I decided to give back a bit. I've started my own open source project, with one of the guys at work. And, I've decided to help with integrating Wix into Visual Studio more. And, I've decided to help with a game that an acquaintance recently made open source. I've found and filed a couple of bugs with SubText, and made a couple of feature requests.

Both Wix and the game have a model where the guys that are running the project don't allow you direct access to the source control system until you have proven that you are committed, and that you know your stuff.

Here's the question: How many bugs do you have to find & fix before you're cool enough?

I've submitted a couple of help fixes/updates to Wix, and submitted several bug fixes to the game (4 bug fixes and 1 feature addition, actually). Currently, I have to submit my changes to someone on the team that has commit rights to the source control system, and let them actually do the submitting.

For Wix, I definitely feel like I'm not at the point yet where I need to be given commit access.

Yesterday, while working on HA!, I found several times that I was being hampered by not having access to the TFS database. For example, I'd like to refactor some of the code, to make it easier to navigate and make the design more OO. Ultimately, I'd like to shelve a changeset that has all the refactorings complete, and let Chris look over the changes, and approve or not. Right now, that would entail manually uploading each file that changed to CodePlex, through a not-great interface, including a comment with each file upload. Poopy.

How many more bug fixes do I need before I get checkin rights? We'll see what Chris has to say, since he reads this blog. Btw, Chris, I don't have your email address, or I'd have just emailed you today, and asked for access; plus, I think this is an interesting question to ask the coordinators of open source projects. What is the barrier to entry as a contributor?

Saturday, August 19, 2006

Irritating Malware - Family should read this

Courtney's computer recently got infected with a really irritating virus.

Every time she opened IE, she got a warning that her computer might be infected, and she should run a "system integrity scan wizard".

This is ironic, because the infection she had was the program that was offering to scan her computer, and remove the infection.

Here's how you get rid of it. Be really careful if you do this.

Type regedit, and hit enter
Go to HKEY_CURRENT_USER/Software/Microsoft/Windows/Current Version/Run
Look for a program on the right side that is just random letters stuck together, ending with .exe. In Courtney's case, the path (value) for this program was under c:\documents and settings\local settings
Write down the full path to the file, and pay particular attention to the filename.
Hit Ctrl-F
Type in the file name, hit enter
Every place you find the name, hit the delete button, to remove the reference.

Then, go to the folder that you wrote down, and delete the .exe file that you just removed from your registry. A restart, and everything should be fine.

Tuesday, August 15, 2006

Final SpaceRocks! update

Yesterday, I decided to stop development on SpaceRocks. I have learned pretty much everything that I can learn from that project, and am at the point of diminishing returns. I implemented nearly every 1.0 feature, and some of the 1.5 features.

The game has definitely been a success for me. I spent less than the target 80 hours in development, and have a playable game (albeit with crappy graphics).

Why is development stopped you ask? I'll tell you.

  1. I really feel like I've learned nearly everything that I can from the game. I'm ready to start on a 3d project, so I can learn the hard stuff.
  2. With the release of the XNA beta, I'm going to start work on a new game, that will be built via XNA, allowing it to run on XBox and PC.
  3. There is no way to monetize SpaceRocks. In addition to being one of hundreds of clones, I'm pretty sure there would be licensing problems if I tried to sell it.
  4. My dad made a request for a game several years ago. Back then, I couldn't conceive of how to build what he was asking for. Yesterday, during the keynote at GameFest, I thought of a game concept that mostly provides what he was asking for, while also having the potential to be a money-maker. At least, a money-maker if you consider that my dev costs should be near zero.

If those aren't enough reasons for you, try to convince me otherwise. As far as I can tell, no one ever actually played the game. I'd be totally willing to open source the project, if any developers are interested in contributing to the game, and building it further.

If you are a developer, and would like to see the source code to the game, just let me know. I'd be happy to provide it to you.

GameFest Report

First off, let me tell you, MSFT knows how to throw a conference. They provided breakfast, lunch, drinks, snacks, and even free ice cream! The lunch food was amazing, and who doesn't like free ice cream?

There are a lot of cool-looking games coming out from MSFT Game Studios. I am particularly happy about seeing Shadowrun come out. They also advertised Forza2, Call of Duty 3, and Gears of War, as well as several others that I'm not as excited about.

There is at least one really disturbing game coming out. Dead or Alive Extreme 2. I am convinced, after seeing their trailer, that they have more than one programmer working full time on physics simulation for boobs. Theoretically, this is a beach volleyball game. Most of the 4 minute trailer focused on boob shots, and slow-mo running and jumping. These guys were clearly inspired by Baywatch. It's shocking how many of the 'volleyball' players in this game have DD boobs. All of them move in very realistic ways when the girls jump and wrestle and giggle. This game is clearly targeted at the 14 year old boys who need spank material, and dirty old men.

Most of the sessions at the conference were good. I attended a couple of boring ones, and one that was worthless. I went to a hands-on lab(HOL) that used PhysX (a physics modeling package). The HOL didn't have any directed activities. They showed us three demos, and then said "ok, go ahead and play with it". Guess what, if we don't have this product, we don't have any idea how to use the product. Dumb ass.

We got some decent swag; a cool laptop bag, and a 1GB USB key that contains all of the slides from the conference pre-loaded.

MSFT announced XNA studio, which will be in beta in Sept. The full version will be available holiday 2006.

In addition, Garage Games has ported their Torque game engine to C#/XNA, and will be releasing TorqueX along with the XNA release. I am super excited about this; TorqueX will be the first commercial .NET game engine (that I'm aware of), and if it's as good as Torque is supposed to be, then I'll be a happy developer.

MSFT is also working on Live Anywhere, which brings the XBox Live experience to pc games, and allows for cross-platform multiplayer gaming. Shadowrun will be the first game that supports cross-platform gaming. They also talked about a version for smart phones. The use case they gave was modifying your Forza2 car from your phone, and playing on your XBox/PC later. That is certainly exciting.

There has been a ton of good information about developing for Vista. I learned all about how to get your game to show up in the game explorer, and capitalize on the rich user experience that Vista provides.

Garage Games gave a talk about how to be successful selling downloadable games for the PC and the XBox. They should know; they wrote Marble Blast Ultra, which is the highest revenue-producing game on XBox Live Arcade. I talked to them about getting a beta of the TorqueX engine. They were all super nice guys, and very easy to talk with. It seems like they brought their whole company to the conference. I know they have several devs, two co-founders, and the CEO here.

I got to meet Rico Mariani today! He's a MSFT architect that is responsible for CLR performance. He has an incredibly interesting and useful blog, Rico Mariani's Performance Tidbits. I highly recommend it, if you are writing managed code and want performance.

Apparently, GameFest is a good draw for getting a diverse crowd. I sat down for lunch today with 5 or 6 guys from Garage Games, and one Microsoftie. About 20 minutes later, they all left the table. I was prepared to sit and stare at the looping game ads for the next 45 minutes, when a young woman asked if she could sit next to me. Turns out that she is one of the like 5 female game developers in the world. As many of you already know, most developers are younger men, with limited social skills, and sometimes interesting odors.

In addition to being a female game developer, whose husband is a Bungie game developer (meaning he works on Halo), Heidi also worked on a game that I totally loved; MechCommander 2. I mentioned that I really liked the interface of MC2 a lot more than the original, and she casually mentioned that she wrote that. How cool is that? I met someone who actually worked on a shipping, commercial game, which I totally enjoyed playing. I think I'll have to reinstall MC2, and play some more, in honor of Heidi.

She also mentioned that they might be looking for a tools dev in the future. Remember that, Matt; if you're mean to me, I'll get a job at a game company, and manage to avoid the high pressure game development at the same time.

I'm waiting now for the hands on lab for Direct3D10 shaders to start. This particular lab is going to be useful for me, since my next game will have to use shaders for lighting and such. XNA is not, as far as I know, going to support the fixed function pipeline, so I have to figure out how to implement lighting and particles and a bunch of other stuff in shaders.

Tuesday, August 01, 2006

Too much?

You people know me. Is this t-shirt too much? It's the ultimate inequality.