I've said this before and I'll say it again. This game has always had "randomness" - yes, even back to 1.0 days. The problem is not "randomness" but "inability to correlate inputs to results."
Play selection has always been random.
Chances for penalty has always been random.
Chances for turnovers has always been random.
In fact the result of every single play has always been random!
In 1.0, however, the other factors that went into calculating results had a much stronger influence on the results. You were much more likely to have a good run result if your OL was better than the opponent DL. But whether it came down to a 4 yard gain, or a 5 yard gain, or a 6 yard gain was due, in part to a random number generation. Otherwise, every play run with the same inputs (players on the field, fatigue levels, etc) would return the exact same results. Games don't work that way.
Obviously, especially in its early releases (and still to 'too-high' level today) the 2.0 engine favors the "randomizer" parts of the result too much over talent and play called. The 3.0 engine is a huge step forward, but it's certainly not perfect yet, and like others I am worried that the release date is on the aggressive side, even with oriole_fan's programming skills and lots of upcoming overtime.
But it just drives me crazy to see people go freak crazy whenever the word "random" appears. It's not the "random" that is bad, folks, it's how much influence the random has over the results. Without random, you'd never have a penalty, or a turnover, or different play results. Random is good, so long as the influence of talent, and to a lesser extent, game planning, make up the largest parts of the factors influencing the results.