Wednesday, July 17, 2019

Publishing with 64-bit capability from Unity/3D to Google Play

From August 1, all new apps and updates that include native code are required to provide 64-bit versions in addition to 32-bit versions when publishing to Google Play.

Google now also recommends a new package file format, Android App Bundle (aab), instead of the usual packages (apk), when uploading to Google Play.

I found it hard to find documentation on exactly how to do the uploading from Unity/3D.

After some trial and error these were my settings.

Build settings:

(aab instead of apk)



Player settings/other settings:








IL2CPP has to be chosen instead of Mono. ARM64 must be checked. x86 has been deprecated from version 2019.2.2.

API-level has to be at least 21. If you can't set the API-level (common error reported in the Unity forums) try changing API compatibility level and then change it back. It worked for me.


I hope this can be of help to someone. Please comment if you think I missed something.


Publishing pain

A week ago I was ready to publish the second beta-version of K2 Story. After an intense balancing and test period I was finally ready to try to get more people to look at my game again.

I know that publishing to the App Store and to Google Play always is a challenge. I have done it a couple of times now and I know it requires patience and courage. Mostly it takes three times the time you have planned for it. Mostly it is a total pain.

App Store first: Build from Unity/3D goes fine. I have checklists and notes from previous attempts. Open Xcode and try to connect my iPhone to it. Get a warning that my iPhone has an OS that is newer than my Xcode version. Ok. I have to upgrade Xcode to version 10.2. No problem.

Well - there is a problem... The next higher Xcode version requires Mojave which is the next Mac OS version. I never use Xcode for anything else than building for iOS but now I have to upgrade the OS on my Mac because of that. Ok. No problem.

Well - there is a problem... My old MacBook Pro workhorse can't be upgraded to Mojave.

After buying new hardware, upgrading and installing all my software, I am back to square one. Delayed by about a week.

In the mean time I have tried to publish a new version of another game on Android. Should not be a big thing. But Google Play suddenly requires you to only publish apps or new versions of apps with 64-bit capability. Ok. No problem. Unity should be able to export a 64-bit version.

Well - there is a problem... There are no real instructions on how to set the export parameters in Unity for 64-bit correctly. When googling - there is a lot of confusion on how this should be done. I also get a lot of different errors when trying to export with different recommended settings. Also Google Play now recommends a totally new package file format which I have never used before.

And this is how it goes. Making a game is hard. Getting it out on App Store and Google Play is a pain. Usually you have forgot to change some little flag in some XML file so you get rejected and have to submit again. Or you have forgot to submit some little extra icon in a certain resolution that is absolutely required for the app to go through the review. Or there is something about the privacy policy or terms or conditions that has to be changed.

There is also the matter of the delay in feedback from Google and Apple. With the time difference to Sweden, each iteration usually takes at least two days.

But I guess it is just part of the fun...


Tuesday, April 30, 2019

The Story of Mount Everest Story (5)

I am not into marketing.

I feel very passionate about app development, programming and game design but I don't care much  for marketing. Not because I don't understand the value of it. I just don't feel like doing it.

I made some tentative little attempts to raise the exposure for Everest Attack but tired quite quickly.

One of the attempts was a small trailer movie made from Screenshots with iTunes. The sound was produced in Logic Pro.



It never had that many views and I did not try to get exposure for the movie in any real way.

I knew I should work with SEO, social marketing and ads, but I did all that very half-hearted.

Surprisingly more people bought the game than I had dared believe anyway. Even without marketing.


developer1@jabatoba.com
Stockholm 2016

Sunday, March 24, 2019

The Story of Mount Everest Story (4)

Encouraged by having Turtliac accepted on the App Store (after some pain) I worked on my Everest game again. I was close to abandoning the project many times but came back to it. I started over with completely new versions of the game 6 or 7 times. I tried to build some versions completely with a raw model and no UI. I also tried different types of UI.


Everest Attack, iPhone prototype 2014



Everest Attack, iPhone prototype 2014

In the winter of 2014 I decided to let someone help me with the graphic design. Until then I had only used placeholder photographs. I wanted real portraits that I had the full rights to. I also wanted a new map as the main screen.

I put out a request on eLance (UpWork) and around 20 freelancers offered to do the graphic design. In the end I chose between a Chinese and a Spanish designer. I went for the Spanish designer in the end and she got to do the eight climber portraits, the map and a lot of the rest of the new GUI. The cost in total was $650. The retro feel of the portraits was the designers choice. I never had that as a requirement. But I was very happy and inspired by her work.


Everest Attack, 2015


Everest Attack was developed in pure Objective-C with no other tools or add-ons. It was released as a premium $2 game on the App Store in August 2015.

Jabatoba AB was registered as a company in July 2015.




developer1@jabatoba.com
Stockholm 2016-02-15




Tuesday, March 19, 2019

K2 Story Update (1)

K2 Story is now in beta and will be released soon.

It is based on the same idea as Mount Everest Story but is completely re-written and has new graphics.

New features include:
- New mountain, new challenges
- Team selection: Choose your team from 18 different climbers
- More dynamic weather simulation
- More granular and complex injury and trauma simulation
- Language support - 10 languages supported from start
- New score system
- Avalanches

K2 Story 0.5


Beta testers wanted! Please contact us at info@jabatoba.com for a TestFlight invite!

Saturday, March 16, 2019

The Story of Mount Everest Story (3)


One of the first of my own projects was a simple game that I called Turtliac. It was a Flappy Bird clone and programmed from scratch in pure Objective-C. No other templates or tools. It was my "hello world" as a game programmer and I was very happy when it got accepted for the App Store.
Turtliac, 2014


Turtliac had an original score(a stupid little melody), sound effects and graphics bought from Graphic River. The turtle also had the recorded voice of my eleven year old son. I asked him to say something random when the turtle makes a looping and he spontaneously went "Jabatoba!". That is how the name of the company came up.

(Turtliac was removed from the App Store in January 2019 and had a little more than a thousand downloads.)


I also started to build a game called Fishy Tank. The idea was to make a strict master-detail application with only two screens, very standard iPhone UI but yet interesting gameplay.
The game simulates a fish tank with different species that eat each other. The goal is to maintain balance and to have as many species as possible in the tank at the same time. I bought stock graphics from Graphic River and I think the UI was rather nice. I would later build several other prototypes with the same idea but I never published the game.


Fishy Tank, 2014

developer1@jabatoba.com
Stockholm 2015-05-22

Friday, March 15, 2019

The Story of Mount Everest Story (2)

I wrote three or four versions of the game in GameMaker. They were playable games and worked much like I had thought but I was not satisfied. The game model started to become quite complex and was difficult to maintain in such an environment. I also knew that I wanted to build games for mobile phones and GameMaker did not give me much help with the GUI.



Everest in GameMaker, 2013

In order to use GameMaker's iPhone bridge, one had to first become a licensed Apple Developer. When I got licensed I started to browse Apples programming resources and the XCode environment.

I have programming background (some years ago) but I didn't think I had the stamina to learn a completely new programming environment again. I had also heard that Objective-C and Apples whole environment was rather intimidating. I browsed around, looked at the documentation and some tutorials. Suddenly I found something called CS193p and I was totally hooked...

CS193p is an advanced course in iPhone programming on Stanford University. It is made available online on iTunes University. The course consists of 14-15 real streamed lectures and 3-4 large programming assignments. The lectures simply goes online a day after they are held at Stanford. It is lead by an excellent teacher named Paul Hegarty.

https://itunes.apple.com/us/course/developing-ios-8-apps-swift/id961180099

The first time I started to look at the course I was stuck around lecture three or four. I could grasp most of the material up to lecture 4 but I understood why I was not a Stanford student. I must have looked at the first three lectures more than ten times. But I began to fall in love with the beauty of object-oriented programming, the academic style of the lectures, the complexity, the details. The voice of Paul Hegarty could be heard many hours a day both in my home and at my office. I started to become obsessed with programming.


developer1@jabatoba.com
Stockholm 2015-05-22

Thursday, March 14, 2019

The Story of Mount Everest Story (1)

A few years ago I read the book "Into Thin Air: A Personal Account of the Mt. Everest Disaster" by Jon Krakauer. It tells the story of the Mount Everest Tragedy in 1996. I also read "The Climb" by Anatoli Boukreev and "Ultimate High - my Everest Odyssey" by Göran Kropp. Boukreev was one of the main guides and was partially accused of what happened. Göran Kropp turned down only one hour from the summit on the day before the disaster.

I was fascinated by the story. The sites, the psychology, the characters, the drama...

http://en.wikipedia.org/wiki/Into_Thin_Air

Making a game about Mount Everest came up as an idea about then. I had a strong idea about the gameplay. I wanted to focus on the places and the people. As a player one should only have to make one type of decision: when to climb. The idea was also that the game would revolve around three main attributes of the climbers: Condition, Acclimatization and Morale. Further I wanted times and places to be as authentic as possible. The game takes place between April 18 and May 31, which is when the real expeditions are carried out. The simulated climbing times are as realistic as possible. For example, a climber in reasonably good condition takes 5-6 hours to climb Lhotse Face.

The first prototype was build in 2012 with YoYo's GameMaker environment. GameMaker is a fantastic and very underrated high-level programming environment. It has evolved over the years and can be used for rather advanced programming. It also has extensive, mature and well-developed education resources and tutorials. For me, GameMaker was an incredible first gaming programming environment.

http://www.yoyogames.com/


developer1@jabatoba.com
Stockholm 2015-05-22