There’s no moral dilemma, I have no idea how you’re reading morality into this. The goals are in general things that NO ONE WAS PLANNING ON WORKING ON. Maybe some one would have worked on tile support, maybe someone would have worked on z-levels, you can second-guess all you want, but here’s what happened, the core project developers got together and discussed whether a kickstarter was a feasable, a good idea, and how we could leverage some funds to push the project forward. What we came up with was “pay a dev to work full-time on a list of features it would be difficult to impossible to complete”.
You don’t seem to appreciate the difference in productivity between a developer working on a project in their spare time and working on it as their job. Working on a project in your spare time is HARD, I get home from work in the evening, and instead of relaxing and shutting my brain off, I put in several more hours of work on DDA that’s generally more challenging than what I do at work, but here’s the thing, for even that short amount of time, I’m not operating at 100%, because I’ve already put in 8 hours of coding, and DDA gets whatever is left over. If I have a hard day at work, I might not be able to accomplish much at all because I’m too tired to focus properly. Additionally, I can’t work on a single problem for more than a few hours at a time, because I just don’t have that much contiguous free time I can put into DDA, so my coding sessions are all broken up. There are several features in the game that I coded in single long coding sessions, but I can’t those very often because I rarely am well-rested enough and have enough time to do that kind of thing. Pretty much all of the other devs are in a similar situation, where DDA gets what’s left over after the rest of their life.
Being able to fully concentrate on the project makes a massive amount of difference. You can make far more effective use of your time, because you don’t have to keep switching between this project and work projects, and you can use your most productive hours of work time for the project instead of more likely spending them on your dayjob. In “professional” games, there are usually only a handful of core coders, and they can be massively productive because that’s all they do, they can absolutely move mountains.
The “difficult” scenarios you outline aren’t actually that much of a problem, the real issues are infrastructure and performance, but I’m confident those will be tractable. Not easy, but we can do it.
Paying for “bugfixing” or “merging” or “testing” might have been nice, but it literally wasn’t an option, Kickstarter requires you to have deliverables, so we could have a kickstarter for features, but not something nebulous like “stability” or “project management”. Also paying for someone to do merging is problematic in general for the same reason, there’s no simple way to judge progress, so you can’t really say whether someone is doing their job. It literally suffers from the “someone would have done it anyway” problem, because well I’m not getting paid, and I’m doing it
Finally there’s a super-specific problem with paying someone to do merges, because it would pretty much have to be me, and I’m not in a position where I can quit my job and do DDA for three months like GalenEvil can. You can’'t just hire someone to do merges, because it requires deeper understanding of the project than anything else you can do.
If you really want to contribute money toward merging, my btc address is 1LFeCofMPEkbVkB4T61KwWbXYZfySZC4TG, you can flattr me at https://flattr.com/profile/kevingranade and I can give out paypal contact info on request.