1.18.5 Stability Update

A couple of days ago I released another stability update for Android, this time focused on Kindle Fire. I was able to narrow down and fix the annoying touch offset issue, largely due to those of you who provided solid, hard data from the debug apk I posted earlier. Thank you!

I have my own Kindle Fire 1st gen now, so I’ve been able to verify the fix myself before releasing.

The game has been selling really well on Kindle, almost as much as on all other Android devices combined. Looking at the stats, Kindle Fire 1st gen is now the most frequently used device to play Survivalcraft, followed by Samsung Galaxy Tab and Samsung Galaxy S3 phone.

Since releasing this last fix, I’ve been working hard on the electricity. I added a few new devices, and most importantly finalized (I hope so) the simulation algorithm. It should scale well with the number of devices in the world, because it only simulates these that really require it in a given moment.

I have set the simulation frequency to 100Hz. That means that each gate and each continuous piece of wire has a latency of 10ms. In other words, if you chain 100 gates one after the other, and press a button on one side, the signal will take 1 second to reach the other side. I think this is good enough. It’s unlikely that a real device will need such long chains. I may even cut it to 50Hz to save some CPU load.

Comparing to Minecraft, it’s plenty fast. In Minecraft logic runs at 10Hz and signals in redstone propagate one block per cycle, unlike Survivalcraft where a wire takes a single cycle no matter how long it is.

Survivalcraft weakness is that it has to run on the phones, and so the chunk updates are very costly. I can’t allow a mechanism to e.g. toggle a light on and off many times per second. That would kill the performance, because the game would spend 100% of the time updating lighting in the affected chunks. On a PC it’s perfectly possible to flick a light every frame, but on a phone it’s a complete no-no.

For example, look at this simple circuit:

It’s a NOT gate connected to itself. When the input is 0, the gate will output 1, and so the input will also become 1. Once the input is 1, the gate will output 0 and the input will become 0. As you can see, this circuit constantly switches between 0 and 1. This will happen 50 times per second (50 because there are 2 elements: the gate and the wire). If you were to connect a door or a light to this wire, it would start to cycle 50 times per second. This would kill the game on any phone due to chunk updates.

To solve this issue, I added a special safety mechanic to all devices that trigger chunk updates – they stop working if a signal with too high frequency is applied to them. Once the signal stabilizes, they start working again. You can think of them having “inertia”. You cannot open and shut a door 50 times per second :-)

30 Comments

  1. nelson799
    Posted November 28, 2012 at 23:05 | Permalink | Reply

    Kaalus, I may be stoned by the public for this but I must say we definitely can do with out multiplayer now! Especially during these terrible economic times. Just think about it. I could build a mega castle with thousands of wires running everywhere. I’m assuming these wires are made of copper. What do people do during desperate times. I’ll tell you, they break in peoples homes when they are away and steal copper from inside homes! What if someone breaks into my sweat castle through multiplayer while I’m away and makes off with all my copper and sell it for their heroin addiction. I for one will not stand for that! Good day sir.

    • Posted November 29, 2012 at 00:19 | Permalink | Reply

      set a trap to make people wont able to steal it like pressure plate of tnt in the darkness XD

    • Posted November 29, 2012 at 03:29 | Permalink | Reply

      Lol, you are hilarious!

    • max samuels
      Posted November 29, 2012 at 11:26 | Permalink | Reply

      Get yo torches and pitchforks boys, were gonna stone him.

    • Kevin
      Posted November 29, 2012 at 13:02 | Permalink | Reply

      I believe, that is where you are wrong!

    • Kevin
      Posted November 29, 2012 at 13:04 | Permalink | Reply

      And you realize copper (in game) has no value in money, lol

  2. jriot10
    Posted November 28, 2012 at 23:19 | Permalink | Reply

    Thats why you should add delays :) That way we can still do infinite loops without it shutting down on us

    • Posted November 29, 2012 at 12:47 | Permalink | Reply

      The delays will be there, but they don’t solve the problem – what if the user does not put them in? The problem is solved in the devices themselves, they will not work if connected to a fast-switching circuit. Actually I now realized that Minecraft has a similar mechanic – redstone torches burn out if cycled too frequently.

      • jriot10
        Posted November 29, 2012 at 22:15 | Permalink | Reply

        I’m just saying that there could be a possible way. Your system that it shuts down is extremely smart though and now i know why i can’t use that method in minecraft :(

  3. Duxk
    Posted November 29, 2012 at 01:49 | Permalink | Reply

    What materials do we need to craft the gates? Aren’t the made of silicon in real life?

  4. Posted November 29, 2012 at 07:35 | Permalink | Reply

    Je kiffe se jeux

  5. Cody White
    Posted November 29, 2012 at 09:41 | Permalink | Reply

    When I updated it the update deleted all my worlds please help.

    • Posted April 21, 2013 at 01:38 | Permalink | Reply

      IT HAPPENED TO ME WHEN I GOT FULL VERSION IT DELETED MY WORLDS ON DEMO

  6. jack
    Posted November 29, 2012 at 12:10 | Permalink | Reply

    Kaalus I have got the update 1.18.5 ..yay finally .. Thx kaalus n I hope update 1.9 will come fast. :)

  7. Posted November 29, 2012 at 15:32 | Permalink | Reply

    can we make a light on and off per 2second or so?pls reply.reason i need this is to created a parkour or maybe disco ball but i wont make it 100 times per sec just 1 time per 1 or 2seconds.pls reply!!!!!!!!thanks!!!!

  8. Ali Darwish
    Posted November 29, 2012 at 18:35 | Permalink | Reply

    Kaalus if you build trains or minecarts with tracks my dreams will come true so can u please work on it for your fans

    • Posted November 30, 2012 at 14:03 | Permalink | Reply

      and also passive nqtives villagers.i mean whats a city with a train without residents living :)

  9. brian t
    Posted November 29, 2012 at 22:32 | Permalink | Reply

    I know one day we will see multiplayer, but more importantly do you think we may have a way of recording some video’s of our worlds creations or adventures, or would this be limited to only certain devices, It is a shame we cant get more videos on youtube, this would boost the games downloads so much.

  10. max samuels
    Posted November 30, 2012 at 00:38 | Permalink | Reply

    Why not send a note to the yogscast crew they feature games other then minecraft.

  11. brian t
    Posted November 30, 2012 at 00:48 | Permalink | Reply

    Their videos are certainly my inspiration into this idea. But there is no physical way i know of, for that to happen short of recording an actual device, but the results of that are very poor.

  12. Carl Schmidt
    Posted December 1, 2012 at 07:56 | Permalink | Reply

    Where can i download 1.8.5

  13. Carl Schmidt
    Posted December 2, 2012 at 08:56 | Permalink | Reply

    But i already have survivalcraft1.8.1 but it doesnt make an update

    • riha
      Posted December 11, 2012 at 20:29 | Permalink | Reply

      Same only I have a alpha 1.17

  14. grace
    Posted December 6, 2012 at 03:23 | Permalink | Reply

    Hi peeps

  15. Posted December 7, 2012 at 14:26 | Permalink | Reply

    1.18.2.0

  16. Posted December 14, 2012 at 09:40 | Permalink | Reply

    Kaalus,when you release multiplayer,can you make anything someone else made cant be destroyed by others

  17. Carl Schmidt
    Posted December 18, 2012 at 16:11 | Permalink | Reply

    HOW THIS FUC….ING APP MAKE A UPDATE!!!!!!!!!! HELP PLEASE I WANT 1.9.0.0

  18. Zane Kata
    Posted December 12, 2014 at 03:15 | Permalink | Reply

    Maybe you can make the online content area with sections (e.x. survival, adventure, creation, etc.) And also possibly a search On Dec 11, 2014 3:24 AM, “Survivalcraft” wrote:

    > Kaalus posted: “Check this out: http://youtu.be/1rh92zT0FYI What say > you?”

  19. Posted March 27, 2016 at 21:51 | Permalink | Reply

Leave a Reply. No swearing please.

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s