Most devs make their money on their 2nd game. Assuming their 2nd game is an improvement from the 1st one. You build the base with the first project and start to get a following. Then you complete that game, which hopefully has good endings, and that will build hype for the new project. When you start the new project, you gain more followers in addition to the followers from the first game. So I don't necessarely agree it's better to milk a game, rather than to complete it. Completing the game, and starting a new one, will likely lead to more money. Very few devs are big out of the gate. Not even Pinkcake made a lot of money with AL on patreon.
As far as why so many games are abandoned. I think it's multiple reasons. Some of which are understandable and largly out of the control of the dev. Some of which are directly inflicted by the dev too.
- Personal issues. Everything from mental health to family issues to death.
- Sometimes the developers hardware fails and they didn't have any backups.
- Legal issues. This is very unlikely, but I recall a pokemon game that was abandoned because the pokemon company threatened legal action against it.
- Burnout. A lot of devs work on their games a lot. Too much even. You can't do a creative, and often tedious, project for 80-100 hours a week. Especially if you also have a regular job. This is also bad for physical and mental health.
- They wanted to make some quick money, and when that didn't happen they quit.
- They didn't have a plan but they wanted to make a game anyway. So they downloaded Daz and Renpy and starting working. But they winged it. They didn't think of anything beforehand, and they either get stuck or just made a crappy game that nobody liked so they gave up on it.
- Perfectionism. I can't think of any games that a perfectionist developer has completed. They either get abandoned, or updated so slowly they'd never be completed in any realistic scenario. Come Inside, AWAM, Ocean's games etc.
- Biting off more than you can chew. Animations. Too many characters. Complex branches (which means complex coding).
To go into more depth on those last 3 reasons:
You need to have a plan. This doesn't mean you need every detail written down, but you need a guideline or something to help you along. Some simple text documents can be a huge help to keep track of things, write down ideas and build a general gameplan or timeline for the game. A lot of games have crappy endings because the developer didn't know what the ending would be before they got to that point. Ideally, you know what the endings are, or at least an idea of them, before you release the first update. Building towards that end goal. Instead of building blindly and deciding "Well, I guess it's time for endings. Hmm...now what?" This is why so many endings feel rushed and sudden. And why many games don't make sense, the developer is making it up as they go along.
Perfectionism is the enemy of progress. You aren't ever going to get anything done if you do 1 step forward and 2 steps back. You do work, but it's not good enough. So you redo it. Then you redo it again. You do complex postwork. 5 minutes per render in Gimp/PS over 500 renders is a whopping 42 hours of work. Does that make the renders look really good? Sure, but you're making a game, not an art exhibit. I've said is elseware, but if you can do A+ art at max effort aim for B+ quality art in your games.
You have this grand idea. It's gonna be an amazing RPG style multi-branching game. It'll have great animations. Great writing. Great everything....and then reality hits you squarly in the face. You aren't a coder, so how exactly will you create code for this game? Google and tutorials? It's a start, but it's probably going to drive you batty. Have you ever made any animations before? Probably not. Do you know how to write multi-branching stories with a dozen LI's? Probably not. If you bite off more than you can chew you'll go nuts. You don't have these skills yet. Or maybe any skills at all. This goes into what I said first. Your 2nd game should generally be better than your 1st. Because you gain skills, learn and practice as you make your first game. Then apply those concepts to your new game.