Bean Dreams is a bright and seemingly breezy platformer, but under that shiny exterior lies a surprisingly challenging arcade experience.
It follows closely in the footsteps of its predecessor, Bean's Quest, but adds enough new ideas that its simple bouncing levels don't feel overly familiar.
While it follows many of the standard tropes and trappings of similarly attired platformers, there's a streak of darkness running through the core of the game that asks you to fine tune your performance time and again.
Simple controls complete an experience that, while not at the very top of the iOS jumping tree, is pretty damn close to it.
You play the titular bean, who's bouncing across a series of themed levels, grabbing fruit and freeing trapped creatures with impossible to pronounce names.
At first glance everything appears remarkably easy. You bounce around automatically, controlling the direction of your jumps by tapping on the left and right sides of the screen.
But then you notice the bounce counter. There is an optimal number of bounces in which to complete each level, but hitting it is by no means an easy task.
There are five medals to collect on each level - one for collecting all the fruit, one for freeing the trapped axolotl, and three for hitting the bounce number.
These medals are used to unlock new sets of levels. Sometimes you'll need to repeat levels more than once to get them all, but backtracking and perfecting your runs is half the fun.
Working out which corners you can cut, which monsters you need to bounce on, and which risks you need to take makes for some fascinating play.
The controls are remarkably smooth as well. Bounces feel weighted in just the right way, and there's a neat rhythm to most of the levels that, once it clicks, will let you make short work of them.
There are a few difficulty spikes here and there, but for the most part you're usually just trapped by one of the three tasks, meaning you can move on to another level and come and try your hand again later.
The worlds are lush and well realised, and they're full of nods to other platforming series. Sometimes you're smashing blocks with your head, sometimes you're stomping on bugs from above, and sometimes you're bobbing through water trying to fight your own buoyancy.
But it's all presented with great heart and good ideas, never letting things become too staid, and never taking you more than a few seconds away from the next slice of play.
There are a few problems here and there, but they're pretty much negligible. The odd level will flummox you, the odd jump will feel a few pixels too high, but there's enough going for Bean Dreams that you'll forgive it the occasional foible.
This is a well put together, charming, and decidedly tough piece of iOS gaming. It's got enough arcade bite to pose a challenge, and enough simple ideas that anyone can give it a go. And they probably should.