I wanted announce that I've managed to start working on bringing Jewels to the iDevices (at least for iPhone + iPod touch), even with the taking-care-of-the-baby-business! I've only recently started writing it from the grounds up in C++ with some Objective-C (or actually Objective-C++). (If anybody remembers, the original PC-Jewels is written in C#/XNA, while the Android-version is naturally in Java.)
This time I'll be using OpenGL ES (which, in retrospect, I should have used for the Android-version as well), so iPhone gamers will be getting the smoothest Jewels experience yet! I might even throw in some extra eye candy, just for the heck of it!
I've registered to the iPhone developer program, so I can test on the real devices, which is great. I'm aiming on making the game run perfectly on iPhone 3GS (and newer devices) hardware while still keeping it working fairly well on the older HW (like iPhone 3G). These are of course still only estimates, but something of a goal nevertheless. I'm liking the iPhone SDK so far, and even Objective-C isn't as scary as it looked like before! But as I said, the majority of the code will be in C++. This actually makes a full circle: I had been using C++ for years before I made a switch to Java, and now I'm back in C++ along with learning Objective-C as well! Neat how things turn out.
As to why I'm doing Jewels again (for the third time!), instead of doing something else. Well, it has become a pattern of some sorts for me; while learning a new platform / language / API, I've ported Jewels over. The original was simply because I wanted to try coding with XNA. Android-version sprung out from the desire of learning to write for Android. It was a better game as well. And now it is iPhone. I'm learning new stuff and I firmly believe that this will be (again) the best Jewels yet!
Oh, I also noticed (only a few days ago) that there is already a game named JEWELS at the App Store! Just my luck. Any ideas for the name? I think I'll have to go with iJewels or something like that, which I really didn't want to do, but I guess there is no option but to change the name…
So there you have it. Hopefully iJewels (still don't like that!) will gather some following on the iDevices — now I don't expect it to be a mass hit like on Android, the competition is much tougher, but then again there is nothing to lose in doing the port (or rewrite, actually). I'm gaining some valuable code to reuse in future iPhone projects, even if the game was a flop.
Yes, this was the big personal event I was talking about earlier.. My wife Annemari gave birth to a little, healthy baby girl on the 3rd of May! That makes me one happy (newbie) dad. She's four weeks old soon — doesn't sound like a long time, but it's been all new for both of us, so it feels like it's been much longer already.. Most of my time now revolves around her, as you probably can understand. Learning new things about her every day, it's nice!
Well, to wrap this post up, here are some pictures of her. The pics are from the oldest to the newest, left to right.
A few weeks ago I finished the biggest update for Jewels yet (and most probably the final big update), with some often requested features. The most important of them is of course the Global High Scores (or leaderboards), courtesy of the Scoreloop service. This has been well received among the players, and there are some insanely good scores on the boards already — in fact it didn't take but a few days for the first killer scores to appear.
I'm proud to say that my own top score for the Normal playmode is currently on the quite respectable ranking of 70141.. I did a bit better in the Timed game, ranking at 8167 at the moment. So yeah, there are some good scores about. On the Finland list I'm at rankings 41 and 11 respectively, yay!
I also completely redid the old and ugly Android-menus for something that works (and looks) a bit better, plus made some long overdue fixes here and there, but I guess I should've blogged about the release earlier; these other changes are not that interesting..
Also, this seems like a good opportunity to announce that there probably won't be any bigger updates for Jewels later, I will do some bug fixes and like but nothing major, I think. I need to focus on other things, and due to a rather big personal event (of which I'll post about a bit later) I need to priorize my time better. Nevertheless, I want to thank all the players, especially those numerous people that play the game regularly and keep it prospering on the Android Market! So thank you!
|Number of installs total:||1,225,864|
|Number of active installs:||971,566 (79% of total)|
|Times played daily:||Well over 1.2 1.3 million|
|Ratings:||Rated 17,738 times (4.5 / 5 stars average)|
So it's been a blast, I still cannot understand why it's been so successfull. Ok, mostly because it's Bejeweled, but there are loads of other B-clones on the Android Market, so that doesn't explain it entirely. I guess there just was a (big) niche for a free & polished B-game.
Although some people have complained about the addition of ads — which are only in the main menu and not some distracting blinking colorful banners either, I need to clarify — turned out it really was the best thing to do. I'm not allowed to share any numbers, but it's been waaay over my lowly expectations..
I'd like to express my gratitude and thanks to all those numerous active players, and of course to the good folk at Google AdSense for making this possible! I had never anticipated it, but turned out that ad supported apps and games are indeed a viable business model.
…and still it's only the second most popular free game on the Market; I cannot beat that bloody Solitaire for the life of me!
This website has been down for some days now. I've moved to a new server and things are up and running, but there might still be downtime in the future, I fear.
You see, all this is my fault, unfortunately. I did an update checker in the Android-version of Jewels, that contacts the server to see if an update has been published. I had not anticipated the success the game would get, and made it simply to check for updates every time the game is started. This was a huge mistake, in retrospect. I don't know why I didn't realise the potential problem of checking for updates too often.. My website account was closed because of too much traffic to the version check script. So that's why this site was down for several days.
I've deleted the script, released new versions of Jewels that contact to a static HTML-file (previously the script was PHP, which in turn increased the stress on the server) and — importantly — not every time the game is started. Still, looking at the access logs on the new server, things look unnerving. Many people have not updated the game, and thus there is loads of requests for the (now deleted) old update check script. I might need to take out the update checking altogether, then again most of the people won't probably update to that version so…
Let's hope that more people update to the latest Jewels and this huge rush of requests starts to calm down. Otherwise I'm looking at my account suspended, again.