That used to be the primary reason. Now it's all about getting sales before seeing the game so the player doesn't have the option to get their money back once released. How many people would not have bought various games over the years if they played them first or waited for reviews from their friends. The smart gamer who waits for games to be released to see if it's a dud or not are the ones being punished. One thing Activision did right was the limited editions. They gave physical items instead of selling exclusive unlocks.
It's funny that some players say the exclusive unlocks don't give much of an advance if any yet when you talk about cheaters they pull the unfair advantage card. If they added aim assist people would be in an uproar (Crysis 2 players were). Man I miss the old days before BF2.
I've been saying for years that paid map packs splits the community again and again. BF2 / BF2142 boosters, MoH hotzone and Crysis 2 Retaliation all had low player counts (Can't speak for MW2 and Black Ops as there is no player data to compare). It's 2011, the technology behind games have advanced so much but the marketing departments are stuck in the past.