Developer Support

OpenFeint 2.12.5 for iOS

words in developers context New in OpenFeint iOS SDK Version 2.12.5

Corrected bug to remove updateBadge reference from SDK.

Note: If you are using OFX, when you upgrade to OpenFeint 2.12.5 for iOS with GameFeed, please also upgrade to the latest version of OFX.

The OpenFeint Cookbook

Let’s get started with our first articles:

Supercharge OpenFeint Announcements with Custom UI

Achievement Theory Designing OpenFeint Achievements

The OpenFeint Cookbook

We’re pleased to announce the testing of something new here at OpenFeint support, the OpenFeint Cookbook. Cookbook articles take our base OpenFeint features and tell you how to supercharge them with instructions on how to mix our tech with some of your own custom code to build cool new features for your players. In addition, we’ll also offer helpful hints on ways of increasing player engagement and increasing sales. In our Cookbook articles we will also share best practices and any metrics that we can. We also want to hear from you, the developers, on what you’d like to see. If you have any feedback or suggestions, please send them to chefs [at] openfeint [dot] com and we’ll see what we can do to help.

Benefits of using OpenFeint Single Sign-On + OFUID

OpenFeint Art Assets and Branding Guidelines

Because OpenFeint is the premier social network for iPhone games, its important that players have a consistent experience using OpenFeint across games. This document lays out our preferred presentation of how OpenFeint is made accessible and presented to players within games. Weve thought long and hard about these guidelines and know youll get the most out of OpenFeint by following them. We have provided a complete asset pack in the appendix of this document with our logos for you to use. Be sure to download it and take a look.

Branding

There are a few places where we need you to display the inclusion of OpenFeint in your game. Properly displaying our brand will help ensure that your customers are exposed to the social opportunities that await them: branding in words context App Store Branding: The logo may be displayed as a watermark on the application icon. We highly encourage this! The following text must be displayed in your app description on the iTunes app store: [App Name] is OpenFeint Enabled. Oh, and please be sure to change [App Name] to the name of your app. In-App Branding: The logo may be displayed on the application default screen. If your game has a main menu, the OpenFeint logo must be displayed and look like a button. The OpenFeint dashboard must be accessible by touching it. While someone is using your app, OpenFeint must be accessible at any time, even in the middle of a game session; this may be from a pause screen. If your game has a pause screen, the OpenFeint leaf button must be visible on it.

Example: Integrating OFUnity for iOS With Your Application

Weve provided a library of acceptable OpenFeint logos, which can be found in the Appendix. You may not alter the colors of these graphics in any way. Any graphics which are provided on a transparent background may be placed on a background of your choosing, although the logo must be clearly visible (i.e. do not use the white logo on a white background).

OFX Frequently Asked Questions

What’s the difference between OpenFeint and OFX?

The OpenFeint SDK is created to allow developers to add in gaming features such as leaderboards, achievements, turn-based multiplayer, challenges, and social / community features. OFX is a separate SDK that provides the ability to sell virtual goods, virtual currency, and downloadable content (DLC). We recommend that developers integrate both OpenFeint and OFX as together they provide a significant value to players and your ability to reward and promote to those players.

What does OFX provide?

OFX is made up of 2 different components that can be mixed and matched to meet your needs. 1) Downloadable Content (DLC) Interested in adding more levels, new characters, or features to your game? Do it over the air by allowing players to download additional content from our OFX server and reduce your overall initial download size. This content can either be free or paid. 2) Virtual goods and virtual currency Sell virtual goods and virtual currency to your players. Stock and change store inventory, prices, and player inventory over the air from the convenience of the OpenFeint developer dashboard. In addition, you’ll be able to monitor sales and adjust your inventory, prices, and sales strategy on the fly. For both options 1 & 2 the big benefits are not having to roll your own servers and back-end, getting you to market faster with a powerful virtual goods platform.

Do I have to use everything?

Absolutely not, the OFX platform is designed to be flexible to your needs. Just need the DLC piece? Grab it out and get your players that cool new content faster than pushing updates to the App Store.

How much does it cost?

If you don’t charge anything for downloaded or in-app content, then the platform is free. For those interested in providing paid services to players, there is a revenue share that is detailed in the OFX Billing FAQ.

Is OFX available on Android?

At this time we’re still working on finishing OFX for Android and hope to have it available to developers very soon.

What happens if OFX servers go down? Can my users still make purchases?

In the extremely rare event of an OFX server outage, your players will still be able to make purchases of virtual goods and currencies, and can still be awarded currencies and items by the game. The only things that will not work are inventory synchronization, downloading store item payloads, and other functions that require synchronization with the server. Your revenue stream need not be interrupted!

Is there a game that has a good example of an OFX implementation that I can see?

Yes! Check out Megajump by Get Set Games.

Wait, virtual currency, isn’t that not permitted?

Cross-app currency is not permitted, so you are not able to create a currency that is shared between more than one app in the store. You are permitted to create a system for a single game to purchase consumable goods so long as real-money transactions occur via the in-app purchase system.

OFX Billing FAQ

Q: How much does it cost to use OFX?

A: There is no charge for distributing free game content. For paid content OpenFeint charges 15% of in-app purchase revenue after the Apple or Google share, which equates to 10.5% of the total.

graph with developer apple openfeint Q: So if I don’t sell any content via in app purchase I don’t owe anything?

A: Correct, if you only distribute free content you will not be charged.

Q: What is the 30-day free trial?

A: When first signing up for OFX it is not necessary to input information regarding billing. For 30 days you are free to implement the API and experiment with the online configuration tools. After 30 days you will be required to enter in billing information, but will not be charged unless you begin earning revenue in the App Store using OFX.

Q: Can I launch a game during the trial period?

A: No, OFX-enabled games cannot be released in the App Store without first entering in billing information.

Q: How am I billed for OFX transactions?

A: At the beginning of each month we will generate a report and you’ll be issued an invoice from the OpenFeint billing team.

Q: How do I know how much I currently owe OpenFeint?

A: We’ll be adding a running counter in the developer dashboard, but in the short term if you would like an update please email ofx-billing [at] openfeint.com.

Q: What are the payment methods?

A: OpenFeint accepts payment via check, PayPal, or wire transfer. When entering your billing information you will be asked for a preferred payment method. Note that this can be changed at any time.

Q: How do I deal with refunded in-app purchases?

A: We understand that occasionally you will need to issue refunds for purchases. To reconcile billing please complete THIS FORM to adjust your OpenFeint balance.

Test Users

You can make an existing OpenFeint user a test user by going to the test users tab and entering the email address and password associated with that account. Test users must be secured. (See How to secure an account) Developer accounts may not be turned into test users for safety reasons. users icons with different colors Once youve added a test user you can reset the users achievements and leaderboard entries by clicking on the game name, then selecting an individual high score or unlocked achievement to delete, or clicking delete all to delete them all. You can also unlink a users Facebook/Twitter account, or remove a user from a device. To remove a user from a device, find the device by its Apple UDID in the credentials list, and click delete. Then, remove the application from your device and reinstall it. When you launch the application again, you will be presented with the initial OpenFeint welcome/approval screen. Note that if you dont remove the application from the device and simply close and relaunch the app, a new user will automatically be created, but you wont see the welcome/approval screen.

Removing test user data from the server via the OF dev dashboard will not remove corresponding data from the client side offline data cache. To purge all client side data and prevent it from being resynchronized with the server it is necessary to remove the app itself from the device or simulator. Developer accounts may not be turned into test users. When you enter a developer e-mail and attempt to turn the user into a test user, the message may incorrectly report that it succeeded.

Chat Room Moderation

What if I dont appoint any moderators? All users have the ability to flag other users via the Report Abuse button on any players profile. If a player is flagged enough times then they will be banned.

So why have any moderators? Moderators can actively monitor your chat rooms from any game and out of game using the OpenFeint Moderator Dashboard. note: you must be logged in to access the link. In addition, moderator bans take effect instantly whereas multiple users must flag the same user in order for a ban to be enacted.

Are there any basic guidelines for moderators to follow? Moderators are expected to use their best judgment. Abrasive language, harassment, and inappropriate conduct are not permitted withing OpenFeint chat rooms. Abuse of the moderation system will not be tolerated.

Versioning

Overview Supported Platforms: iPhone: yes Android: versioning will be available soon OpenFeint supports the concept of versioning OpenFeint resources based on a version code stored in the instlalled app. You can use this to create new resources on the server and not show them to users of older versions of your application. This is useful when developing an update to an already released application. You can then add new leaderbords, etc, that arent visible in the previously released version but only in your new version.

Submitting Your iOS Applications for Approval by OpenFeint

Features Affected The following resources can be versioned: Leaderboards Achievements Chat Rooms Challenges

Quick Start Versions are managed through the version tab in the developer dash board. A min version and a max version have already been created. Min version appears in all applications, max version appear in no applications. When developing a new release that needs to be versioned create a new version for it in the versions tab and name it appropriately. The version number should match the bundle version of your release. For any new achievements etc. belonging to this release set their start version to the version of the release and end version to max version. Start and end version are set when creating a new achievement, leaderboard etc. These resources will now only appear in your new release.

How Version Is Specified In The App Each platform specifies the version associated with the installed app in its own way but from the servers point of view the format is the same; it is a a text string composed of up to four integers with a period between each. To this extent the version code resembles the format of an IP address. Apps built for iOS store the version information in the Bundle Version property of the plist describing the app. See Info.plist in the OpenFeint sample app for iOS. Android apps store the version information in the android:versionName attribute in the apps manifest file. See AndroidManifest.xml in the OpenFeint sample app for Android. OpenFeint servers will begin supporting versioning for Android in the future.