Welcome to iPhoneGameTutorials.com! Check out our Tutorials page for a list of everything we've written
so far, and drop by the Forums to let us know what you would like to see written about on the site.

Getting Started With Cocos2D and OpenFeint

OpenFeintWe just started integrating OpenFeint into Drop Dead, the Cocos2D-iPhone game we released towards the end of last year. The process was somewhat grueling, given that Open Feint’s instructions, in my opinion, are really lacking in the clarity needed for someone doing this for the first time. Obviously I was able to find several resources online:

OpenFeint and Cocos2d-iPhone
Tutorial – Implement OpenFeint into Cocos2d Game
Integrating OpenFeint with Cocos2D for iPhone

But those are out of date at this point – OpenFeint is now up to version 2.10 and Cocos2D is at 0.99.5. So, after all the time we put into getting OpenFeint to initialize properly, we decided to throw together a template to help get you started with the process! We took the Cocos2D Hello World example, set it to be in portrait orientation, and put together an XCode project (using XCode 3.2.5, not 4.0 yet). Source code after the break! Click to download the template!

You will have to change a couple things – first, obviously, you need an OpenFeint account and an application that you’ve set up. Then, in Cocos2DOpenFeint.mm, modify these lines:

	[OpenFeint initializeWithProductKey:@"YOUR_KEY"
							  andSecret:@"YOUR_SECRET_KEY"
						 andDisplayName:@"YOUR_APP_NAME"
							andSettings: settings
						   andDelegates:delegates];

and replace it with the product key, secret key, and display name of YOUR app, of course! We’ve also set you up with some really bare bones delegates for OpenFeint callbacks for Challenges, Notifications, and “Bragging” on social networks.

As a side note, you will only see the “Enable OpenFeint” screen until you click one of the buttons on that screen – after that, you have to delete the app from the Simulator or your device to see it again.

Obviously this is just a starting point for OpenFeint – you’re going to want to actually use the functionality at some point. Here are just a couple of the API’s you may want to use to help get you started:

  • Submit a Score
    [OFHighScoreService setHighScore:score
    	forLeaderboard:@"leaderboardId"
    	onSuccess:OFDelegate()
    	onFailure:OFDelegate()];
  • Unlock an Achievement
    [OFAchievementService unlockAchievement: @"achievementId"
    	onSuccess: OFDelegate()
    	onFailure: OFDelegate()];
  • Check if the user has opted-in for OpenFeint
    [OpenFeint hasUserApprovedFeint]

Hope this has been helpful – let us know what you think and what else should be added! Click to download the template!

He is the co-founder of Goofball Games a mobile game development studio and currently resides in New York City.
Ameesh Kapoor
View all posts by Ameesh Kapoor
Ameeshs website
Share this:
Share this page via Email Share this page via Stumble Upon Share this page via Digg this Share this page via Facebook Share this page via Twitter

2 Responses to “Getting Started With Cocos2D and OpenFeint”


  • Greetings from Los angeles! I’m bored at work so I decided to check out your website on my iphone during lunch break. I really like the info you provide here and can’t wait
    to take a look when I get home. I’m shocked at how fast your blog loaded on my phone .. I’m not even using WIFI, just 3G .

    . Anyways, wonderful blog!

  • When someone writes an article he/she maintains the image of a user in his/her mind that how
    a user can understand it. Therefore that’s why this article is outstdanding. Thanks!

Leave a Reply

Notify me of followup comments via e-mail. You can also subscribe without commenting.

Tip: When posting code, put the following around your code for a better view:
<pre class="brush:c++">your code here</pre>




Switch to our mobile site