What Went Wrong
1. Training Mode
The challenge for any game is to launch as bug-free as possible. This is especially crucial on the App Store, where a minor error can result in poor reviews and a lowered star rating. Testers reported 1403 errors -- including both the smallest ones that were corrected in five minutes as well as 193 fatal errors. The team worked almost nonstop, and the infamous record belongs to Jacek Szarejko, senior tester, who worked 46 hours in a row -- just like doctors in hospitals (he also recorded 3.13 GB of gameplay videos and photos).
Despite all of this, the first version of the game contained two critical errors, which meant that it failed to end if the player completed the final task ahead of time. The error slipped through testing because of some changes implemented in the version after the final tests, which theoretically weren't supposed to affect the training in any way. We immediately eliminated the problem in the first update, but for many players their first impression was associated with this error, resulting in a mix of one and five star reviews.
Early in the development, we were well protected from such errors. Once a week, we had a control of the files and code review. The document reported bugs and fixes, and attributed them to specific developers. Our goal was primarily to eliminate the problems of further development of the code. The advantage of this arrangement was that one person had an insight into the whole project.
We also had also several additional documents for our developers, thanks to which a new programmer could quickly get in the draft, for example one about the setting-up tools (configuration, commissioning of the project), technical docs (technical aspects of the implementation), or Unreal script best practices (code tips). Of course, the preparation of documents and full control required a lot of time. Krystian Komisarek, our lead programmer who dealt with the code reviews, earned the name of "doc writer."
However, in retrospect, we can still see some imperfections and shortcomings of our system, for example naming and sorting of reported comments in reviews which caused the use of the review to be very difficult.

2. iPod Touch (4th Generation)
Literally a week before the premiere, there were problems with support of both iPod Touch 4th Generation and iPhone 4, and we thought we had overcome them. After the release, though, it turned out that despite our efforts, there were still problems. We immediately informed players, adding a message to the App Store description of the game and apologizing to them. The error has been eliminated in another update, and players who purchased the game on these devices were rewarded with in-game coins.
We handled errors via FlySpray, whose advantage is the ability to add tags. It allows you to quickly search for specific errors, set the priority and specifying the percentage of its amendments. We added attachments (print screen, videos), which allowed us to fix or verify bugs quickly.
Testers also connected errors: if one error was due to another there was a chance that one patch will work for both. In addition, we always added the following comments to all errors: who and what improved, version, device. This allowed fast transmission of information to the right people. Unfortunately, even this system didn't save us from those two big mistakes. We're always striving to improve processes and learn from mistakes, that was a good lesson for us.

3. Documentation
The preproduction phase was rather short, and we didn't have much time to discuss some key game features. The main game design document and other additional documents (i.e. SFX and music list, voiceover document, game economy sheet) were finished as the project was moving on. Updating documents every week was a great way to monitor progress. For each documentation update, we sent a short outline of the changes to the team members with bullet points in the email giving them a glimpse of key changes in the project.
The information flow may fail a bit from time to time. We decided that the best way to improve the information flow was to organize meetings with the people involved in the implementation of specific features. Sometimes, spontaneous talks took place in the team's room saving us from lots of additional work or helped to solve the major issues.
|
One month and a half after release = almost 150 000 sales.
How can you hire 25+8 people for half a year at 300K?
Thanks for the answer. I could write exactly the same thing :-) Btw, great article about Anomaly!
Bram: I was thinking the same thing, there doesn't seem to be enough in that budget to pay the employees a reasonable wage...
WHAT WENT RIGHT
1. You write that "one of the key decisions was to bring people from different teams together to work on the game." Why was this so important?
Beyond simply providing more "hours" of production in the last weeks before release, how did having people from different teams working on the project make this particular development process better than it otherwise might have been? Did the diversity of perspectives or experience lead you to make novel decisions? Did you find that having people from different teams allowed you to generate more creative ideas, new ways of developing the game, etc? Just curious.
2. I really enjoyed reading the section on The Fighting System. I thought it was thorough and provided sufficient detail to allow me to see how it might generalize to other game development projects. Admittedly, I am not a game developer so maybe others who are actively making games feel differently.
3. Sounds like the decision to outsource some of the development was made early. I would be curious to know what criteria you used during your selection process. How many animation studios did you consider before making your decision to work with Dash Dot Creations? I have similar questions for your decision to work with Alvernia Studios and Studio OM. I thrilled to hear that it worked out for you and I think giving readers an understanding of how you came to those decisions would be really beneficial (especially if the cost of outsourcing to those particular studios is prohibitive for other projects).
WHAT WENT WRONG
1. Is it standard practice to implement changes AFTER final testing? Again, my ignorance of game development is exposed, but I am still curious. Based on my experience with other software testing and my understanding of other development processes, changes are not encouraged after final testing, for the very reason you illustrate in the postmortem. Are implementing changes after final tests a necessary evil?
2. I really appreciated the concrete suggestions you outlined under "Crunch Time." To give me/us some perspective, how much time did you spend planning and researching for this project? Having an a better understanding of the resources (time / money) committed on this project would give me/us a sense of what "more" means in this scenario.
Thank you again for your insights and contribution.
'Did you find that having people from different teams allowed you to generate more creative ideas, new ways of developing the game, etc?' No, it was the last month of the production. There was no time for such things.
The Fighting System - developer Diary Part #2 should help.
http://www.youtube.com/watch?v=hVbjjORop3U
The decision to outsource some of the development - developer Diary Part #1 should help.
http://www.youtube.com/watch?v=GwEbsqfkOOg
'Is it standard practice to implement changes AFTER final testing?' Well, "final testing" should mean "final testing". Theoretically... 'Are implementing changes after final tests a necessary evil?' It could be true ;-)