I can play without any problems on high/ultra high and don't get any crashes. We have said it quite a few times:
The engine is very old and uses only parts of your computer, no matter how good he is. For example the engine always just uses one core - as the current processors aren't using much better cores (sometimes even worse), but therefore more cores, some games (like bfme) don't run as good as new games on your computer.
Let me picture that for you:
On the one hand you have one really well trained worker (let's call him Jon). Jon has a really good education, but therefore it also was very expensive to train him. He is really good at his job.
On the other hand we have 10 workers who are only a bit trained. (let's call them the Team) Everyone has a bad education, but it was cheaper to train all 10 workers than to train Jon.
While older processors tried to be like Jon, current processors are more like the team. It's cheaper to make many bad processors than to make few good processors with the same strength. The current games are programmed to work with that:
If you play CoD 4, the game just looks at your team and says: "Whoever just has nothing to do: Here is a job." and as there are 10 people, someone always has free time and starts doing it at once.
Jon on the other hand works much faster, but if he has something to do, he can't just stop his work and therefore finishes his other jobs first, before doing this job.
That's why a game like CoD 4 works better on the newer multi-core processors.
Now look at a game like Bfme:
This game came out in an era, when people just used one or two processors. Therefore it knows nothing about multicore.
So if Bfme has work to be done it approaches your processor and says to the first person it sees:
"Hey you! Do my work!"
Jon does the job really good, as he is a well trained worker. But the team has some problems - the first guy is always working an is totally overworked, but the rest can't help. They just never get work.^^
That's the problem with the engine. So for older games (like Bfme), you sometimes need more specific hardware architecture, which is sometimes not used anymore, as people realized that it is not as good as something else. That's also why people with a "good computer" get this error more often than people with an old computer.^^