Monday, December 26, 2011

Say hello to Pocket Boy 2.2!

Hello everyone, Pocket Boy's 2.2 update has just been released.
We are working a bit silently on this title, but we keep monitoring all the feedback we can get and try to make improvements for our users. Before the iTunes Connect service and the Apple Store went on vacation, we wanted to push a bit of extra work on it and improve the app even further before the holidays.

This is a bugfix release mostly, but we took the time to test and deploy new technology under the hood of the title to make the game run faster and improve its reliability.
  1. Some user reported some crashes on iPhone 4 handsets and by the description of the crash I traced it back to a quite rare and random event that could happen sometimes when the app booted up and it had not been run and paused in the background already. Very annoying bug, but as a coder it is embarrassing when your program misbehaves. I think that coders do generally hate the thought of defects in their work, although in projects of a certain size (think an Operative System) it is impossible to think of it as bug free... I think you tend to prepare a good and reliable update mechanism and put safeguards in your code to limit the potential damage of vulnerabilities and local exploits.
  2. Framework Gotchas: it turns out that Cocos2D nodes, actions, and touches do not get along too well. Touching a node that is moving because of a CCAction it is running can give some problems. We had the idea of having an animated menu to get it out of the way when the user did not need to go back and forth or see the instructions. It is not something anyone ever complained about (not to us at least), but it is something incredibly annoying to discover this crash and later on humiliating to find out that it is not the first time somebody reports it. Still, a few words of advice to you: no matter how you implement it, disable touches on nodes/sprites when they are running an action (like a CCMoveBy one for example) or at least do not let them happen concurrently. I'll try to get some more info on that because if I do not like bugs in the code I write, I like curing the symptoms even less. The root cause in Cocos2D is still unclear to me right now.
  3. Physics glitches: with the flowers and the buttons there are some instances in which you will get flowers stuck together and buttons overlapping other buttons. Considering that the framerate was quite smooth and high in those scenes (especially on the new iPhone 4S) I thought that tunneling because of framerate issues was not the cause. Given the time constraints, the fact that the CPU on all target platforms could handle more load, I was happy to be able to fix this problem using Box2D's Continuous Collision Detection support (Bullet flag) and increasing the number of physics steps: this way the system is better able to handle fast and sudden motions of all the little objects better.
  4. Intro screen on iPhone/iPod touch devices: perhaps to better shame me for the previous issues I just mentioned, the graphics for the first page of the app (language selection menu and title screen) were cutting my name off :). The fix was simple though, a few touches with Gimp and the issue was taken care of. 
Thank you for your support and for any feedback that you might want to share!

Happy holidays!

2 comments:

  1. Ciao, ho conosciuto questa app tramite il mio blog, sul quale voi avete lasciato un commento! L'app sembra carinissima e vorrei provarla! (ovviamente vi lascio una recensione!!!)

    ReplyDelete
  2. Ci fa piacere se lasci una recensione! Scrivi al sito e te la mandiamo! Ciao!

    ReplyDelete

Related Posts Plugin for WordPress, Blogger...