Updated Feature Request List for the Corona SDK
In my previous Corona SDK Review (when both versions were still in beta), I gave a little rundown of some of my requested features, but that’s not what the focus of that post was.
I decided, it won’t hurt to “voice” my realistic wants for upcoming and future versions of the Corona SDK, so that’s what this post will do.
The features I’m listing aren’t just things that would benefit myself and current Beebe Games projects, but would greatly improve the Corona SDK and help position it even better among competing products (my opinion, of course).
1. In-App Purchasing
I believe this is currently in the works, but still stands as the #1 feature I want that Corona currently lacks.
The app store is a tough place to be in right now. We get an initial sales boost on the first day or two after approval, but after that, each app makes peanuts unless we get lucky. In app purchasing would help our business a lot, as well as a lot of other developers which in turn will help Ansca Mobile retain more customers—it’s a win-win for everyone.
What about Android developers? In app purchasing is HUGE on iOS, I think Android will adopt something similar eventually. If the API is included for iOS, then when something similar comes out for Android, everything will be in-place for it. There’s plenty of things in the API that say “for iOS only at the moment” (such as OpenFeint), I think In App Purchasing should be one them.
2. External Library Support
I know the Ansca folks are tired of hearing this one, and they already know what all the benefits are to having it available, but it’s one of my personal requests which is why it’s on this list!
But seriously, the engineers at Ansca figured out how to bring us the awesome SDK that is Corona, so I wouldn’t put it past their ability to include a way—that won’t expose Corona or put it at risk—to extend the SDK with external libraries (such as the In App Purchasing API, Game Kit, more OpenFeint features, etc).
The beauty of this request is that, unlike requests such as offline builds, etc. that could potentially put Corona at risk from a marketing (and source-code security) standpoint, this feature would actually be even more of an incentive for people to use the Corona SDK, because limitations would be very few.
As Corona becomes more popular, it would be almost inevitable that any new API that Apple comes out with would be ported over by some third-party, in a very short amount of time at that.
The ability to extend Corona using external libraries would also relieve the Ansca engineers of a lot of pressure and feature requests because they can TRULY focus on the cross-platform side of things and let the developers worry about platform-specific features such as In-App Purchasing, Game Center, etc.
And yet ANOTHER benefit is that Apple would look highly upon Corona because the reason why Apple isn’t so fond of third-party SDK’s is because they HATE the fact that their cutting-edge features that set them apart from competing platforms can’t be used by folks who use SDK’s that don’t support them.
With the ability to extend Corona (without exposing or putting Corona at risk), the Corona developer community would find a way to implement most (if not all) of important platform-specific features without bombarding Ansca with feature requests to support them (e.g. this feature, in app purchasing, etc).
3. Improved Sound and Music
Right now there seems to be a few bugs and general quirks in the way Corona handles sound effects and music. For example, I can set the volume of music, but not for sound effects. Sound effects volume goes by device volume that’s set BEFORE they enter the app.
Also, when music starts playing, THEN the sound effects volume adjusts to the level the music is playing, but as soon as the music stops, the sound effects volume goes back to the level it was before (sometimes quieter, but usually louder).
I think just including something like OpenAL (or something similar) would be Corona’s best option, similarly to how they used Box2D for physics. Physics is Corona is awesome—it was a great decision to integrate Box2D into the SDK as they could focus on what Corona is really about, and take advantage of advancements made from a more specific library.
I doubt physics in Corona would be what it is today if they decided to build it from the ground up on their own. Not because Ansca engineers aren’t capable of doing so (I’m sure they are), but because Box2D has been around longer and has had time to refine their physics capabilities.
Bottom line: how Corona implements physics is how I think Corona should implement sound.
4. True Background Operation (Multi-Tasking Events)
It’s the future of iOS, and it’s already available within Android (though I’m sure the way Android does it, it already works, but I’m not 100% sure about that).
I personally think it would greatly improve many games and apps if pushing the home button DIDN’T exit the app every time (for those running iOS 4+ that is).
5. Access to More Device Functions
Specifically, the device Contacts and Music Library. I would love to be able to allow players to select music from their OWN music library if they want, and would also like to build apps that allow people to access their personal Contacts list.
6. Game Center Integration WITHIN OpenFeint
I’m not asking to include Game Center integration separately, because the OpenFeint version that Corona currently runs actually supports Game Center, it’s just a matter of enabling it. And for Objective-C developers who already have OpenFeint integrated into their app, I looked at the steps it takes to get Game Center “turned on”—it’s downright easy—I encourage Ansca engineers to take a look at it, I think if they do, I think it’ll definitely be included as an option in the next Game Edition release.
My best guess is, since the right OpenFeint version is already implemented in Corona, it shouldn’t be too difficult to include that feature in the next release.
7. Build for Mac Option (eventually)
I know Corona is all about mobile development, but it seems more about being cross-platform and easy to learn/use. In light of the upcoming Mac app store (read Marco Arment’s predictions, it got me a little pumped), it would be nice to build a Mac version and submit it to the new app store as well.
This isn’t anything urgent for me personally, as I enjoy developing for iOS and eventually Android, but it would be nice to NOT have to resort to using a different SDK when it comes to porting my apps over to the Mac app store.
And that’s it! Of course, there are little things I’d like to see included here and there, but everything above pretty much encompasses all I really want to see included in the Corona SDK at this point.
If all of the above, or just half of the things listed were to be implemented, not only would it make A LOT of people even happier with the SDK, but I think there would be no question about what SDK to choose when it comes to potential customers choosing Corona over the competition (mainly Unity, as I don’t think GameSalad can even be seen as a competitor anymore). In other words, Corona would GET and KEEP a lot more subscribers.
I want to stress that the above aren’t gripes or complaints I have about the current Corona SDK. Ansca has done a more-than great job so far, and I know most (if not all) of the above is already on their list of things to do. The Corona SDK is succeeding, and I only want to see it succeed even more. I think the features in the above list would pretty much guarantee that.
The Corona SDK is still 50% off for the next few days (offer ends November 1st), so if you think you might be interested in purchasing a subscription, NOW is the time to do it!
CORONA4YOU coupon code at checkout to take advantage of the generous discount offer.