One of the most challenging parts of Madagascar was getting the Cocos2D-X code to run for both iOS and Android platforms. It was challenging because unlike Unity, 'write once and run everywhere' scenario was not a success on Cocos2D-X. Developers had to make sure that written code is checked on both iOS and Android devices, on a weekly basis to get the code working on both the platforms.
So, from the engineering perspective, iOS and Android versions were not in sync initially which was an issue, as our idea of releasing both the versions simultaneously didn't materialize. The main challenge, therefore, was to bring the two versions together.
We faced issues while working on Sprite Sheet too - if one character/animation needs change, even if it's just one part of the character's facial expression or gesture, then the entire Sprite Sheet has to be changed, not just the frame. Despite these issues, we still continued with it because it is an effective tool for animation.
The users who downloaded the game weren't coming back after 2,3 days. We developed a social simulation game where users had to build the circus at a time when players have already lost interest in such games because the market was inundated with similar stuff. Had we introduced some mini games initially, it would have been easier.
Also, the players were getting a huge number of bananas (the currency) for free and so weren't interested in purchasing more. So from monetization point of view, we didn't gain much. Our other biggest challenges, therefore, were retention and monetization.
We had to make sure that storyline of both is in sync. The game would have monetized well if we thought in a different line. As social simulation games were our strength, we thought 'Madagascar' can be built easily. But we later realized that there were some design flaws. We would have tweaked the concept had we known earlier.