When Valve released the Spy and Sniper update they changed the way the new weapons were rewarded to benefit the more casual players. Instead of reaching achievement milestones, which unlocked weapons after getting a certain number of achievements the new unlock system worked by randomly giving you weapons based on play time. When the class updates came out servers running “achievement maps” would pop up, just open fields of mayhem to facilitate the quickest kills. This new system spawned up similar maps, but instead of seeing players exploding everywhere, you saw two full teams standing in their spawns. Their players away from their computers, idling, to unlock weapons.
It seemed like a good idea but the problem was that the system was granting duplicate weapons, so your chance of getting one of the six new weapons was pretty low. The game already had 12 additional weapons so you only had about a 5% chance of getting one of the Spy or Sniper weapons. Players ended up with duplicates of weapons they had already unlocked and they had no use.
Valve is planning to add a trade system which will let you trade weapons you’ve unlocked with others but to tide players over until that time they have put back the old system in place as well. Now you can unlock weapons based on what percent of the achievements you have and by random chance in game.
I still dont understand why they cant just give players the weapons right away. Each time a update comes you see a massive percentage of the player base playing that class, effectively ruining the game. By just giving the players the weapons people would be able to try the new weapons and move on instead of spending hours grinding achievements.