Entries in appstore (4)

Wednesday
Jan122011

No App Store? 100% of nothing is nothing: quit this entitlement bullshit already

This week’s #idevblogadaypost is going to be short and not so sweet. I can get ranty sometimes – normally when provoked directly. The provocation this time was less direct and more incessant. It’s the culmination of listening to a bunch of iOS devs – some of which I do actually hold in otherwise-high regard.

I’m sick of hearing iOS devs complain about Apple, about Apple’s policies and about Apple’s terrible treatment of developers.

It’s their platform. They created a market. If you don’t like it, fuck off.

I wrote started to write a full post about this earlier, and planned to bring together my thoughts coherently. I had references on market laterals from the HBR and everything. But I can’t be bothered. I am very much looking forward to getting this off of my chest as quickly as possible and getting back to what’s important: testing earth-tone base colors for the delivery of Citadel goodies I’m expecting tomorrow.

In virtually un-edited form, here are some of the notes I started to make earlier: 

  • Apple created a market. Duh.
  • It is, was and probably always will be their platform
  • Apple are known for lock-in to their stuff
  • Apple are known for not sharing things until the last minute
  • Re devs not having access until launch, some people seem to have managed just fine in getting stuff ready.
  • Just because you’re developing for the App Store, doesn’t mean that you represent the average, typical or most likely example. “Camera+ from Tap Tap Tap sold 78,000 copies on Christmas day, but no one else I know sees numbers like that” << of what relevance is that?
  • People like to moan… so most of what you read on the web (yes, including this) is people moaning. Those who are doing well have got better things to do.
  • Apple most probably think about what they do and how it affects developers – they know what they’re doing.  Maybe their considered opinion is that it works best this way.
  • Apple tend to stand by the information they do publish – they told us the Mac App Store would be 90 days, and it was 90 days.
  • “Apple's secrecy cripples their ability to have a positive relationship with developers.” So what? Their App Store continues to lead the space.
  • iTunes (the music store) is notoriously lacking in features for both users and creators / publishers… yet it is still head-and-shoulders above the competition (it also created a market). 

 

Wednesday
Nov172010

Mac App Store game dev quickstart for iOS developers (pointers, lists, links, how-tos and more)

We've been doing some preliminary research (and the more technical "fiddling") with Mac App Store potential for game development. So it seemed sensible to share our findings for this week's #idevblogaday post.

What you absolutely need to do first

Go join the Mac Developer Program. It costs $99/€59 and it's super simple if you already have an iOS Developer Program subscription.

Activations (the bit between you buying it and actually getting access to it) are now happening much faster than they were in the early days of the (then) iPhone Developer Program. Ours took about 40 minutes to come through.

When the Mac Dev Program first launched, we experienced some problems adding the program to our existing account as the primary Apple ID (mine) was associated with more than one iOS dev account. This seems to have been resolved now, and it prompted the expected "select your program" drop down.

Getting this done quickly is important for a couple of reasons - firstly because a lot of the resources from Apple are only available to registered program members, and secondly because it kicks off the process of submitting financial and contract information (if you've not already done this for an iOS dev program) - more on the pre-requisites to actually publishing Mac App Store apps later.

Clarifying a few things

Just to make this super clear for those who missed it: Apple is not launching an iOS layer atop of OS X, nor is it making the Cocoa Touch APIs available to Mac OS X applications.

What it is doing is providing a mechanism for packaging, selling, delivering, installing and updating applications that run on Mac OS X: the Mac App Store. Other than the review guidelines (see below), there's really little else guiding us at this stage. We know that we need to use XCode 3.2.5 to sign applications (and their installers), but even that may be up for debate (again, more on this later).

What can Apple tell us?

First port of call should be the Mac App Store Review Guidelines (you need to have your Mac dev account setup to access these). Love them or loathe them, they're a framework for what you can and can't do. And if we're talking specifically about game development, there's nothing really problematic. Hell, this is opening up a platform (and market) for indie games publishing that just didn't exist before. Take it for what it is and do your best, or go elsewhere.

There's also the Mac OS X Reference Library, but at the moment it doesn't really include anything specifically oriented toward apps targeting the Mac App Store.

Another valuable resource is the Mac App Store section of the Developer Forums (dev program account required). There's an excellent submissions FAQ post and amongst many others, a recent discussion on what "Copy Protection" really means (i.e. it's up to the developer). Again, this requires a dev program account.

We're going to get on to development tools and game dev-specific bits in a moment, but first...

Submitting applications

Make sure you've gotten your Mac Developer Program subscription.

Adding a Mac dev program to an existing iOS dev acct gets you free apps contract by default. I'm not sure what happens for completely new program enrolments.

From iTunes Connect's Contracts, Tax and Banking section, you need to submit / agree to the paid applications contract: 

  • Select request from the above page, then read and agree to the contract.
  • Setup any items stating "setup" - this will require banking and tax setup if you're not coming from an iOS dev account / and/or already have those in place. This takes time and is worth doing right away. If you're a non US resident, it takes a while.

Once done, you can manage both iOS and OS X apps from the Manage Your Application interface of iTunes Connect. Apple have provided a pretty good pre-flight checklist that includes all the key information relating to building and submitting applications. Key steps are:

  1. Create certificates to sign the application bundle, and the installer - get these from http://developer.apple.com/certificates/index.action#overview.
  2. Create a Mac App ID - this needs an application name ("description") and an identifier (Bundle ID) - normally in reverse domain syntax (i.e. com.36peas.macapptest).
  3. From iTunes Connect, select Manage applications > Add new application > Mac OS X App and enter the app name, the SKU number and the Bundle ID you just created.
  4. Complete the availability and version information (which is identical to that required for iOS apps, apart from the screenshot having a 1280x800 minimum resolution).

Once you've done all this you'll be sent to a completed summary in iTunes Connect for this app/version indicating the app's status as "Prepare for Upload" or "Waiting for Upload". It should be showing "Waiting for Upload" before you can use the Application Loader to upload your binary. 

Development tools - the basics

Basic toolset is XCode 3.2.5 (GM Seed currently). Best place for information on this is the home page of the Mac Dev Center itself, which includes an important "Important Note" about not being able to use 3.2.5 GM for building and submitting iOS applications.

If you want to do both (build for the Mac App Store and the iOS App Store) as of right now (November 2010) you'll need to either do a parallel install of the dev tools, or use separate machines. If you choose the former, there's information from Apple on the XCode installation configuration itself, a handy dev forum post with a step-by-step guide on installing XCode to a different folder and even instructions on how to change the icon for one of the versions of XCode to avoid confusion.

Development tools - for 2D games (Cocos2d)

So, we've not really talked specifically about games development just yet - here's where we start.

Given the relatively open nature of OS X, there's a good few options available to you. However, I thought it was worth focussing on just two - and two that are more likely to be useful/applicable to an iOS development audience. First up is Cocos2d...

The iPhone implementation of the (originally Python) Cocos2d framework has been a popular choice for iOS games developers for some time. It offers a relatively sophisticated and evolved (despite its <1.0 version) toolset for those looking to abstract away some of the basics.

A little while ago, in fact before the announcement of the Mac App Store if I recall correctly, the support for Mac targets was announced - effectively allowing the use of the Objective-C Cocos2d framework to create Mac-native applications.

Support at this stage is pretty limited, and there don't (at least from my somewhat basic desk-based survey) seem to be a huge amount of people moving forward with it. However, there's an application template available on the cocos2d-iphone.org forums that allows you to create an empty application that certainly builds and runs on the few Macs I've tried. 

Development tools - for 3D games (Unity)

Gaining popularity amongst iOS developers is the Unity development toolkit for 3D (and 2D) games. It's a commercial piece of software with a free version that is limited on features but does allow you to build for Mac OS X, Windows PCs and a browser plugin. With the right licenses, you can also build for iPhone, iPad, Wii, PS3 and Xbox 360.

In addition to Unity itself, you'll likely also need some modelling tools - Blender's a popular open-source option. For Mac users there's also Cheetah3D -- featuring a somewhat more straightforward interface.

Unity is a visually-driven environment, but relies on the .Net-supported languages C#, JavaScript and Boo (via Mono) for scripting -- which is where the significant bulk of actual game logic in Unity games is found.

Ultimately, you'll likely want to end up paying the license fees ($1500 p/user w/out iPhone) -- and may actually be forced to if your business turns over more than $100,000 per anum.

Another important point to note about Unity applications is that at present, Unity itself cannot compile and sign an application ready for release on the Mac App Store. It's expected that this support will be announced/released soon, but right now if you want to submit a Unity-built application you'll need to go through hoops to get there. Instructions on exactly how to get through said hoops can be found here, here and here.

What's next (apart from these links)

The Mac platform, apart from Marathon, Myst, Blizzard's continued support and recently Steam's arrival, doesn't exactly have the reputation as a place for gaming that the Windows PC (or even the iPhone) does -- but that's not what matters. What matters is that very soon many millions of dedicated Mac users will be presented with a way to access (and buy) quality applications (you've got to assume the majority of said users are now familiar with the concept of an "app store") built by people like you.

Apple haven't been any more specific on dates yet, just that the App Store will come to Snow Leopard before Lion, and that it'll be in the November-January timeframe.

In the meantime, here's a bunch of useful posts from ourselves and other #idevblogaday bloggers that are relevant to games development for the Mac App Store: 

Update: April 2011

Was just revisiting this for some additional resources on Unity targetting the Mac App store, in addition to the above, found:

 

Wednesday
Oct202010

This is important: reflections on the Mac App Store from a (iOS) developer perspective

What does the Mac App Store mean for (iOS) developers? Simple: I have no idea.

Nobody could have predicted the creative and commercial innovation spawned by the (then) iPhone App Store. The same applies here.

My original #idevblogaday post for this week was going to be about game controller design patterns, and was going to be suffixed "...iPad not yet welcome". That suffix was a lead in to an enthusiastic, but still frustrated, mini-rant about how the iPad has really yet to shine as a gaming platform. The majority of its titles either use (or abuse) their iPhone ancestory when it comes to control mechanisms. That will change as the platform evolves, and I'm very excited to developing a title that I see being a part of that.

But, everything just changed. Again. The Mac App Store doesn't just open up new design patterns, it opens up new commercial models, a massivley expanded marketplace and another solid charge of creative enthusiasm.

So, what do we know?

Discovery

The App Store opens up access to millions of customers that you couldn't get to before. Suck up the 30% because the expanded market more than balences that out.

Things like paid upgrades and grandfathering in existing licenses will need to be sorted out for some of the significant studios currently doing OSX development. Apple responded to feedback on the iOS App Store, why wouldn't they with the Mac equivilent? Remember it's in their interests to do so.

The most important thing to point out (and it would seem that many miss this), is that people love to buy stuff if shown how. Even more, they love to buy quality stuff. This is where we, as app developers come in. It was possible to purchase software for your smartphone long before the iPhone and the App Store - but it only became significant when Apple guided users down the path to purchase.

Feasibility

The stream-lined route to market makes a million niche apps feasible all of a sudden. And there are _lot_ of niches when you consider the evolved (sans a real cloud strategy) desktop experience we're looking at.

Standalone App Store app, not part of iTunes

A minor detail to some, but a telling sign for many -- if this had been based around iTunes I'd have had significant reservations about Apple's commitment. They understand how important this is, and we now know that they also understand that iTunes is a burden to iOS and the App Store in general.

Technology

This almost certainly means new technology (at least in the install/update and encryption space), but most likely also in a form of UIKit. Although developer.apple.com is sparse on detail right now, I'm sure someone will shout when we see more on what's coming down the API/SDK pipeline.

For iOS game devs there are a couple of technology treats waiting for you already - cocos2d already supports Mac OSX targets for example. How far behind do you think Epic and Unity are? 

The many ways of multi-touch

As I said in the introduction to this post, even the iPad is yet to catch up to its multi-touch potential. Given the prevelance of multi-touch interfaces made available to us by Apple - particularly the MBP-style touchpad, the magic trackpad and the iOS devices (I'm not one for the Magic Mouse) - there's so much more scope for innovation here.

I'm particularly excited about touchpad-based multi-touch applications on a desktop interfaces - yes, the precision is not quite the same as on a touch screen, but there are no more thumbs in the way (and no more thumb prints).

Installation and updates

Ever try to explain mounting a .dmg, installing and unmounting to a non techie?

I've been a full-on Mac user for 2 years, and I'm still constantly frustrated (and often confused) by application updates. No two applications manage it the same way, and very few get close to acceptable user experience. I don't care why it's that way, I don't care that it's in part due to my impatience. I'm not an idiot and it frustrates me. I want it to be better - and the App Store update system makes it better.

Miscellany

Full screen apps - I've not seen many apps get this right on OSX. Blizzard's WOW and Starcraft share a CMD+M keyboard shortcut. That's about as good as it gets at the minute.

90 days - enough time to think, not too little to panic.

--

This is a positive thing. Yes, there are scary bits for existing Mac devs -- but I don't believe there are many who haven't envied the willing market the App Store provides. You've got a choice, get on with it and reap the rewards or don't. As @mattgemmell pointed out earlier, "Devs who are relieved the Mac App Store is optional haven’t yet realised that that’s an irrelevant point." And, just as importantly @chockenberry's "Remember how much the iOS App Store has changed over time (with our feedback) — the same thing will happen on the Mac."

Oh, and in other news, Chillingo was just aquired by EA for $20 million. It wasn't their Windows Mobile or RIM legacy that got them there.

Saturday
Aug292009

iPhone in China, info for developers


What do we know?

  • The 3G & 3Gs (not actually confirmed yet - only reports are of 8Gb & 16Gb, so this could be either 2x3G or 1x3G & 1x3Gs) are coming (going?) to China Q4 2009.
  • They'll be available on Unicom, China's second-largest carrier with 140m customers.
  • The deal isn't exclusive to Unicom, although nothing else has been announced yet (China Mobile does have 500m customers though - we can suppose they'll be next).
  • Expectations of units shifted by 2011 are between 2m and 5m (Unicom have purchased 5m and there are already 1.5m gray market devices in use).
  • Expectations of cost to consumer are between $100 and $400 (earnings per customer are lower for Unicom than AT&T).
  • There won't be any WiFi (to comply with nonsense restrictions in China due to the WAPI / 802.11 dispute).

More on all the above at Reuters India and Wired.

And Apple's Chinese iPhone site is already up.

What does this mean for iPhone devs?

  • Lots more customers, obviously.
  • Well, maybe not quite - there are rumours of a Unicom-specific App Store. I can't see Apple letting this happen though and there's nothing substantiated.
  • There are no specific age ratings in China, but there are restrictions - WOW's not allowed red blood, piles of bones or icons that feature skulls. And C&C's certainly out - no "damaging the nations's glory".
  • General consensus is that Chinese gamers prefer free-to-play games supported by in-game purchases and advertising (Apple - sort this out! we need to offer paid DLC in free apps).
  • Online gaming, which is more established than mobile gaming is an $8.9b market, with 77% of that being made up by MMOs, casual gaming the rest.
  • Fantasy Westward Journey is the country's most popular game - an MMORPG. It has something in the region of 25m registered users and up to 1.5m concurrent players at any time.