Madness…? This is the App Store!

Let's see, the bad news: it seems that I am unable to update the Jewels 2 iOS-version any further. The good news: umm, let me get back to you in some days time. It's time for another rant folks!

As you can see from my previous post, I happily announced the iOS-release of Jewels 2 — it was great to get it out and have some time off. Since that, I've been updating the Android-version occasionally, fixing bugs and adding minor things. Of course I wanted to get the same fixes out for iOS as well, and finally about a month after the initial release I had an update ready to deploy to the App Store. Business as usual, right?

I waited for a week to get to the app review, which was then rejected. First time for everything, huh? 🙂 I had forgotten to add "Restore"-button to the IAP-Shop, so that was valid reason to reject it (of course it should not have been approved initially either). But another reason was also given:

Specifically, the app name and screenshots are confusingly similar to the popular app Bejeweled Blitz.

They had attached one of my screenshots showing a lightning bolt. Hmm, I thought. "Confusingly similar"? Well yeah they're both match-3 with gems, like thousands of other games out there. And yes, there seems to be lightning bolts in both games. I didn't think much of it, implemented the Restore-button for purchases, replaced that particular screenshot and resubmitted within a day.

Another week went by and the game was reviewed and of course rejected again.

Specifically, the app name and screenshots are still confusingly similar to the popular app Bejeweled Blitz.

This time they had attached three of my screenshots. I tried to figure out what it was that was so "confusingly similar" in those shots, comparing to some pictures from Bejeweled Blitz (a game I've never played; the old, 1st Bejeweled is still the only game in that series I've actually played). As for the name, I don't think it is very easy to confuse "Jewels 2" with "Bejeweled Blitz", but I guess it is possible, so I changed the name in the metadata to "Jewels 2 (Sequel to iJewels)" to avoid any confusion.

When I asked Apple about what was wrong with the screenshots and the name, I only got a reply that they scheduled a call with an Apple representative. I thought it'd be easier to handle this through email/Apple Resolution Center messages (especially considering my spoken English sucks!) but that was not an option, it seems, since they didn't reply to my comment about it.

After a couple of missed calls (my fault) I spoke very briefly with a member of the app review team. He said that the backgrounds are confusingly similar, so I just need to change those screenshots. Alright, good to know! Another week had passed by and personally I'd preferred to have that answer given when I asked about it earlier instead of insisting on calling me. Oh well, couple of weeks here and there, no matter.

Right after the phone call I then googled some screenshots of Bejeweled Blitz and indeed both these games have some nature scenery in the background (although mine are dynamic 😉), so I tried to select screenshots that don't have similar scenery elements in the background. Another submission for review, with changed name and not so "confusing" screenshots I expected that matter was finally settled. Took some time but not a big deal, right?

Except I got rejected again! Raise your hand if saw that coming. 😄 I have to commend them of having the decency of rejecting me sooner than a week later, though. The reason for rejection:

Specifically, the screenshots are still confusingly similar to the popular app Bejeweled Blitz. For example, the "jewels" are identical to those in the app Bejeweled Blitz. Additionally. the lightning bolts are very similar. It may be appropriate to also revise the app's content.

Well shit; thanks for telling me NOW that the whole damn artwork is "confusingly similar" — it's not like I would have liked to know that a month ago, or maybe even when the game was first approved into the App Store! Way to go Apple!

Also, this line in particular was interesting: "the "jewels" are identical to those in the app Bejeweled Blitz." Identical, really? Since English is not my first language, I went to to check what they had to say about the word 'identical'. on identical: similar or alike in every way

"In every way." Sounds about right. Now let us compare those "jewels" from both games. (For the App Store review team members amongst us, Jewels 2 is on the left hand side while Bejeweled Blitz is on the right.)

Identical jewels? Really?

Hmm. Similar shapes and colors, sure, but identical? 😛 As a side note, with just a quick search I found several games (on the App Store) that use graphics stolen from Bejeweled, I'd rather call those identical.. Apple of course replied that just because there are approved games that are non-compliant with their terms, does not mean that my game can be approved. Fair enough, it's their store after all.

Basically this means that I cannot update Jewels 2 for iOS any longer, unless I redo all of my graphics and effects. And that's not going to happen. Maybe if I stole the graphics from some other game it would be alright? 😛 To think I used hours upon hours of my development time fighting the piece-of-shit IDE that is Xcode in order to make the game work nicely on iOS, damn… 😐

Yes yes, if you're just itching right now to make comments like "you got what you deserved by making a clone game!", well, go right ahead, this would be the perfect opportunity for such a laugh. Hilarious, even! Had your fun? Awesome, glad I could entertain. That's what games should do, right?

* * *

Back to topic at hand. Now I kinda see what they're coming from, perhaps — if you're half-blind — you could confuse these two games by their appearance; a match-3 game is a match-3 game no matter how you slice it. But the way this whole incident was handled, that just is ridiculous. Why approve the game in the first place if it's not appropriate? Why not tell me — when I clearly ask — what the problem is, from the beginning, instead of making me guess and wait for a month? Why waste time of both parties? Why state in a phone call that I only need to change the backgrounds in the screenshots if I actually need to change the whole fucking appearance of the game?

All this has left such a bad taste in my mouth, that I just might be avoiding the iOS platform in my future endeavors and Apple products in general from now on. This is coming from a guy who has an iMac, two Macbooks, an Airport Extreme, two iPads, iPod touch and four different iPhones. (Most of those are test devices for testing only.) Luckily I'm mostly a PC user (I especially hate coding on Mac, pure insanity!) and I've been a happy Android-user both in tablets and smart phones since 2011, and actually even my wife made the switch from iPhone to Android just a month ago (unrelated to this incident, believe it or not) so I think we'll manage. 🙂 I also might be overreacting a little, but that's for a future me to decide. For now, it seems adequate to let off some steam. Maybe I'll watch Commando while at it. 😉

Finally: I know I've been critical about Android in the past as well, but that platform has improved hugely in last couple of years whereas iOS has stagnated a long time ago (might change with iOS 7, but doesn't really matter to me). Plus developing for Android has none of that provisioning profile + certificate nonsense, I can just toggle USB debugging on and test on my device. Best of all: they're unlikely to pull off shit like this on the Google Play Store! 😉

Phew! Usually I don't write posts like this, but this was such an weird experience that I just had to document it. If you made through the whole beast of a post: what do you think? Am I just a whiny asshole that should not have made the game in the first place, or do you agree that maybe this could have been handled differently? Is there a lesson to be learned here, maybe for both parties? Feel free to sound off in the comments! Cheers everyone!

PS. Quickly go and grab Jewels 2 and iJewels from the App Store before they disappear (might happen, after this venting who knows?), with the caveat of no further updates!

Jewels 2 now available from the App Store!

Jewels 2 on iPhone 5Exactly one week after the Android-release, Jewels 2 is now available from the App Store as well! Get it now while it's hot! 😉

Available on the App Store

Tip: On some older, fill-rate limited devices such as iPhone 4 and the original iPad, you might want to go to Jewels 2 Settings -> Advanced Settings and tick the reduced resolution box, then exit and restart the game. Also turning of the "Water Effects" helps if the game feels sluggish.

Another tip: If you happen to have several devices such as a phone and a tablet, do check out the awesome game data sync feature in Jewels 2, and have your game profiles and saved games synchronized across multiple devices! Just sign in with Google+ (from the main menu) and you're good to go — it's especially cool since it works across platforms: start a game on your Android-phone and resume it on your iPad, for example. 🙂

It's alive!

Jewels 2 is out for Android, right now! Will be interesting to see how it starts going on it's own, out there in the wild.

'Tis but a small game, but still one I've been working on for almost two years (not full time, though), so it feels nice to have it finally out there. 😄 Of course, the iOS version is still missing, but fear not, it has been submitted for review and I hope it will make it in a week or two. 🙂

So go ahead and try the game if you're rocking an Android device, it's free. Be sure to let me know if there is any problems.

Android app on Google Play

I want to close with post with this amusing infographic I made this morning. Just for fun, I (roughly) counted the lines of code in Jewels 2 (don't worry I have a tool for that, didn't delay the release by manually counting each line 😉), all about 90k of them, and assigned them into game-specific code or engine code. The results are… well, let's just say I might be using something like Unity for my next game. 😉 Is it worth making your own engine? ... Yeah

The release draws near…

Got some cool news for you: it looks like I might make it for a May 31st release with Jewels 2! (Android only, iOS will be coming later.) That's like, this Friday, right? Pretty cool if you ask me. 😄

As the Jewels players on Android have suffered with the worse Jewels-version (compared to iJewels on iOS) for years, I want to reward them for putting up with the original all these years. This means that I will be launching on Android first, followed by iOS as soon as I get approved. 🙂

Little disclaimer: this information is not 100% sure yet, but I'm maybe like 95% confident that I can release this Friday. 🙂

Follow me on Twitter and be among the first to know when the game is live! Naturally I will be also updating this blog when the time is ripe, but Twitter is quicker. 😉

Jewels 2 Status Update

Jewels 2 COLLECT-mode

UPDATE on May 20th: So Google I/O 2013 happened. They announced — finally — a gaming service called Google Play Games. This is pretty much what I was expecting to have after last years I/O, but nevertheless the thing is now real. The biggest surprise was that it also supports iOS devices! 😲

So I had already integrated OpenKit for Jewels 2, which was great, but there were some nice bonuses with Google's solution. After thinking about it for some days and trying the code, I made the decision to switch to GPG from OpenKit. As GPG also supports iOS, there was not much point of keeping the both services implemented.

Naturally this has caused a delay in Jewels 2 development, since I had to rewrite the leaderboard and cloud save (*) stuff, but it only took about three days of work, so not that bad. 🙂 However, Google requires a game using the services to have at least 5 achievements. As I wrote earlier (below, actually), my plan was to add the achievements in a later update, but now I need to have them in by the first release. Oh well, shouldn't take too long. Still a few days of May left, let's see if I can get the Android version out before June (probably not, though). 🙂

*) Doing cloud save is actually pretty difficult when you cannot merge the datasets when there is a conflict.. The end result is that the game should not be played simultaneously on several devices when syncing on the same account, because only the latest sync is kept. I'm still testing various approaches of manual, semi-automatic and automatic sync. If I could merge the datasets, using automatic sync would be a no-brainer, but alas, it's more difficult in my case. 😛

The original post is below:

Long time no write; it's time to unleash a quick post for your reading pleasure! I have some exciting news to share with you — and no, it's not the release date, sadly that one is still a mystery even to myself.

However, I can give you the Ultimate Deadline(TM) for Jewels 2. This has been known to my Twitter followers for some time now: I will do my best to release the game before July 2013, hopefully sooner than later! What's so special about July, then, I hear you ask? Oh, you didn't ask? Well I was sure I… *ahem* Anyway, in July my wife and I are expecting our second baby, a little sibling to our now 3 year old daughter. So that's the Ultimate Deadline(TM). 😄 Now, if I had to guesstimate the release date, I might be inclined to say May instead of June, but too early to tell for certain..

But wait! There is more. Remember I talked about the social gaming components earlier? Continuing on that note, I am hereby announcing that Jewels 2 will support cross-platform leaderboards (and hopefully cloud sync of game data) through Google Play Games (see the update above) our friends at OpenKit! This means that players can compete with each other in the numerous game modes, no matter whether they're playing on an iPhone or an Android device. 🙂

And even better, I'm hoping to add in cloud synchronization of the game data, meaning all your player profiles (if you have more than one), statistics and saved games in Jewels 2 are accessible from any other device you might have. On iDevices Jewels 2 naturally also supports Game Center leaderboards. Of course, should Google unveil some magical gaming component at this years Google I/O, I'd be delighted to support it as well.

As for achievements: currently the plan is to first release Jewels 2, and then in a later update add some achievements for the players to reach for. What's on my TODO list before the release, then? Well I've still got a couple of background scenes to draw/set up, the cloud sync thing, some minor code thingies and some polish. And testing, of course. So not too much work, actually, which is nice. 😉

What else… Oh, you might have noticed the screenshot on the right? (That also appeared on my Twitter before; keep an eye out for more, especially on #ScreenshotSaturdays! 😉) It's from the COLLECT-mode, where you need to collect an increasing amount of each jewel per level.

Aaaand that's it for this post, bye!