Before anyone gets the wrong idea, I'd like to preface this entry with this fact: I love basketball. It's my favorite sport to play and to watch, and always has been. I even recently joined an adult league that plays games on weekends. If I didn't love hoops, I wouldn't have been assigned to review all the video basketball games on GameSpot since I joined the site. With that out of the way, one simple fact remains. Of all the major sports that are recreated in video game form, the simulation basketball games are the worst, and it's been this way since the beginning. There's a simple reason this is the case, and it has little to do with development priorities at various companies, or a lack of general interest. Basketball is the most difficult sport to accurately simulate, because by and large, it's a game that's extremely fluid, built on spontaneity and the utmost in athletic creativity.
Feats of athletic creativity such as Derek Jeter's "miracle flip" in the 2001 ALDS are almost pedestrian in basketball. Not so much in baseball.
Let's start with why baseball games are inherently easier to simulate. There are as many or more players on the field at any given moment than on a basketball court, but the game is structured more rigidly than any other of the four major sports. Most of the time, the action is confined between the pitcher and the batter. When the ball is put in play, the fielders all have predictable assignments as to which base they need to cover, and what direction they should run. Base runners only go in one linear direction. And there are numerous play stoppages, after which all the players reset back to their resting positions. The level of structure and predictability, and the number of play stoppages must helpful to game programmers, because there are less variables to worry about, and the action only has to "look right" for a few seconds at a time.
Dante Hall is elusive for ten seconds at a time…and about five times a year…
Football is almost the same as far as stoppages go. Yes there are many rule complexities to deal with, but in general, a play runs in one direction, and every player has a specific assignment. An offensive lineman blocks the man in front of him, or pulls around to block in front of the ball carrier. Running backs run to daylight or wherever the play tells them to go. Quarterbacks have at most, five choices where to throw the ball. Wide receivers run pre-determined routes. Defensive players all have assignments. This level of structure again, is helpful to programmers. And after a play runs for five to ten seconds, the field is reset, and players start back to their positions at the line of scrimmage.
Hockey is more difficult, because like basketball, it is also a very fluid game. Minutes can go by without a play stoppage, so each player on the ice must have a creative AI built into them that tells them where they should be, and how their position relative to their teammates and opponents should dictate their next move. Where hockey and basketball differ is that there isn't much going on in a vertical sense in hockey. Passes generally travel along the ice--there's not a lot of lobbing the puck over a defender as far as I know. And players don't really jump in the air for anything, so that's an entire family of animations that doesn't need to be done.
…Allen Iverson is slippery several times per game, every game, over the course of a season.
Now, basketball. The game is as fluid as hockey, and almost entirely contextual, all the time. Split second decisions are made over and over again that change how the game would look to observers. Take a simple act like throwing a pass. Depending on where the initiator and receiver are relative to each other, where opponents are, and relative to the basket, that pass might be a simple chest pass, a baseball pass, a lob overhead, a bounce pass, or something else entirely. Should the receiver stop to catch the pass or take it in stride? Intuitively, all basketball fans know what "looks right." Programming that into a game can't be that easy though.
And how about taking a shot? In real basketball, not everything is a straight jumper or layup/dunk. There are set shots, runners, leaners, one-handed flips in traffic, teardrops, angled bank shots…the list goes on, and again, it's all context sensitive depending on player ability, proximity to the basket, proximity to the defender, and so on and so forth. It's only in recent years where developers are finally beginning to mix in such a wide variety of shot types, along with player-controlled, mid-air shot adjustments. If a player takes the wrong type of shot just once in a video game, it immediately cuts into your suspension of disbelief. That's a difficult cross to bear for programmers of these games.
Collisions, anyone? Collisions in basketball games are probably almost as complicated as they are in football games. When you watch a real life match, you often see post players jostling for position in the block. Point guards bump and press the opposing point guard coming up the floor. Big men set picks and try to obliterate opposing guards who are blindly pursuing their men. Then you've got the mid-air collisions between a man trying to dunk and a man trying to swat him into last week. In recent years, all these aspects are starting to look more realistic in basketball video games. EA's "10 man motion capture" technique was a nice step in the right direction. But we're still a ways from being able to proclaim that they look totally natural.
And then there's movement away from the ball. There's a constant struggle between the desire to move closer to the basket, and the desire to move to open space. How many times have you played a basketball game and yelled at your AI teammates something like, "Cut to the basket, BOZO!" or "Flash to the open space, IDIOT!" Come to think of it, I find myself thinking those things that a lot in real-life pickup basketball. But the point is that basketball AI still isn't at the point where players are always moving and cutting where they should be in the half-court, and again, this has to do with the lack of structure in American basketball and how difficult it must be to program AI to consider so many other moving variables. Take a game like ESPN NBA 2K5 and try running a set play out of the playbook. Notice how much better everyone moves when they're going off a script? That's basically how football games are able to look so real compared to basketball video games. Football video games are almost entirely scripted, with very little freelancing needed from the AI.
To sum up, the developers of basketball games have taken some nice strides in recent years to capture the fluidity and creativity that makes basketball such a beautiful sport. Freestyle and Isomotion dribbling, freestyle air, and other innovations are taking things in the right direction. But unfortunately it's still an uphill battle being fought because of the huge amount of freedom and variety that typifies basketball as a sport.