[Note: This is the second part of an article that Toy Studio programmer Kee-Won Hong wrote about his experience developing Battling Ships for the Nook Color. Be sure to read the first part of his development story of Battling Ships where he outlines what went right with the development. This part, he outlined some of the things that will be done next time to keep improving on the development process.]
What will be done next time
Deploying to the device sooner
I talked about the importance of being able to deploy to the device quickly in the section before, and this applies not only to each build cycle but to the general development of the game as well. I didn’t get the game onto the device until late in the prototyping, and then did not do regular builds to the device until later in the development cycle. As good as the Corona simulator is, things look and feel differently on the actual device, especially in terms of display resolution and input. Also remember that tablets aren’t going to have the horsepower or memory of your development machine, so you will see differences in game performance.
In building the prototypes, I skipped implementing 2-player mode for as long as possible, until the other single-player modes were practically complete. Although it allowed us to test the single player more quickly, not adding this feature until late in development added development and testing stress because of the need to rework the existing code to support two players. In retrospect, this was a big feature that definitely that should have been included in the prototype.
This is something of an inevitable problem: the first time you start working with new hardware and a new environment, there are going to be pain points that you don’t know about. In this case, two specific issues caused me a lot of trouble. First, Corona doesn’t support functionality for showing the device keyboard in the simulator, which meant that this was only testable on the device (our team is working building our own a virtual keyboard to get around this). Second, there is an Android defect around multi-touch defect that occurs when the user is “dragging” an object and then taps on the screen with another finger. It’s a known defect but something I had not planned for, and worse still, it was another defect that could only be tested on the device. On the bright side, discovering these issues now means that future projects can account for these problems ahead of time.
Better use of third party tools and libraries
Corona has a great community of developers that are working to provide tools and code to make development faster and easier. For example, there are two tools I eventually utilized for creating the ‘Hit Effect’ sprite. That greatly reduced the amount of work that I needed to implement the effect. Utilizing third party tools from the start would have made development significantly easier and faster.
Have a good process for releasing and testing
This is an obvious need for anyone who has worked in software, but even on a small team it is critical to have a good process for building, releasing and testing. It doesn’t need to be complicated; for our needs it was as simple as using a consistent build number that would show up on the device and then sending out an email with change information for each build, allowing testers know what build they were playing and what defects had or had not been fixed. On my side, I kept a list of changes for each build and would only mark a change completed once it had been tested on the actual device. Once implemented, this simple process greatly increased the efficiency (and greatly reduced frustration) of our team in finding and fixing defects.
I really enjoyed working on Battling Ships and I think we’ve created a great, quality product. So far through the second day of release we’ve gotten great reviews on the Barnes & Noble marketplace; it’s a great encouragement to see people enjoying the game and providing positive feedback. I’m very thankful to the whole team at Toy Studio for all the great support provided during development, and wanted to give a special shout-out to our Battling Ships artist Coty Goodwin for providing original, stylish and high quality art the game. Even with the pain points I experienced, I had a lot of fun creating my first mobile game and am excited to continue using Corona to create more great titles.