Remix.run Logo
▲ i_c_b an hour ago

It's interesting that he brings up Diablo 2 and Diablo 3 (and Quake for that matter), though, because I think it really foregrounds why these discussions are so fraught.

I worked in early AAA in the late 90s, and it's true that games were often quite rough around the edges. But they were also often biting off WAY more than they could chew, inventing genres and innovating like crazy, often in messy ways that didn't always work. But that meant players were often also routinely and genuinely surprised by the experiences they encountered in even big budget games.

He lists a bunch of quality of life and balance issues that were fixed in Diablo 3 compared to Diablo 2... but, well, Diablo 2 was obviously _important_ in ways that Diablo 3 wasn't. It's a much greater game.

And lurking in the background is the hard fact that often the progress with software (certainly game software) entailed turning to much better software engineering standards, using much better external libraries or game engines with much larger teams, and relying on much more process to capture and filter all those rough edges... and along the way, you've built a much, much larger team with a much larger burn rate, and so all those experiments and innovations become much more dangerous and need to be corralled and controlled and mostly stifled, and as the cost of all this to build skyrockets your entire game design _has_ to focus on your business model and your microtransaction story and your live services first and foremost, because you've boxed yourself into a corner where that cash flow issue is the central fact of your game / software design.

(I experienced this evolution first hand in the FPS space)

All of which is to say, I think there are multiple different axes at play here for evaluation, and it's probably fair to say that software _undefinably_ was much worse in the past along some of them... but not all of them. And there are probably deep tensions and tradeoffs between some of those axes.

I think this entirely discussion really is muddied, though, too, by the fact that hardware got radically better over this entire arc as well, and so many programming techniques in the past that made software more brittle or crash prone hinged on memory and computation optimizations techniques that really had nothing to do with the software culture of then or now. It was just a response to the realities of the hardware.