I’ve been playing a lot of Star Wars: The Old Republic lately, a new MMO from developer BioWare and publisher Electronic Arts that I’ve been looking forwards to for a while. It’s a fun game, but there are quite a few bugs, and I’ve noticed a lot of people complaining about bugs: There are too many bugs, patches aren’t fixing enough bugs, bugs aren’t being fixed fast enough, etc.
This is going to piss you off, but you don’t know how software design works.
It’s not like you just submit a bug straight to a developer with nothing to do and he does it. It has to go through filtering to make sure it’s not a repeat of another know issue. Then it needs to go through verification to make sure that it is actually a bug and can be replicated. Then it needs to be prioritized and assigned. Even after it’s been fixed it still needs to go through verification again, and back and forth until the bug is 100% fixed.
Then it needs to go through regression testing, to make sure the fix hasn’t fucked anything else up, and if it does it needs to go through the entire process again.
Lets not even talk about how long it takes to compile a game like TOR (note, Bad Company 2 took two full days to compile, TOR’s way bigger than battlefield). So more often then not they probably batch changes together, which means if the regression test fails they need to go through and figure out which of the 40 changes they made broke a feature.
Then, before release they need to QA it, which means they need to test the entire client and server from the top to the bottom. We’re talking everything down to making sure talent points save after you commit them.
Lets not even start with deployment. How many servers are there? Imagine having to baby sit each one through the entire process and verify that the database have been backed up (we don’t want the users to lose their characters…), verifying that the data got backed up. Upgrading the database then restoring the backup, then verifying it again.
It’s not something small. It’s a process. There are priorities and procedures that need to be completed, otherwise the team is going to mess up.
I can guarantee you that every other MMO developer (hell EVERY developer) goes through this process.
He perfectly sums up the issue, so I’m not even going to explain it further.