Well, how about that?

Skärmavbild 2017-11-05 kl. 14.47.44

Still quite a few bugs to fix before it’s worth releasing but it actually works now. I can even play and make melds with it. However, as I said, there are still bugs left that I need to fix, like Theme Pictures being positioned on top of everything else and in the wrong sizes, accessing the camera from SETTINGS makes the app crash and several other things.

But it does work.
Nobody is more surprised than me.


Making progress

I’m finally making some progress again with the new iOS version that should work with iOS 11. There are SOOO many things that need to be changed in the source code and some parts that have to be completely rewritten.

Due to the size of the RummyFight source code it is very difficult to know exactly what to rewrite and how, just to test if it’s working so instead of wasting a lot of time on this I have instead started programming a completely different app.

Why you ask?

Well, that app is using a lot of the same things as RummyFight. It can access pictures in the camera roll, it can open the camera, it can render bitmaps on the screen and allow them to be moved etc.

So while creating this new app, I’m also learning how to do things “the new way” and as soon as I have figured something out, I switch to the RummyFight project and implement working changes there.

So, now RummyFight can once again access the camera roll, open the camera, download theme pics and render them in the correct sizes etc.

Next task is to solve some memory issues that makes the app crash very often since the ARC is deallocating objects before I’m done with them.

Hope to find a strategy for this soon.
Keep your fingers crossed.


Sorry for being quiet lately

I hope to resume with working on the new RummyFight version for iOS very soon. I’m sorry I haven’t done much lately but here’s the reason why. I hope you can understand 😉

LM1A5627-1-1030x687Me on the right, My now wife Susanna (“Messer” on RummyFight) to the left


Impossible mission

As some of you have noticed, RummyFight will not work on iOS 11 and is in need of an update. However it’s a VERY long time ago since the iOS-version of RummyFight received an update… and there’s a reason for that. Or rather, LOTS of reasons.

But to summarize: The code for iOS-rummyfight was originally written in Objective-C in XCode 4.3 and it used Cocos2D v1.1 for it’s graphics. Now, back in those days there were no automatic memory management so all allocations and deallocations were made manually by me in the code. Then time went by and one day I received a mail from Apple stating that they had released XCode 5. Sure… not problem. I didn’t care really. I mean, I could still compile RummyFight with v4.3, right?

Then there was a release of XCode 6, XCode 7, XCode 8… and at some point Apple also announced that they no longer would accept apps built with older versions of XCode.

Fine, I thought. It’s probably a sane decision by Apple, and how hard can it be to import my project into a newer version of XCode?

Harder than I thought, I realized.

First off, XCode 8 requires the latest version of the Apple operating system on the computer. That operating system only works on new Macs. So to even be able to start XCode I would need a new Mac. Luckily I got my hands on one about a year ago.

Then… the version of Cocos2D I was using with RummyFight didn’t even compile in newer XCode so I had to download a new version of it. That version ONLY supported the new memory management system called ARC which RummyFight wasn’t built according to. Also a lot had been changed in Cocos2D so it would require a MAJOR rewrite of the RummyFight code to even use it. Then Apple has introduced lots of changes too in how to build an app. They have removed functions, replaced them with others, changed structure etc. Phew!

So in short:
To be able to submit an update of RummyFight I would need to
1. Buy a new Macintosh
2. Install the latest operating system
3. Install the latest XCode
4. Download a new version of Cocos2D
5. Adapt the RummyFight sources to all the changes in Cocos2D and in Cocoa (Apple’s system)
6. Change memory management to ARC in all my code (all 28.733 lines of it)
7. Update all graphics and textures
8. Get it to compile

And all this just to correct a spelling error or somthing.

So, pretty impossible mission, right?
Well… then it’s probably time for me now to reserve a table at Milliways – the restaurant at the end of the universe. Don’t you think?

(The app still needs a lot of rewrites and testing and changes etc before an update can be released but at least I feel an update is now possible – not impossible anymore)


Lots of database- and server problems lately

Just before christmas we had a major power out in our region and there was probably some kind of power spike or something when it happened since two of our three severs went completely dead afterwards. They didn’t even want to start anymore.

So to make sure RummyFight could be played again we borrowed a PC from a local computer store (Thanks http://www.databyran.nu), installed everything on it and got RF back online within 2 days, however a bit slow since now one server did all the work that two previously had shared between each other.

About 2 weeks ago we received two new permanent servers and we installed everything on them and configured them the same way the old ones were. We thought this would be the end of the problems but regardless of how we configured them, RF was running mysteriously slow.

So as a last resort we signed up to Google Cloud Services to use an online database in the cloud for all the data. Initially this looked like a great idea but then new strange things began to happen 2-3 times every evening where the database almost went to a complete standstill. We’ve been investigating this in collaboration with technicians at Google and they don’t know neither the reason nor the solution to the problem.

Yesterday I deployed a module I created myself that would cache and pool a lot of data and database connections and it seemed it solved some of the issues. Maybe I’m on the right track here. This day will determine if we can continue to use the cloud service so keep your fingers crossed. Otherwise we will have to figure out yet another idea to try out.

I just wish this can be solved soon so that I can continue focus on the app. It’s been 1.5 years now since the last update and I have had the new version at 95% ready for so long and it has such a large amount of nice new things and bug fixes in it I really would love to see it live sometimes.

I have it on my own phone and it’s great 😉


Moving forward

Well, I’ve now managed to get the app to start again, however it dies as soon as I touch it. Probably something easy to fix once I find out what’s happening. Anyway, this is an indicator of two things:
1. I will be able to get the app to work on Cocos2D v3.0 as well as on the new XCode
2. There will be a need for LOTS of testing of the app before it can be released again.
But that’s just something I will have to live with.

Too bad I also have two other great app-ideas I would like to create that will have to wait until I’m done with RummyFight. I do think those two ideas would be really fun to play but there are simply not enough time.

Ah, well. Back to work.


It compiles!

Finally, RummyFight for iOS finally compiles again in XCode. A huge amount of code has been replaced or adjusted for it to be able to compile with the latest Cocos2D in the latest XCode development enviroment.

But now it finally compiles without errors again.
However, the app does not work at all.