truth be told, i've always been a little leery of games reputed to have "a great story" 'cuz either they have none, or it's completely cliche'd or just utterly lame.
Pariah is a perfect example of this.. reputed to have a really good story, but in actual play, it didn't have any to speak of.
Wow... someone else paid money (I'm assuming) to play Pariah...
The game wasn't that great from a story point of view, and the game engine sucked royally (yes, I know it was a modified Unreal 2 engine), but it was fun anyway.
Anyone else sick of games that don't work on dual core CPUs? Yeah, there's no excuse for it. Maybe three or more years ago, when multi-CPU systems were very rarely used for games, but for the last couple of years they've obviously been on the way and should therefore have been catered for. Or are developers really stupid enough to assume that since a game runs on a multithreaded environment on a single CPU it will run fine in the same environment on multiple CPUs? Are these people really stupid enough to think that multithreaded == concurrent code execution? If they are, they should not be writing multithreaded code, but that's the price we pay for letting companies like Microsoft develop 'event-driven' APIs, also known as "let's allow people with no knowledge of concurrency to write code that appears to work but actually has assloads of latent bugs buried in it."
First rule of API development: don't let anyone fiddle with stuff they are able to break. Anyone who breaks this rule shouldn't be doing professional software development, period. In the case of concurrency, if the 'user' of the API doesn't have to consider mutexes they shouldn't be using said API unless all (and I mean ALL) that stuff takes place inside it with NO POSSIBILITY AT ALL of spilling over into luser space.
And here we see the problem with this particular game engine: not only did the developers stupidly let programmers fiddle with concurrency without understanding it, but they also assumed their code would be running on the same core all the time.
IF YOU'RE BASING YOUR TIMING ON A CORE'S INSTRUCTION COUNT, YOU'RE DOING SOMETHING INHERENTLY RETARDED.
Aaaarrrghh, I hate programmers who make arbitrary and stupid assumptions about the execution environment.