Fix Fake-out, Crafting Fix, and Store Updates

Hey Folks! We had a brief celebratory moment this morning when we thought the crash bug was fixed. But after more testing, it appears there was a false success. My iPad 3 is still crashing intermittently when on encounter screens.

What's interesting, though, is that this is even after fixing memory leaks. The memory footprint was rock-solid for several minutes before the crash, and no spike/allocation could be found prior to the crash. It just...crashed. (This was using XCode's Instruments, no less. So I'm fairly confident in the metrics.)

So if not memory, then what?

I also managed to find another iPad 3 user to verify the crashes, which is again both good and bad. Bad because it isn't just my machine, but good for the same reason. At least now we know it's an architecture-bound issue, and not just some settings/installation thing unique to me (and potentially many other users in the future).

In any case, the investigation continues.

I did manage to solve that crafting bug, though. It was down to a destructable tool ingredient with a consumed ingredient inside causing a sort of race condition. The game helpfully tries to restore any items inside a destroyed tool during crafting, but in this case, that item was meant to be destroyed (and was in a separate code section). I ended up having to add a null-check in the restoration code section to make sure it didn't try to clone a destroyed item.

The website is still having issues, but they're going to get me setup in their git repo so I can start making edits myself. Since I wrote many of the pages, I can probably nip the user logic errors in the bud pretty quickly.

Finally, I've started uploading screenshot assets to the Apple and Google stores. It took a while to get good ones (showing interesting samples of gameplay, and also in each aspect ratio), but I have a good stable to work from now. The next trick is making sure they're ideal sizes for each store.

Apple was actually really easy in this regard, with specific requirements per phone/tablet section. (Expected, since they have fewer devices in their range.)

Google, on the other hand, is really vague. "Provide smartphone, 7-inch, and 10-inch" versions of each screenshot to be featured in both phone and tablet sections. Okay, fine. But what does that mean? How do I denote a 7-inch screenshot aside from just putting it in the appropriate slot? Or is that what they're saying? Like many things Google, it's probably really logical, just unclear to noobs :)

Anyway, moderate progress today. Could be better, but also worse. Hopefully, we have a stroke of genius soon!


ra1's picture

Whats the market share of iPad 3 vs the rest of your target demographic? If this is the only major issue preventing you from releasing the mobile version of NS, perhaps it would be best to exclude it from the supported device list (for now) and let loose the rest. If you find there is high demand, then it would be worth it to research further. Otherwise...on to the next project.

dcfedor's picture

Good question. I don't have good numbers to go by, but there are some rough stats out there.

2014 Market Share: ~13% iPad 3

2015 Market Share: ~10% iPad 3

2016 Market Share: ~30% iPad 2-4

Note that this may not be limited to iPad 3, I just happen to be able to repro it there. (I.e. iPad 2 or 4 might run into the same issues) So we may be looking at as many as 30% of iPad users, though conservatively, maybe as few as 7% (extrapolating the trend from 2014-2015 above)

In any case, there are enough to give it an honest try at fixing. I didn't post on Friday due to time constraints, but Tiago was able to confirm that disabling High DPI mode (i.e. Retina) on iPad 3 solves the problem. It just makes all new Retina devices scale weird or look bad. So we at least now know the cause.

He's currently looking into whether we can switch High DPI mode at runtime instead of compile time. If so, we may be in good shape!

But if not, you're right. Might be time to cut the cord :)

Dan Fedor - Founder, Blue Bottle Games