I've been pretty quiet about all this uproar about the "Hot Coffee" modification for "Grand Theft Auto: San Andreas" because I've got friends who work for Take Two, but now that the recall petitions are out, I figure it's time to say what I think.
Developing video games is hard. Not only do we have to make a product that works, we also have to make a product that is fun, a product that will get the appropriate rating for our target market from the ESRB, a product that is acceptable to our publishers (well, we get to bypass that with SiN: Episodes...he he he), and a product that we are proud of at the end of the day.
A large part of game development is prototyping. That's when you're tossing new things into a product in a skeletal manner to see if it will add to the final product. This process often goes up until just a few weeks before a product goes "gold".
Sometimes, the features are cut but the files and code remain in the product. Why? Because developers don't want to introduce new bugs by pruning out older stuff.
Let me give you an example. Let's say that a developer prototypes a bike-tire-pumping minigame. The developer decides it should be a rhythm game, so he develops a rhythm system in the game, adds some placeholder animations and textures, and gets the minigame approved.
At this point, a few things are going to happen. Other developers are going to look at the helper functions and systems that this developer put in to see if they can build on top of what he has. Artists are going to replace the placeholder art with real art assets. These assets may be exclusive to this minigame, or these assets could be shared with other portions of the game.
After a couple of weeks of work, the programmer's system is used by several other developer's code, and the art is used in many other areas throughout the product. Suddenly, a note comes down from the publisher asking that the bike-pumping minigame be cut. Evidently, some kid in Arkansas stuck a bike pump in his ear and pumped so hard that brains shot out the kid's nose, so the feature is being cut to be more sensitive to consumers in Arkansas.
So how do you cut this feature out? The feature is there and works, other code is reliant on it, the art is used in other sections of the game, what do you do? The safest bet is to just make it so that the minigame is never called by the main game. That way, you aren't interfering with code or art.
This is most likely what happened with "GTA:SA." Most games have hidden features in them. Admittedly, very few are sex games. Some are unfinished levels or test levels. Some are hidden characters. Some include unauthorized copies of "South Park" clips. Most of the time, only a game's die-hard fans care.
Now is the ESRB responsible for this? Nope. The feature can only be accessed by modifying a game file. Admittedly, it's only modifying a single byte, but it's still a modification. I'm sure if you modified a single byte in a couple of "The Simpson's" titles, you'd get Homer screaming, "Fuck you, Flanders!" The ESRB can only really review titles as they ship. Now, if the feature could be unlocked somehow within the game, like the "chunky" and "superchunky" codes were in Dungeon Siege, then the ESRB could easily do something. As is, we'll have to be patient to see what the ESRB does.
Update (7/20/2005, 4:59pm): An AO rating. Not surprising.
Update (7/20/2005, 10:44pm): Corrected a typo, responded to feedback in comments section.