A preview version of cocos2d-iphone v3 has been available for a couple days now. I thought I’ll take a closer look and summarize what’s been done, what’s working and what isn’t, what’s new and what’s old but revamped.
Installation
The installer script has been revamped. It has a different name (install.sh) and different parameters (-force instead of -f).
The first thing I noticed is that the installer is downloading Chipmunk2D. Made me wonder why, so I double-checked to confirm: Chipmunk isn’t included in the archive. This means no offline installation.
I’ll explain later why Chipmunk isn’t included.
Project & File Templates
In the preview there’s only one project template. It doesn’t demo any physics features, it’s your typical “Hello World” example with buttons.
There seems to be an issue with the template where any attempt to save it to a custom location caused Xcode to crash. In fact every time the “Save File” sheet came up and I didn’t click on “Create” right away, Xcode would crash. That’s just one of the reasons why it’s still a preview.
The CCNode File Template isn’t worth mentioning at this point, it creates an empty Objective-C class and is barely different from the regular Objective-C class template at this time.
Hello World v3
Continue reading »
Kobold2D v2.0.4 is now available for download, as is v1.0.3.
Both versions contain compatibility fixes for iOS 6, Xcode 4.5, Mountain Lion and a few extra features like (finally) Kobold2D Class Templates for Xcode.
The Most Important Changes & Additions
- fixed: iOS 6 initial rotation issue
- iPhone 5 widescreen enabled in all template projects
- Existing projects must add a [email protected] image with size of 640×1136 pixels to their project to enable iPhone 5 widescreen support.
- Mountain Lion: no need to lower security level to run Installer. Package is now signed by “identified developer”.
- NEW: Kobold2D Class Templates available in Xcode.
- Use as basis for new CCNode class files. Includes stubs of frequently used methods: init, onEnter, cleanup, dealloc, update.
Continue reading »
- Use as basis for new CCNode class files. Includes stubs of frequently used methods: init, onEnter, cleanup, dealloc, update.
… but not quite out yet. If you can’t wait until August 29 you can always buy the Alpha eBook version now (as PDF) and receive the final eBook version for free (as PDF, ePUB and MOBI) when it’s available.
I’ve updated the book’s product page and included links where you can download the source code for the 3rd edition.
Learn cocos2d 2 (Third Edition)
Release Date: August 29, 2012
What’s New
Cocos2D v2.0 is used throughout the book. To my knowledge this makes the Learn Cocos2D 2 book the first book to cover cocos2d-iphone v2.0.
ARC (automatic reference counting) is used exclusively in the book. All descriptions and source code projects have been updated to ARC, and 12 Cocos2D ARC-enabled Template Projects are included in the source code download. The book contains a description on how to enable ARC in a cocos2d project. Working with ARC means having to write and learn less code while being able to write faster code with fewer bugs. Win, win, win.
You can now also follow the book while using Kobold2D. Any differences between cocos2d v2.0 and Kobold2D v2.0 are explicitly mentioned in the book. In fact, you’ll have to work through less text and code if you use Kobold2D.
The book’s source code is compatible with Xcode 4.4, Mac OS X 10.8 Mountain Lion and iOS 6. It is of course also tested to work with Xcode 4.3, Mac OS X 10.7 Lion and iOS 5.
Learn more about the Learn Cocos2D 2 book here.
I just released a compatibility update for Kobold2D since there were numerous compiler warnings and errors introduced in Xcode 4.4.
Almost all of the issues were simply the compiler being more adamant about using the correct type specifiers in format strings. For example using %i for an unsigned integer or %u for an unsigned long type would bring up warnings. The solution is to use either the correct format specifier or casting the value. The latter is preferable if the underlying type changes depending on the platform. For example NSUInteger is unsigned int for iOS but on Mac 64-Bit it’s actually unsigned long.
You can get the updated Kobold2D v1.1.2 and v2.0.3 versions from the Kobold2D Downloads page. Continue reading »

Example ARC project. Pretty awesome.
Therefore I decided to enable ARC in all twelve standard cocos2d Xcode project templates for both cocos2d versions (v1.1 and v2.0), both platforms (iOS and Mac OS), both physics engines (Box2D and Chipmunk) and publish them on github.
You can download the ARC-enabled cocos2d template projects either as ZIP file or TAR file.
Kobold2D v1.0.4 is available from the Kobold2D Download page!
I’m terribly sorry for the hiccup with v1.0.3. There was an absolute path causing build failures for others, which of course worked on my systems so I didn’t catch it. I retracted v1.0.3 shortly after publishing it. The fixed version is now v1.0.4. If you happen to have downloaded v1.0.3 I recommend to upgrade to v1.0.4 right away.
The most important improvements in this version are Xcode 4.3 compatibility and working around a “file not found ../libkobold2d-ios.a” issue caused by the Xcode 4 Build Location setting “Locations Specified by Targets” (in Xcode 4.3 this setting is now appropriately named “Legacy”).
The Release Notes lists all the changes. Continue reading »
Wouldn’t it be awesome if you could update your game’s assets while your app is running? It turns out you can, and it’s not even very complicated.
Whether you want to tweak a game setting or experiment with a variety of image styles on the fly, this will be one of the things you wish you had been using all along! Either for faster development or as a design feature for your game.
In this case, we’ll build a New York Traffic Webcam viewer with Cocos2D. You will learn how to download files to your app at runtime with the iOS SDK and cocos2d-iphone, and how to check if the file on the web server has actually been modified.
Along the way you’ll understand how to use the Mac OS X built-in web server to speed up your development by replacing game assets on the fly. By copying files to a specific directory on your Mac you can make immediate changes to your running app!
And you don’t need any experience with HTML, Apache, or any other web server or web services technology. In fact, I consider myself to be an web-illiterate because I’ve hardly done anything programming-related with web services and servers in the past.
As usual, the project is available from my LearnCocos2D github repository under the MIT License. The project’s name is Cocos2D-UpdateFilesFromWebServer. To improve readability of the article I removed error checking from the code in the article.