I did not create the following products. But I help sell them through ads and affiliate links because they’re high quality and highly recommended. I get a commission for each sale made through these links, which in turn helps me spend more time on this website and on Kobold2D.
Paralaxer Platformer Game KitParalaxer runs on iOS, Android, Windows, & Mac using the same C++ game code. Thanks to the ultra-awesome, open-source Cocos2D-X game engine, Paralaxer is a cross-platform platformer. |
The iPhone RPG EngineRapidly create your own RPG or action-adventure game with this complete starter kit. Includes an ebook, game source code and a royalty-free art package. |
|
Commander Cool Game KitThis starter kit includes the complete source code of “Commander Cool” for iPhone / iPad / Mac build with Cocos2d & Box2d, extensive code documentation and video documentation (accessible online or offline) covering every beginning step to modifying the app for yourself. |
Angry Ninjas Starter KitRide the wave of success that sling shot games are seeing in the App Store and create your own popular game. All thats required is a bit of time on your part to build some fantastic levels and add your own artistic twist. We’ve done the hard part. Now you get to do the fun part! |
|
Visit the Ray Wenderlich Store! |
||
Also check out Sprite Kit by Tutorials! |
![]() The Starter Kit Bundle: Full Cocos2D source code and tutorials for creating a side-scrolling space shooter game, a platformer game and a beat ’em up game for iPhone and iPad! |
|
Ray Wenderlich and his team provide awesome iOS Tutorials and excellent Starter Kit source code. |
||
TexturePackerCreate sprite sheets and optimize images for your Cocos2D, Kobold2D, Corona and other game engine projects. |
PhysicsEditorEdit collision shapes for Box2D and Chipmunk based physics games. Supports Cocos2D, Kobold2D, Corona, and other game engines. |
With each new iOS device you’ll be sure to hear this argument:
“It doesn’t support Flash! Baaaaah, piece of crap!”
What bothers me most is that this mantra is repeated even by intelligent people, even developers fall into that behavior. But they don’t have an argument other than “I want it, I want it”. No really, it’s actually “I think I want it, I think I want it”. Why?
“Uh … well, Flash games!”
Here’s the problem …
If you like playing Flash games, either some in particular or generally consuming the daily new dose of throwaway games, you’ll be emotionally connected to these games. Of course you would want to play them on any device that seems perfectly capable of running Flash. So I understand the notion of wanting to have Flash on an iOS device. It’s entirely understandable.
What really bothers me, is how little even intelligent people put into what they’re actually demanding. Here’s a smack in the face - think about it!
Other examples include:
“Press any key to continue.”
“Use WASD to control your character, Space to jump, Ctrl to shoot.”
“Move the mouse cursor to the edge of the screen area to scroll in that direction.”
First of all …
All games that make use of the keyboard are out. Add to that the games which require a mousewheel or the distinction of left and right mouse clicks. I bet this will disqualify at least half of all Flash games. I expect that estimate is likely to be much higher if someone were to compile actual statistics of Keyboard and Mouse input use in Flash games.
Next, any game that relies on the concept of “mouse over” won’t work satisfactory, or not at all. There is no “mouse over” on a touchscreen device, there is only “drag & drop”. You have to touch the screen to move the cursor - it’s possible that games will interpret this as some kind of click and click, or drag and drop operation.
Finally, there’s the matter of precision. A mouse cursor has a hotspot that has an exact pixel position. A finger has a touch area, and although you can calculate the center point to be the touch location, it will be quite imprecise. Especially when you consider that users don’t see the exact point they’re touching - their finger is blocking the view. No Flash game has been designed to take into account that the clickable area will have a relatively large range of uncertainty. Many hidden objects games require you to touch locations to almost pixel-perfect accuracy - not to mention the unspeakable horrors of Flash UI Design with small fonts and even smaller buttons.
If you go into details, I’m sure there’ll be plenty more design issues. They may be subtle but overall important enough to make some games less enjoyable, unfair, unplayable or allow for exploits which could skew the highscores towards either mobile or web users. That’s bad.
Technical reasons
There are of course technical reasons why Flash, and specifically Flash games, won’t work well on an iPad or iPhone. The 1 GHz Dual-Core CPU of the iPad 2 is still an order of a magnitude slower than the slowest, Intel-based Mac Mini which clocks in at around 1.8 GHz (also Dual-Core). On older iDevices there’s only a single core ARM CPU with around 500 MHz. And surely you’ve experienced Flash games that didn’t run too well on a Mac mini, right? Imagine how they would perform on a mobile device.
Then we have the memory issue. The iOS devices have at most 512 MB of memory down to 128 MB. Not that bad, unless you consider how much is actually available for Apps. On a 128 MB device it’s just 30-35 MB. Not much you can do with that, and I don’t expect any Flash game to be optimized for this constrained amount of memory. Worse yet, a Flash game won’t receive memory warnings from the device and it’s developer certainly won’t respond to this warning. Plus, since running in the browser, the browser on the iDevice will consume some of the available memory itself. So what you get is some content-heavy Flash games and apps which will simply crash at a certain point, or not run at all because they’re out of memory. That’s not a good user experience.
We also have to consider the issue of screen resolution. Most Flash games run in a window with varying dimensions. On an iOS device, first of all you’d never get the fullscreen experience because the native resolution will almost always be different. Since Flash runs in the browser, the Flash games will have to be zoomed and scaled to fit the screen. In the worst case, the user has to do this manually because double-tapping inside the Flash window probably would be interpreted by Flash as a command, rather than by the browser as the command to zoom and fit the double-tapped content. In any case scaling the content will degrade visual quality while consuming more power because the content needs to be scaled (in most cases: up) by either the CPU or GPU.
What about Loading bars? Do you like loading bars? I’m sure you do. Because on an iDevice, the best you’ll get is a WiFi connection. I suppose that’ll be acceptable. But what if you’re on the road and only get 3G or even Edge? Do you like waiting several minutes for your Flash game to start up every time you run it? I don’t think so. Just try to remember how Flash websites felt back in the 90s when all we had were dial-up connections.
This could be better if …
Yes, if the iOS devices or even the iPads supported Flash, I’m sure Flash developers would take a little more care of the details that they actually can take care of. For example providing a real touch-aware user interface, or designing the whole game with touchscreen devices in mind.
However, only a minority of Flash developers would do so. The low costs of developing Flash apps and games doesn’t make cross-platform compatibility a real possibility for most. They make 90% or more of their revenue from hosting them on ad-supported gaming websites like Kongregate. Any other platform than the web has no relevance to Flash developers, and the iPad simply wouldn’t change that.
Once you do have a successful Flash game, it’s also much more lucrative to simply make an iOS version of it. Take for example Canabalt. It’s free on the web, but it sells for a relatively high price of $2,99 on iTunes. It’s also wildly successful. And it’s also a good example of why many Flash games simply won’t work on an iDevice - the screenshot further up is from the Flash version of Canabalt.
But Flash is good for other things!
Yes, if you like Ads, sure.
Oh, you mean those designer websites that you can’t even figure out how to use on your desktop? No?
What then … don’t tell me Youtube or those other movie sites. For one, there’s an App for that. And trust me, you’ll be too busy doing other stuff with your iPad than watching Youtube videos.
“There’s this site that won’t work …” - Really, you visit www.disney.com every day? You’re adorable!
So far I have not come across a website that’s entirely Flash-driven (eg won’t work without Flash) and that has you coming back. The one that gets closest is github.com - but no point in downloading source code to your iDevice, is there? Most Flash-only websites are once-in-a-lifetime show-off events. A comedy act, if you so will. The second time, it’s just not as much fun. And you can absolutely live without them.
I run a Flashblocker on my browsers, all I’m missing are Ads and rarely a few gizmos that I don’t even notice aren’t there. Almost all websites are intelligent enough to default back to a non-Flash version, which not only works better, it’s also easier to use, loads faster and consumes less memory and CPU time. There you go.
To put it bluntly
Flash has no place on the iPad, or any iDevice.
My real problem with that is the people who repeat the “no Flash support” mantra don’t stop to think about the actual problems in supporting Flash apps and games on a device like the iPad. It just won’t deliver the same experience as it does on the desktop. Those experiences can not be brought over to a mobile device by merely supporting a specific technology.
Moreover, I wish those in favor of Flash support for iPad would actually make an argument, rather than repeating “But that’s what I want.” - you’re like little kids who can literally only be dragged past a candy shop or toy store, crying all along. No toys for you, grow up!
This list is a collection of exemplary games and apps made with the Cocos2D for iPhone game engine. They should be seen as reference products in terms of what you can do with Cocos2D and simply the variety of games and apps developers have created with Cocos2D. This post is linked to from the Cocos2D book.
If you wish to add a game or app to this list, and you can provide prove or guarantee that it was made with Cocos2D, please leave a comment. From time to time I’ll move the notable mentions up to the actual blog post and delete it from the comments (to avoid duplication) but you can still grab some attention and a little traffic to your game by simply adding a comment to it here. And don’t forget that the official Cocos2D website has a games page, where you can also add yours.
Note: the order of the apps in this list is arbitrary, although I try to group similar apps together.
The “Great Apps Made With Cocos2D” List
The Elements (iPad) is a graphical representation of the periodic table of elements. The outstanding feature is the plentiful photographs and smooth 360 animations which invite you to explore the elements that make up you, me and the rest of the universe (excluding empty space, of which there’s a lot I’ve been told). It’s priced highly but worth every cent, and if you need an App to brag about your new iPad: this is it!
Note: iPad demo starts at 2:55
Bloomies is a colorful gardening game, full of bees. If that doesn’t sway you over, maybe the idea of fostering and nurturing your own garden does. The flowers need your constant attention and the gameplay is addictive just like any Tamagotchi-style game. Oh, and it happens to be made by two former colleagues of mine. It’s just a beautiful game, and so is their follow-up game Super Blast.
StickWars is a sort of Tower Defense game where you defend your castle from incoming stick figures by flicking them in the air or literally shaking them to the ground. The developer, John Hartzog, had never before worked with Objective-C or on mobile devices but he pulled it off. StickWars remains to this date within the Top 100 games and continues to be updated even a years after the initial release.
ZombieSmash is also a Castle Defense game, except that this time hordes of zombies are attacking and you get explosives, 16 ton weights, shotguns and other cool items that make a bloody mess to fend them off. Your castle is your barn and if you can defend it, you’ll be rewarded with a slow motion animation of the final zombie losings its, err, unlife. The outstanding feature of this game is certainly the ragdoll animation system that allows zombies to walk, crawl or otherwise try to move even if they lost some of their limbs.
Super Turbo Action Pig revives a simple gameplay concept of a scrolling level where your character always falls down except when you touch the screen to boost his jetpack. The extraordinary part here is that the game’s graphics are extremely well made and the overall presentation of the game, the trailer, the website and the humor are setting a great example.
Farmville, do I even have to explain what it’s about? It’s an incredibly successful Facebook game that has millions of players worldwide building their farms in an isometric landscape. It just goes to show how powerful Cocos2D is if a company like Zynga uses it to port it’s most successful game to the iPhone.
Zombie Farm came out on the iPhone even before Farmville, and it was also created with Cocos2D. It does have it’s own, unique edge and stands well on its own. If you have enjoyed Farmville, you haven’t played Zombie Farm yet! Visit the Zombie Farm forum thread.
Melvin Says There’s Monsters (iPad) is a beautifully animated cartoon kid story with professional quality voice overs. The story is cleverly constructed and has an insightful turning point. It’s a pleasure to watch even for an adult, and it also uses Cocos2D’s page flip animations very effectively. If you have an iPad and kids, it’s a must have!
Alice (iPad) is also a shining example of a kid’s book app for the iPad, made with Cocos2D and lots of Chipmunk physics mixed in for good measure. Visit the Alice forum thread.
Trainyard is an innovative puzzle game that was clearly engineered with the user in mind. It features a mode for the color blind, is optimized to use little battery power, saves and loads the game just as the user left it and even allows users to share puzzle solutions on the web, using a duplicate of the game engine written in Flash. This all besides being a really innovative puzzle game where you lay tracks and combine trains to match them with colored trainyards.
AbstractWar 2.0 is a dual-stick shooter featuring colorful and effectful geometric visuals like its role model game Geometry Wars on Xbox Live Arcade. It’s an intense space shooter with plenty of game modes. You can even play it in multiplayer via a Bluetooth connection and it allows you to use your own iPod music.
Fuji Leaves is an interesting music game, where dropping balls hit leaves and depending on speed and location of impact, a sound is played. With several balls on the screen bouncing around you can dynamically create musical scores. It’s intensely fascinating to play this game, trying to come up with interesting scores and just the right placement of leaves. Before you know it, an hour has passed.
Moonlights borrows the grid-building physics from another popular Indie game. If you wouldn’t know it, on first sight Moonlights looks and feels just like World of Goo, and that alone is no mean feat. Visit the Moonlights forum thread.
Checkmates Chess (iPad) is as gorgeous and elegant as chess can be. You can play against another human or the computer (well, against the iPad to be precise). Making use of the full size of the iPad, you can now leave your pieces at home. Visit the Checkmates Chess forum thread.
WOS Blog has a post online which really sums up well how i look at the App Store:
“Don’t believe anyone who whines that it’s hard to make money with a really good game on the App Store, viewers. They’re either lying, or imbeciles, or both.”
It’s called How not to do it and covers some basis of why certain Apps succeed while others fall by the wayside. Sometimes it’s a matter of beating someone to the market, other times to learn from other’s mistakes, but mostly to price your Apps fairly.
A while ago i read about Indie game developers who eventually thought it would be a good idea to spend 3-6 months on their next game, to sell the App by means of quality and content. While there are chances that this will work and even reward you greatly money-wise, it also increases your risks by several factors. You’re going down the same path that leads to similar problems of the AAA game developers, albeit on a much smaller scale. It’s a hit-driven business. If you did moderately well on your 1-2 month games, and then you do a 3-6 month game, your chances of making it a success get slimmer and slimmer. It does help to understand the market and marketing but even that won’t help you if the game doesn’t vibe with players.
So, would you rather have a less than 50% chance of making it (relatively) big, or a 100% chance of doing moderately well?
Of course, if you can keep running the 100% part of your business you should really consider making the bet. But if you have no money to spare you should stick with moderately well and instead keep pumping out moderately well doing games. Make 8 of those over the year and you got yourself a respectable business nonetheless.
I wonder what happened to those Indies and their “big project”? Hmmm …