Ok, so, I guess first of all, the features I needed from my engine were quite simple, I wanted the highest flexibility in terms of platform as possible. There was one issue here, much as mobile gaming can now be quite lucrative and can get a decent amount of attention... I am not sure if I'm allowed to do mobile games, specifically iOS games, due to my contract at work. I don't think it would cause an issue unless I started making a lot of money out of the game, but because of this I was focusing on desktop OSs with posibility to branch into consoles at a later date if needed.
Secondly, I wanted some flexibility with the engine itself. I have no issue working with closed source proprietary software when it's needed however, previous experiences with such systems have made me prefer an open system where I could change things if I really need to (instead of getting the reply, "sorry, you can't do that with X" on forums/IRC)
Lastly, I needed a community. With my game being a personal project, I don't (currently) have other programmers to bounce ideas off, or help decypher source code and APIs. It doesn't matter so much that the code and APIs are clear and documented (although it's always nice) but more that if I am incredibly stumped with an issue, I could post and say "hey, how would you do Y, I've tried it in the following ways" and get an answer this decade. Again, had bad experiences with other projects.
So, next up is what engines I considered. Well, first up was UDK. A great all-round package. Has some very impressive results and it's relatively cheap for indie development. However it fell down on one point for me. I'm a Linux user. I've done various talks about playing games on Linux and developing games for Linux. Much as I know the linux gamer market share is pretty abysmal, I would feel wrong not contributing to the games available for Linux. Since Epic no longer support Linux, this was out.
Second was the open source id Tech 4 (iodoom3) Again, had great results, far more than I could possibly need. Also, it contains Carmack-code... which adds a certain something to it The issue with this was, mainly, the license. Now, I have nothing against GPL at all, in fact, I think it's a great thing, but it is a little constrictive for indie game development. I fully intend to release my game source at some point, but would be more difficult to get any compensation for the development (I'm currently out of pocket after commissioning artwork)
I didn't bother to look at OGRE again. I used it for a group project at university. OGRE itself is well documented. Has a thriving community. More than good enough for the job. The issue with OGRE is also something you could consider a strength... the plugins. There are plugins for anything and everything. They are all... hmmm... how to put this nicely... well... some of them are crap. We found that after trying to use 2 plugins (which were little more than wrappers for external libraries) we would have saved time to integrate the libraries directly. They're usually half written to solve a specific problem for one person and then released as a generic solution. By the time you've found the issues, you've wasted a lot of time.
I briefly considered Unity, but it has the same issue as UDK in that it doesn't support Linux. Also a few other pet dislikes with Unity, but largely irrelevant.
After coming to these conclusions, I spent a while looking at what other options were available (do I sound too picky yet?) I found Crystal Space and, like you, found it to be a bit of a headache to get anything working, so I decided it wasn't worth it. I had a look at the Sauerbraten engine but decided that repurposing a first person shooter engine for my third person adventure game would be more work than was worth it. XNA had the issue with Linux support.
Then I found Maratis. After sounding so overly critical about other engines, I don't want to make it seem like Maratis is the solution to all my problems, it has quite a few downfalls. However, the main thing that led me to say yes to Maratis is that, the first thing I did was email Anael to ask a couple of questions. He replied quickly in a friendly manner and was helpful and competant. After that I sat on the forums a bit, firstly just reading and seeing the frequency of posts, the content of them, and later, responses to my posts. Again, I found the forum, although not exactly busy, to be reasonably active and helpful. The issues with Maratis that I came up with are firstly the lack of proper publishing support, something I ended up contributing to and the lack of extensibility in the engine. Now, I don't want this to sound wrong at all (incidently "Anael's Wrath" sounds like a good title for a video game... ) Maratis hasn't got a lot of bells and whistles. It does a job and it does it pretty well, but there's nothing extra. Also, the design of Maratis is sort of geared towards a small, sleek engine. Bulking it out with the plethora of features that can be found in something like UDK would for one, probably reduce the average code quality, but also increase the complexity of Maratis. You could technically put any extension work you wanted into the game plugin DLL, or standalone game project executable if that's what you wanted but that doesn't lend toward generalised solutions and reusable code. Anael then mentioned that he actually had a plugin system, but it was removed from the release. Of course, if the plugins were enabled again, it might lead to a situation similar to what I found with OGRE, where there are many sub-par plugins. However I think it's the right path to attempt, and I think Anael does too (I'm not putting any words into his mouth here )
I think this deserves a tl;dr... so here it is:
tl;dr: UDK - no Linux support,
iodoom3 - GPL too constrictive,
Unity - no linux support,
OGRE - *shudder*
Maratis - not as "complete" but active, open and friendly