No Arcanox on iOS

Many of you have asked and I’m sorry to disappoint you, but there will be no Arcanox iOS version. Please let me explain the reasons:

Reason 1: One-Man-Company

Arcanox is a complex game which is usally developed by around 5 to 7 people, but Juhu Games is just me right now. This is only possible because I focus my work-force. An iOS version not only means initial effort of several weeks, but also additional effort over the entire lifetime of Arcanox.

The additional tasks would be:

  1. Testing each new game version on both iPhones and iPad.
  2. Staying up to date with all upcoming iOS / App Store / Game Center changes and changing the game accordingly.
  3. Investigating and fixing iOS specific bugs which can be caused by
    1. My own code
    2. Third-party-libraries
    3. New iOS / App Store / Game Center versions
  4. A more complicated update process, because both Google Play, App Store and game server updates have to be executed at the same time.
  5. Providing customer support for iOS specific issues.

Also Apple is not known for good backward compatibility. Changes by them might force me to stop working on whatever I’m doing in that moment to fix Arcanox.

All these additional tasks would slow down the development process, reduce the update frequency and make the development more stressful.

When more people would work for Juhu Games, the additional tasks could be distributed to several shoulders without slowing down the overall development process noticeably.

Reason 2: Microsoft Killed RoboVM

It was planned to use RoboVM for the iOS version of Arcanox. RoboVM allowed running Java-based apps on iOS. Xamarin bought RoboBM in October 2015. A few months later Microsoft bought Xamarin and killed RoboVM. Development of RoboVM stopped and their service will stop in April 2017. This means there will be no more RoboVM bug fixes and no support for iOS 10.

There are a few alternatives to RoboVM, but they are either not production-stable, not actively developed, have bad performance or have other issues.

In a nutshell: Microsoft killed the only reliable and fast way to port Java-based apps to iOS.

Reason 3: iOS Bitcode

Bitcode is an app format by Apple that allows Apple to compile an optimized version of an app for all Apple devices. Right now bitcode is optional for iOS apps. For watchOS and tvOS apps, bitcode is required.

Apple has not announced any plans that bitcode will be required on iOS as well, but considering their decisions in the past I’m sure this will happen.

Neither RoboVM nor any alternative is bitcode compatible. When bitcode becomes mandatory updating apps ported with RoboVM or the alternatives won’t be possible anymore. Separating the Android and iOS players would be necessary.

Summary

iOS is a very important platform and I would love to port Arcanox to it, but right now there are technical challenges and uncertainties without good solutions and Juhu Games is only me. When Juhu Games has grown, I’ll reconsider my decision.

Please don’t hesitate to ask, when you have any questions.

Chris