I can see two reasons this happens. Among some developers I’m sure their is a desire to pad a story and make the game longer. This gives many games, like GTA IV, what I’m going to call a false climax. You have a point in the story where you feel like it should be over, but instead you’re hit with more rising action and another, much less powerful climax and absolutely no resolution.
Other developers, I think want to leave the door open for a sequel and, like in Bioshock, feel like they need to walk readers down that path before the story ends, even though they’ve already accomplished everything they need to to deliver a powerful story. The end result, of course, just waters down the entire experience.
http://kotaku.com/5016409/why-game-endings-suck-i-think
There’s one other reason, as well. Most developers make their game in chronological order. That means they do the ending last. The last thing that gets done on a game is almost always the thing with the least amount of polish and most cut corners — you just run out of time.
Of course, just because you do something first usually doesn’t help either — because at that point you don’t know what kind of game you’re making.
That’s why so many games have great middles, average beginnings, and shitty endings — at least in my experience.
Wait, great endings? Was that a typo?
Well what’s the alternative? We could do the middle first, beginning second, and ending third? Wait that still makes the ending the last thing. Divide it into four parts: beginning, middle, more middle, and end. So we’ll do middle, beginning, ending, more middle. I’ve never really made a real game, but it seems like doing it in that fashion would get confusing. Wouldn’t it? But if it were an option, I’d say make the beginning and end the better parts. As I’ve said before, you don’t even see the ending if the beginning isn’t good enough, because you just stop playing. I should have stopped playing FFXII, but I just didn’t, wondering if they could really keep the mediocrity going for the whole game. It was just astounding to me. I was waiting for a good cutscene or interesting plot twist or character…development I guess, and none came. They did a fine job on the battle system, though it may have been tedious. But FFXII was one of those games where I just kept playing to see if it got any better. Outside that and wind waker, I’ve never done that before. So I’d say if you’re going to have to choose between a good ending and a good beginning, go for the beginning. Maybe you could do ending, beginning, middle? I mean, then your beginning would be well done, and the middle might be not as amazing as it could have been, but you don’t necessarily need certain elements that you might have planned, but the player will never know. They’ll notice something missing from the ending or beginning, but not from the middle as much.
I think the key to it is twofold:
1) Don’t do the beginning or ending first OR last.
2) Spend the most time on the beginning of the game.
The hard bits are making it all mesh with the story (when usually the story is written later in the process) and making sure that you train everything you need to in the first level.
Another thing you can do is finish all the levels early and then give yourself extra time for polish.
Though that’s a very tricky thing to pull off, scheduling-wise.