iOS submitted

Yesterday I submitted iOS build of 1.27 to Apple. They usually take 4-7 days to review it.

It’s so refreshing to have no audio or graphics bugs to workaround and no million devices to test on, every one misbehaving differently. Somehow everything just works as expected :-)

Amazon Out

Amazon have approved 1.27 in their store, so Kindle owners should now be able to upgrade.

http://www.amazon.com/gp/mas/dl/android?p=com.candyrufusgames.survivalcraft

Before publishing there I fixed a last minute glitch on 1st gen Kindle Fire that caused the sky to go black. This was due to another Android shader bug that I had to workaround.

I am sad to mention that, but the quality of Android software is poor, even with reputable manufacturers like Amazon. They are trying to replicate PC market of the 90s and 00s where all hardware combinations were allowed. The difference is that one could replace a single part in their PCs, or upgrade drivers just for that part. Android does not have that. If you get a device with a single dodgy bit you’re out of luck. You must rely on the OEM to issue an upgrade for the entire firmware, which never happens. They prefer to sell you next year’s model instead. Rant ends.

New platforms

All the hustle and bustle around the 1.27 release, but I haven’t told you the most important news about it yet.

With the new engine, there is support for new platforms! Namely Windows Phone 8.1 and Windows Store. I will be submitting 1.27 there soon.

download

Windows Store submission means that for the first time you will be able to play Survivalcraft on your powerful PCs, using mouse and keyboard. Provided you have Windows 8.1 of course. I spent a lot of time updating mouse/keyboard support so that they are production ready and not just some development hack like in 1.26.

The Windows Store version has been running smoothly for some time now, so I have high hopes for the submission success. However, as this is a completely new platform, our mileage may vary. We will see.

1.27 is the biggest release for a long time.

1.27.4 out

Another bugfix release is out.

Here’s the changelist:

  • Fixed animals spinning aimlessly
  • New compatibility setting to disable AudioTrack caching. Should only be used on Kitkat and above (4.4+), just in case someone finds a problem with the caching
  • Worked around clouds rendering bug in Samsung Galaxy Tab 4 7.0 (and other devices using Vivante GT GPU)
  • Reduced wolf loot
  • Fixed health regeneration in Challenging
  • Optimized clothes drawing, it’s 2x faster now, should run smoother when inventory page full of clothes is displayed
  • Added swoosh sound when attacking
  • Melee attacks can now miss, with probability depending on weapon used
  • Made axe powerful, but with large chance to miss
  • Made clothes and carpets colors more saturated
  • Reduced opacity of water sides
  • Increased maximum creative flying height

Please download and test.

For electrically inclined, check this enlightening video: http://youtu.be/IN3Bs3ySLZ0

Huge visibility range

The new engine has one great advantage over the old one. It can run in a 64 bit process. It is not bound by 2GB memory limit that each 32 bit process has.

Lack of virtual address space was the factor limiting visibility range in previous versions. In the new one, I can enable truly monstrous visibility ranges.

This is not for the phones of course, which run 32 bit hardware anyway. Plus their GPUs would totally choke even if they had the memory to run it. It’s just for my test desktop version.

1024visrange

1024 blocks visibility range in Survivalcraft (click to enlarge)

I am quite proud of what Survivalcraft engine can do. At 1024 blocks I am still frame locked at 60 FPS! Although this is on nVidia 970 GTX, which is a poweful GPU.

There is an insane amount of geometry out there. 512,000,000 blocks in total, although most of them underground or behind, and thus invisible.

To compare, the biggest visibility range setting Minecraft has is 32 chunks (each chunk is 16 blocks), so 512 blocks. And it is completely unplayable, even on my powerful PC. Although Minecraft was never optimized for the phones, so it can be forgiven that it is slow.

If you look closely you can just spot the ship, miles away on the right :-)

I think with the default visibility range (128) you would not see a single block from this high vantage point of view (150 blocks)

Two more screenshots:

1024vis2

 1024vis3

New combat mechanic

I have decided to quickly add a new combat mechanic to Survivalcraft – the melee weapons now have a probability to miss.

I think this should add more risk to attacking animals, because if you miss there is no pushback effect, and the animal will get you. Currently it’s too easy to use hit-and-run strategy.

This is an eleventh-hour change that I should not really be making at this point, but let’s be it :-)

MeleeHitProbability

Using this new value, I made axe an interesting weapon. It causes massive damage, bigger even than the machete, but has an abysmal hit ratio. Only one in four swings hits the target.

1.27 faster than 1.26

While fixing the sky I was running Survivalcraft 1.26 on the Samsung Tab 4 7.0, and took the opportunity to compare framerates against 1.27.

1.27 wins, 55fps vs 49fps.

It is on a flat, empty terrain though, with no animals, so it’s not a very realistic benchmark. Maybe some day I will find time to compare them properly.

Sky fix

The clouds are fixed for devices with broken 3D clipping. There are still occasional glitches on the Samsung Tab 4 7.0, but it’s barely noticeable now. I spent good 4 hours optimizing the new, more tesselated clouds, and the profiler says it’s not significantly slower than the old one.

I think you’ll agree this looks nicer than the one from the last post:

Survivalcraft 2015-03-30 05-15-14-

It’s only a kludge that moves the glitches out of the screen. It’s not 100% effective, so if you’re a Samsung Galaxy Tab 4 7.0 owner, sometimes you may see spurious triangles here and there.

Moreover, I discovered that this tablet has really poor touch support. It constantly drops and reacquires touches. It makes playing game with move pads very frustrating. I had to switch to buttons. I can see that a person playing this game for the first time on this device will be annoyed, at least until he/she finds how to change controls mode to buttons.

Still a few more tweaks to make before 1.27.4.

Sky glitches on Samsung Galaxy Tab 4 7.0

I made a trip to a local supermarket and, based on your bug reports, got myself yet another testing tablet, a Samsung Galaxy Tab 4 7.0.

Here’s how the sky looks on its screen:

Survivalcraft 2015-03-29 22-44-19-

First of all, this is not a new problem. Survivalcraft 1.26 looks exactly the same. This is not a problem with the game at all, it’s the rubbish GPU they put into this thing. It cannot clip polygons properly, all polygons which cross the near clipping plane get distorted.

Please do not buy this tablet, or indeed any tablet that uses shady GPUs. This one has Marvell PXA1088 CPU + some “Vivante GT” GPU. A combination from hell, names alone should set the warning bells ringing.

Samsung

It is pretty, but stay away!

Most Samsungs are good, this one sadly is an exception. Reliable CPUs come from nVidia (Tegra), Qualcomm (Adreno), Samsung (Exynos), PowerVR, Mali, maybe a few others. Anything else and you’re getting yourself in for trouble.

What can I do to workaround this? I will cut the sky into small polygons, hurting performance, so that you do not see when GPU makes a hash out of clipping them, because they will be (mostly) outside of the screen.

Please stay tuned for 1.27.4.

Campfires

Looking at your comments I realized that some people don’t know you can stoke campfires with wood, to make them bigger and stop them from fizzling out.

Any combustible material will do, although the poorer it is (like leaves or grass) the more you have to put in.

Here’s how various size campfires look like:

Campfires

All the way from tiny to quite large – there are 15 sizes of campfire.

During dry weather campfire reduces by one step every 20 seconds. When rain or snow is falling on a it, it reduces every 5 seconds. Therefore a fully stoked campfire will last about 5 minutes when dry, and only slightly over a minute when it’s raining.

The default campfire you place down is at level 3, that is you have about 40 seconds to stoke it before it turns into ashes.

[EDIT]

To stoke a campfire you can either throw wood at it, or tap on it while holding wood. Either method works. Just don’t throw bombs or gunpowder kegs in :-)

Follow

Get every new post delivered to your Inbox.

Join 44,286 other followers