Why does most of game programmers (for large companies I mean) release poor games ? Because they lack time. Why do they lack time ? Because player wait for the game, investors (and developers, incidentally) wait for the cash, and during the developing time, no game is released and no cash is earned. Plus, the technology keep upgrading, so the longer you stay on adding custom dialog trees and dynamic shops, the more you'll have to update the graphic engine to keep it up to date.
You know what will be great ? A game that'll constantly be under development, with releases every year or so (after an initial longer development time of course). Think of DF, or better yet, think of all these professional software like Photoshop or Microsoft Office. After releasing a new version of the program, the developers start adding more feature and bug fixes for the next version. But in the videogame industry, once the game is released, everything involved in it's development (short of the 3D and game engine) is discarded, and if they want to make a sequel, they start against from scratch.
Just imagine if Morrowind was still developed. Now we're talking about an almost 10 full years of development. Just imagine : by now, every single NPC will have a unique story, there would be a neat physic engine, modern graphics, a lot more content, etc. But no, they decided to stop developing it after 2 add-ons. All of that would have been added release after release, the same way toady cut his oncoming features into "arcs".
Well, the modders communities compensated it someway... but they do not have complete power. They can add new weapons, new quests, new cities, new textures, but that's almost all. The game engine, physic engine (or it lack thereof), combat mechanism etc... is hardcoded and un-moddable.