July 31, 2006

[Misc] Stupid Idiots

People have been saying, "How dumb would someone have to be to call you for tech support on a stolen product?"

The answer: As dumb as showing your stolen ID to the person you stole it from.

I've said it before and I'll say it again. Criminals are stupid fucktards, no matter what the crime.

[Piracy] More Answers (Warning: Language)

I'm an incurable optimist who believe that everyone does something to help someone else. Pirates are your friend. They distribute your product for free. Give them an incentive to buy your product (get rid of nag screens, have unlockable features, etc.) and they'll buy it.

Uhh...no. The sub-1% donation rate on most free software and the sub-1% registration rate on shareware games go against that logic. Evidently, in your travails around the various warez outlets, the whole slew of "serialz" sites slipped out of your vision.

You already got paid to make it. Why the fuck do you care?

Because I want to continue to get paid. Let's put this in terms that you might understand.

Imagine that I'm on a treadmill that leads towards a wood chipper. The wood chipper signifies unemployment and/or death of the company. How far away I am from the wood chipper signifies how much money the company has. How fast the treadmill is going towards the wood chipper signifies how much cash is going out, also known as the burn rate.

The burn rate is about one foot per month. Let's say that I start twenty feet from the chipper, and it takes me eighteen months to make the game and ship it. After eighteen months, I'm now two feet away from the wood chipper. That's uncomfortably close.

Sales from the game offset the burn rate, but don't slow it. If enough money doesn't come in from sales to offset the burn rate, we're still moving towards the wood chipper and a scene from "Fargo."

Why don't you charge for support?

Support isn't just about fixing problems, it's also about customer relationships. If I help a customer with a problem, that customer is more likely to buy from my company in the future. If I ask a customer for their credit card number before even trying to help them with a problem, I'm essentially ensuring that they'll never buy anything from me again.

You charge too much.

There are times when I want to go see a movie, but I don't have the funds necessary for the tickets. I have a choice...I can either wait until I get paid and go see it then, or I can violate international copyright law and download the film.

Hrm...delay gratification and give others the same respect that I want for myself, or get instant gratification and download a ShakyCam video off the net that cuts off the left half of the screen and has some asswipe in the third row hocking a loogie every six minutes...

I'll wait.

Dude, it's digital distribution. It costs you nothing. Fuck you.

Yeah, distribution costs us next to nothing, but we still had to pay to develop it, pay the ESRB to rate it, pay to promote it, pay to test it, pay for tools, pay for support, and more. Who says that the money we receive only goes towards the cost of a disc?

PC games aren't going away because of piracy.

Well, let's see...piracy on consoles is a fraction of what it is on the PC. What are the stats over the last few years?

Console games have remained pretty close to 600 titles being released across consoles per year for the last five years.

During the last five years, Windows releases went from nearly 700 releases back in 2001, peaked at around 845 in 2003, and have dropped nearly 100 per year since then. This year, we're going to be lucky if more than 500 games are released for Windows, given that we're only up to 270 so far this year, and the word I've been getting is that the strong pro-piracy comments over the last week across gaming sites is leading to at least ten PC SKU cancellations.

July 30, 2006

[Persona] The Weekend Recharge

I took this weekend off of work. When I say "off," I don't mean my normal off of still checking the forums to help those who need help. I don't mean my normal "trying to plan out the next week from a task perspective." I mean "off," as in I did nothing work-related this weekend at all. I played about six hours of "Knights of the Old Republic," purged some unnecessary files from my PC, played the demo for "N3: Ninety-Nine Nights," and slept...mostly slept.

It felt refreshing. Tonight, I feel recharged, and that's a good thing. I haven't really taken any time for me since February, and it started to show in my work and my demeanor.

I did go see "Clerks II" today, and I must say that it was the perfect movie to cap the weekend off with. It reminded me of something I learned back while I was at Microsoft about employee happiness.

A great, informal way to see how happy someone is with their job is to talk to them about work and see how many times they use the word "we" when talking about their job. Lots of "we" comments means that they feel they belong at work, and are happy there. They feel like they are part of a family. Very few "we" comments usually means an unhappy work environment.

I used that rule of thumb when I came down for my last interview at Ritual. I heard the company name once. The rest of the time, everyone who interviewed me used the word "we." How could I say "no?"

There is a corrolary rule that I forgot about, however, and it's the "I" rule. When you are talking to someone about work and the constant phrase is "I" instead of "we" or the company name, it's a person that feels overworked and/or overstressed.

I went back and looked at my answers to forum questions, my answers during the interview and what I posted during the blog post, and I saw a lot of "I" there. I even had one person call it out in the forums, and I missed it.

Hopefuly, now that I've taken some time to recharge, I'll be missing fewer things.

July 29, 2006

[Blog] The Pipe Was On Fire

Wow...I'm amazed my webhost didn't explode with this traffic spike...

To put it to scale, I had 808 visits on the 22nd.

[Games] Why $15 million?

When people weren't defending their thieving ways over this last week, one of the biggest questions being asked was why does it take $15 million for a PC game with a $2 million development cost to break even. Remember, that was for a first-party title, where the game was developed by the publisher.

So, let's do the math and see what goes into getting that money back. We're going to assume a title initially sold wholesale for $40 per unit, licensed engine with a $500,000 base and a percentage per unit wholesale, a $2 million development budget above that, and a standard marketing campaign.

A standard marketing campaign (TV, websites, magazine ads, etc.) runs about $4.5 million. It may seem like a lot, but if nobody knows about your name, nobody is going to buy it. $4.5 million is about average nowadays for a marketing budget.

Now we're up to $6.5 million. Now we have to get the game actually manufactured. Average cost of goods sold (pressing the media, packaging, staff to handle the line, shipping, etc.) per unit is approximately $10. Experience shows that it takes about 400,000 units to break even (assuming a tiered price drop over time), so that adds an additional $4 million to prepare the number of units necessary to break even.

We're already up over five times what it cost to make the game itself...$10.5 million. Now it's time to pay the piper for the engine. On 400,000 units above base, the engine licensor will usually bring in $1.5 million, and now we're up to $12 million. The $1.5 million is usually worth it for a proven engine, though, because you save money on development costs, config testing, and early production headaches.

You know those wonderful advertising circulars that you see every weekend for Wal-Mart, Target, etc.? If we want to be featured in there to get Joe Average looking at us (you know, the 90% of game buyers who don't read game magazines or gaming websites), that's $300,000 a week per circular. Assuming we do three circulars for two weeks each, that's another $1.8 million.

We're now up to $13.8 million, and finally we have the graft...er...market development funds. This is money we pay to the retailers so that they won't bury our title in the middle of nowhere. We have to pay for space on end-caps, point-of-purchase materials, training copies for employees so they'll actually know about us, etc., etc., etc. For a normal title, this works out to about $1.2 million for a total of $15 million.

This doesn't account for the reserve account publishers have to have to handle stock returns for low-selling titles, warehousing copies, or a lot of other expenses. But as you can see, getting a game to people via retail isn't cheap.

July 28, 2006

[Blogger] Odd Behavior

That was...interesting.

I woke up this morning to find several hundred 404's reported on the big blog post that everyone has been linking to.

For a moment, I thought my webhost deleted it, because when I went to see the page myself, it was gone. So I went to Blogger, and Blogger was showing the page pulled as a draft.

The post has been restored, but I better change by passwords just to be safe...

July 27, 2006

[Blog] Moderation Enabled

At least for the near future, I've turned on comment moderation. I don't like moderating comments, but when people make the same post multiple times in a row after it has been deleted, it's quite obvious that some morons will not pick up on a hint.

[Personal] Light

I write this blog for a very focused audience. I write it for friends, former co-workers, and professional acquaintances. For the most part, what happens here stays within that circle.

However, this is still a public site. It stays public because there may be times when lessons learned here or information posted here could be useful for the outside world. I get about 800 new visitors each month as a result of searches through the major search engines, so it's all worthwhile.

One thing that regular visitors know about me is that I vent. I vent a lot. The world has a lot of stuff to be angry about, and at least for me, it's safer and cleaner to vent into the digital ether than it is to take it out on the people in the world around me.

In this case, venting led to a lot of light being shown on the subject of piracy. Almost every site I've gone to today has had some sort of conversation going on related to piracy. Tons of debate between those that believe that if you don't pay for it you shouldn't have it versus people who believe that piracy is a godsend to computers and everyone inbetween.

My original vent was because pirates had been moving beyond just getting illegal copies of software I had worked on, and had moved to expecting me to support their illegal copies. So I vented. That vent led to a press interview and a lot of news coverage that I don't think anyone expected. Lots of people read their own personal agendas into both.

Some believed that I was forecasting the doom and gloom of the industry. Others believed that I was broadcasting my incompetence. Others believed that I was proof that DRM doesn't work. Others used me as validation of their own sick, twisted theories of the world. Me? I was exposing a data point that was pissing me off, with a little extrapolation thrown in for good measure.

Now I can't say much about piracy that hasn't already been said, but I can say this...I haven't received a single request for tech support from a pirated copy of the game since Chris Remo's interview went live. Not one.

I like trying to identify problems early and shine a light on them so that we can see the problem for what it really is. In this case, it seems that the light being generated by all of this discussion is scaring away the people who would be testing their limits.

Piracy has been a problem in this industry for so long that people have become accustomed to it. Defeatist attitudes by some of this industry's most respected names have essentially led to a free-for-all, and has turned piracy into a problem that is so large that we may not be able to solve it to any meaningful degree.

The problem that I have been having (pirates wanting support) hasn't just been isolated to Ritual. I've gotten hundreds of E-mails from developers all over the world asking about what I was doing because they have similar issues. Verification steps (user ID's, serial number checks, etc.) all seem to be failing. Hundreds of manhours per developer being spent trying to chase down issues, only to find that they were introduced in the pirated product. I shared my methods and results with those who asked. Piracy may seem unsolvable, but support for pirates is still a small enough issue that it can potentially be solved without causing undue hardship on legitimate customers.

For now, the problem has vanished due to the light. It's going to come back, and I intend to be ready for it, as do many of my fellow game developers.

[Piracy] Follow-Up

Okay, there's been a lot of discussion as a result of my blog entry over the weekend and Chris Remo's interview yesterday, so I thought I'd do a quick follow-up to some of the most commonly brought-up questions.

1) Once I've established that someone is using a pirated version of the game, I end contact, unlike how I've been portrayed by Acetone over at SA. However, active deception in an effort to receive support has not been uncommon.

2) I'm not saying that we have five times as many pirates as we do legitimate customers. I was saying that recently, we've had five times as many tech support questions related to the pirated version than we have for the legitimate version.

3) I'm not saying that piracy is the only reason that games or studios fail. I am saying that piracy is significantly more widespread on the PC, and while the problem isn't going to be going away any time soon, we do need to acknowledge it as a problem and deal with it openly. Like all problems, there are solutions. I don't think that Starforce or its ilk are that solution, but the longer we ignore the problem, the larger the problem becomes, and the harsher any potential solution becomes.

(Update: Blogger didn't take my previous title for some reason.)

July 22, 2006

[Games] The Hidden Cost Of Piracy

I don't think it's any secret that a warez group called Provision pirated "SiN Episodes: Emergence" about three hours after it was released over Steam.

There are lots of comments that people make trying to justify piracy. "A person who pirates wouldn't buy it anyway." "It's try before you buy, so you only support people who deserve it." "I'm poor and can't afford $20." "We aren't stealing from you, we're stealing from the faceless corporation." "We're only stealing the bits, not the merchandise."

Even if you buy all of those, I can still say that you're stealing resources from me. Why? Because you're stealing my time.

When we shipped "SiN Episodes: Emergence," we had two small config bugs that slipped out and affected a small percentage of our users. We spent the next week working on fixes for that bug and others, testing the fixes, and getting the fix up over Steam so that people wouldn't be affected by it. During that first week, I received about 230 support complaints specifically regarding these two config bugs.

The fix was released on May 17, along with several other miscellaneous fixes. The patch was released over Steam and people who owned legitimate copies were updated and were happy.

Between May 17 and May 24, I still had over 200 support complaints about the config bug. It was fixed, the fix was out and released, but I was still getting support complaints.

I E-mailed each one back individually, trying to get additional information. The responses I got back from the people who replied were insane.

"Did you let Steam install the update?" "What's Steam?"

"Where did you buy the game?" "Over Steam." "What is your Steam ID?" "I don't have one."

"Have you tried running the installer?" "Oh, my copy didn't come with an installer. It's in a folder on a DVD. I just drag it to my machine and then run the game."

For the last five weeks, support requests for the pirated version of the game outnumbered support requests from legitimate purchasers. Last week, the pirates outnumbered the true customers by almost five to one. It takes time and resources to track down solutions to people's problems. I spent seven hours searching for answers to one guy's problem just to find out that when I asked him a question regarding a setting, he was checking on his friend's machine for the "right" answer and then on his machine and if the two didn't match, he was reporting the "right" answer so I wouldn't know he had a pirated version.

I really pride myself on the level of service I have been able to provide to our customers, but it is really disheartening to see the number of people who not only stole our game, but then steal my time in an effort to truly get something for nothing.

Mind you, I'm one guy that's been handling support for what could be called a niche product. Since release, I've spent more time handling customer service than I have handling the responsibilities that I have in my department. If I'm getting overwhelmed by the freeloaders, can you imagine what it's like for other companies with more pervasive products?

Support isn't free. Support personnel have to get trained, get paid, get benefits, etc.

The copies of "SiN Episodes: Emergence" that you buy pay my salary. Retail copies of Windows are more expensive partly because Microsoft has to factor support costs into those sales. More and more companies are moving to console games, not only because they make more money (they do because there's less piracy in the console space), but because they save major bank on support costs.

There are companies that love the PC and will stick with it for richer or poorer, but until we can find a way to better reduce piracy in the PC space, I'm afraid that it's only going to be for poorer.

(Edit 7/24, 6:22pm: Fixed typo. Edit: 10/24, 9:20am: Added sponsored links, tags.)

July 16, 2006

[Professional] Knowledge Shelf Life

I've decided that I'm going to be spending a significant part of the next eight to twelve weeks on an intensive self-training program. I've been so buried under "SiN Episodes: Emergence" and other projects over the last eighteen months that I haven't had any real time to improve my skillset, and that means that I've been running backwards slightly. Let me explain.

More than any other industry, knowledge related to computers has a shelf life. Hardware, software, architecture, development methods, everything evolves so quickly.

A decade ago, AGP ports didn't even exist, and PCI video cards were the rage. Now AGP is on the way out, being replaced with PCI-Express.

A decade ago, game development was almost exclusively the realm of C and Assembly, and Mode-X and VESA ruled the roost. Windows, while slowly gaining ground from game developers, was still seen as too slow for games. Now, writing a game for DOS is unheard of, DirectX is about to undergo its fifth major overhaul (Game SDK > DirectX 3 > DirectX 7 > DirectX 8 > DirectX 10), and C++ is king of the hill, although managed languages are starting to nip at its heels.

A decade ago, the Internet was considered an optional part of life. A 56k modem was considered kick-ass...well, as long as you had the right 56k standard (K56Flex...no). Today, you can't turn around without getting bombarded by something related to the Internet. A 56k connection is barely enough to check E-mail for most people, now.

Unfortunately, all this change means that skills that relied on the way things were done in yesteryear are dated. I need to update my knowledge to keep myself a viable worker.

I always hear people complain, saying that if their bosses don't want to pay to update their skillsets, why should they have to pay their own way to learn? Easy. If you don't have the needed skills, what's to stop your employer from firing your butt and hiring some new guy off the streets who has the needed skills for half the pay. Your knowledge of existing systems won't save you if the existing systems are going away.

As a side note, I finally got Visual Studio 2005 repaired (thanks ZMan...wonderful undocumented command-line flags) so I can resume work on DiggerDX. If you are a game developer, take a look at the source code for this game. It's rare to find a game that actually runs in the IDE...

July 14, 2006

[Misc] The Pentium Post, The Guess Who

Just a goofy milestone: this is blog post #586.

I went to see "The Guess Who" in concert during Taste of Dallas on Sunday.

There were three types of people there: those who grew up with their music, those who were conceived to their music, and those who were with them. I think I may fall into two of those categories.

It was also a very surreal experience seeing middle-aged white soccer moms moshing with local black hip-hop dancers to a Canadian band singing about sharing the land with Native Americans and screaming at American women to keep them away.

July 12, 2006

[Personal] What a day...

I'm really trying to stay upbeat, but it's rather difficult when your day consists of:

1) Spending so long looking for your clothes in the morning that you nearly miss your train;

2) Getting to work and realizing that you forgot your allergy medication;

3) Getting to lunch and realizing that they screwed up your lunch order;

4) Getting home and getting yelled at for 25 minutes, not because of something you did, but because a "feature" in the Media Center software caused the TV to switch over to a different channel minutes before it was to start recording the new Stephen King mini-series on TNT (never mind that it was recording);

5) Sitting down while she watches said mini-series, hoping for some nice easy development, just to find that for some reason, all of the keyboard settings in Visual Studio 2005 have vanished for no apparent reason, the "Reset To This" drop-down is empty, the "Import/Export Wizard" reset functionality is broken, and you can't find your Visual Studio 2005 install media so you can reset the installation.

Yep, fun day. I'm afraid to start up World of Warcraft for fear that the moment I do, my simple presence will cause the Necropolis to fall down upon Stormwind with no mercy, and I'll end up getting gang-raped by the Scourge as part of their "Welcome to the Undead!" initiation ritual.

July 10, 2006

[MDX] DiggerDX Part 0

Over the next few weeks, I'm going to be converting DiamondDash by Cory over at AddressOf.com from a GDI+ application to a Managed DirectX application. We're going to call the changed version DiggerDX.

My goals during this project:

1) Change as little code as possible. DiamondDash is already a functioning application, so if we don't have to change something, why should we? There are times when complete rewrites are necessary, but I'm hoping this won't be one of those times.

2) Use Managed DirectX 1.1 in a Visual Basic 2005 application. Microsoft may act like they have forgotten about the coders that use VB 2005, but I haven't.

3) Lead into another tutorial. DiggerDX is going to be a very low-impact game to work on, but the next game should be written from scratch. DiggerDX will establish the skills needed, and then we'll move on to more advanced skills.

You can download DiamondDash from here:


(Note: DiamondDash is available for download as source only. You'll need Visual Basic 2005 Express Edition at the least to compile it and try it out.)

July 7, 2006

[Marketing] Snakes on a Plane

I really have to hand it to the guys behind the upcoming summer film "Snakes on a Plane."

Why? Because more than any other company, they really get how viral marketing works.

It seems that almost every decision involved in this movie's production was designed to create as much of an underground buzz as possible. The casting of Samuel L. Jackson, the title, the shift from PG-13 to R to accomodate the fan-demanded line (you can hear it at the beginning of this linked video), and now the "leak" of the still-in-production music video for the theme song to "Snakes on a Plane."

Catchy song? Check. Scantily clad blonde? Check. Placeholder geekgasm-in-waiting "X-Ray Snakes" monitors? Check.

I don't know if this movie is going to be good or not, but I do know this...the success or failure of this movie's opening weekend is going to determine the future of marketing in Hollywood and beyond.

July 6, 2006

[Personal] Meet The Press (Part II)

I was contacted this morning regarding a potential interview for a magazine called "In Utah This Week."

I find it funny that I'm actively considering it, given some extremely negative experiences with their publisher (Newspaper Agency Corporation) that I had about 11 years ago.

The upside is that the interview would be about Quality Assurance, so it would raise the visibility of game testing and testers in general. The downside is that it would make NAC money.

The upside beats the downside.

[Personal] Side Project Update

DiggerDX: Decided not to wait until my engine was finished and drop it into that, so I'm going to restart and write it as a tutorial on how to bring an existing GDI+ 2D game into the realm of 3D.

VB.NET 3D Engine: GUI works fine. Having some issues getting shaders integrated correctly. Fixed function side has a few issues.

TBSGame: Design done, playtesting using paper cutouts.

IT2.0: Merging new features into older codebase slowly.

July 4, 2006

[Personal] Happy Fourth!

I hope everyone has a happy Independence Day, that is while we still have the Bill of Rights.

Of course, given the sheer number of attacks from our elected officials against Amendements 1 and 4 through 10 inclusive over the last year, who knows what the next year will bring.

All I can say is thank Bob for term limits.

July 2, 2006

[Personal] My Left Toe, or Why I Ended Up In QA

(Note: There is a very disturbing picture linked in this post. Rather than include it in the body, it's included as a hyperlink. There will be another warning by the link. You have been warned.)

I believe that every person has two or three defining events in their life that guide them towards a career or a set of careers.

I know the event that got me focused on moving into gaming. Back in 1980, my parents took me to a Godfather's Pizza in Ogden, Utah. There was a Super Breakout machine there, and I was fascinated by it. I asked my parents for a quarter, went over to the machine, dropped the quarter in, and got ripped off because the trigger inside didn't flip. I stepped back, looked at the machine, said, "I could do better," and that was it. But what moved me into QA was a more recent development.

First, some background. I've got a slight genetic abnormality that I've inherited from some family members which causes my toenails to curve significantly more than the normal toenail does. As a result, the sides dig into my toes, and lead to an unfortunate amount of doctor's visits.

Most of my toes were able to be taken care of on the first visit by the doctor removing the affected portion of the nail, then destroying the nail matrix inside the toe. I've had doctor's visits associated with all of my toes, but the second-to-last one was the driving force.

It was ten years ago, and my left big toe was starting to swell like all of my other toes had. So, I scheduled a doctor's appointment, got the time off from work, got a place ready at home to elevate my foot, the usual routine.

Unfortunately for me, my regular physician was out on the day of my appointment, so I got an intern. I warned the intern that he had to make sure that he got all of the nail matrix, or it was going to cause problems, and I also warned him that the nail matrix on my toes was larger than what was on a standard toe because of this issue. He didn't listen.

(This is the warning link.) Because he didn't pay attention to what I said, I now have three toenails growing on my left big toe.

Yes, that's right, three toenails. I have to be very careful about the length I allow each toenail to grow to. If any of them get too short, they become ingrown and get extremely painful. If any of them get too long, they snag on my socks and get irritated or cause bleeding and extremely painful.

Every doctor I've had since then has taken one look at that toe and said they wouldn't touch it with a ten-foot pole. Had it been handled correctly the first time, it wouldn't be an issue, but since it wasn't handled correctly at first, the nail matrix has shifted and changed into a form that these physicians don't expect.

It's similar to how software develops. If an issue is found and corrected early, it makes the rest of the process go smoothly. If an issue isn't found early, or is found and not corrected, it can quickly grow to a problem that cannot be corrected as part of regular maintenance.

So because this guy couldn't effectively double-check his own work, I have to suffer for it. After the aftermath from this procedure, I found myself trying to pay more attention to the work that I had done, as well as the work others had done. It eventually led to me getting hired by Access Software back in 1998, and the rest is history.