The more complex the software becomes, the higher the chance of some unintended interaction. And it isn't linear. It's exponential. And as the complexity grows you start shifting the time burden from dev to QA.
I've made a couple of games. None of them were even approaching the complexity of your average Super Nintendo game. I still spent probably 90% of my time testing and bug fixing. Hell, 90% may be underselling it.
As you go through the dev cycle, the work quickly shifts from adding new stuff to testing and un-breaking the existing stuff. And it never goes the other way. You spend more and more time testing and fixing and you only stop when the project is completed. And these days, not even then.
The hard part isn't making a game, it's making a finished game.
I've made a couple of games. None of them were even approaching the complexity of your average Super Nintendo game. I still spent probably 90% of my time testing and bug fixing. Hell, 90% may be underselling it.
As you go through the dev cycle, the work quickly shifts from adding new stuff to testing and un-breaking the existing stuff. And it never goes the other way. You spend more and more time testing and fixing and you only stop when the project is completed. And these days, not even then.
The hard part isn't making a game, it's making a finished game.