I don’t know if this is a dark secret of game developers, but games ship with bugs. Known bugs.
Part of the late development process is reviewing the bug list to see what most needs fixing. We all hate bugs, but we also love shipping. Not everything has to be fixed before release. The closer we get to making the release build, the stricter the criteria become. We’ve recently deferred a bunch of bugs that we would have fixed when we started the triage process.
Why be so strict? Because many fixes can have unintended consequences. We just discovered a fairly rare bug yesterday, which had been introduced by a change we made last year (which was tested back then and found to work perfectly as designed). Since even a simple bug fix can destabilize the game, we want to make sure any last minute fixes are truly warranted.
At the end of the process, the only bugs to be fixed are those that affect all players, prevent play, or make us look stupid. Most of what we’ve been finding lately have been issues that come up if you have tons of feuds, or when you made certain decisions and then ally a particular clan. These aren’t going to be that common. And even the players who end up doing that won’t be blocked from the game, or find it illogical. My classic “look stupid” bug was a game I saw years ago, where the publisher spelled their own name wrong on the title screen. Luckily we haven’t found anything like that.
But of course, we do want to fix all the bugs. So I’ve been making the fixes in an alternate branch of the code. As soon as everything is locked down in the App Store, we’ll switch over internally and start testing that.