The fact is, the more you try to use Unreal 3 tech for what it's implicitly designed for (FPS/TPS games), the less friction you will have. That's why things like Bioshock and Mass Effect are fine, and Too Human (weird angled beat 'em up?) and Hoop\/\/orld take body blows.
U3 is a middle ware solution for people who want to work inside of its possibility space (case in point: Bioshock is a very different take on FPS games, but on the whole it works to the strengths of the engine). Stretching to new paradigms is far, far more work.
Sorry, I'm not that familiar with this sort of thing -- what's the difference between an FPS/TPS game and a weird angled beat 'em up, engine wise? It sounds like just a difference in the code used to control the camera?
(Note: This is all regarding Unreal 2.x (for the original XBox), which has since lost any support. Dunno how much Unreal3 tech is improved).
Kind of, yes. It sounds like a simple fix, but the problem was, this "simple fix" was amidst a bunch of crazy spaghetti where, for instance, (IIRC) each human controller was implicitly assigned to a camera... so if you're doing a sports game in unreal, you had to do a surprising amount of work to disassociate controller from camera - having one camera per controller makes sense for an FPS/TPS (one view each), but not for a game where players share views. Those sorts of assumptions were all over the place in the code. One programmer said that the code base was "Started with the best intentions in mind for extensibility, but was short changed by too many hacks and rushed coding jobs - one assumes due to crunches. These temporary fixes were never ultimately repaired, so there's a lot of junk in there to clean out before starting your own game." - Naturally, for any game engine, you're going to get some stuff which is hard coded for the game it was originally used to make, but there were quite a few cases where game code and engine code mixed inextricably, and lots of work had to be done to separate the two - i.e. it wasn't a "ready to go" modular engine.
A lot of assumptions were made/hot rigged into unreal tech... or atleast, there were a load when we were using Unreal 2.x. I can't tell you details particularly (two reasons: I didn't have to unjumble the code personally, but heard complaints from coders who did, and also, NDA I guess), just that there were a lot of shortcuts and obviously rushed bits of code which served Epic's games and deadlines far more than they served their licensees... which, I hasten to add, is understandable. Engine licensing is their "side" thing.
I don't mean to come off as too critical toward epic. Considering what they've achieved, it's all very impressive. Certainly better than I could ever do.
It's just that it sounds like SK went through similar pains to us, so I can see where they're coming from, even though I'm not a big fan of sueing. Seems like they were slightly washed over by the hype of the engine (fucking excellent artist/LD design tools - which you can SEE, but not the best code base, but you can't see that until you license it) and hoodwinked into thinking it's all proper win. Mark Rein clearly does his job well
Hindsight's 20:20 and all that, but I think that they made the wrong choice choosing that engine for the kind of game they wanted to make.