Author Archives: Kaalus

2.3 progress

As you all know, 2.2 doubled the height of the world. This was a long overdue change that allows you to build properly high structures. It also doubled the size of the world files. It’s this doubling effect that I want to focus on this post.

Back in 2016 when releasing 1.29, I doubled the size of each block to use 32 bits. This doubled the size of the world files too. In 2.2, the increase in height doubled it again. The files have become huge – some larger worlds are reaching multiple gigabytes. This is something I haven’t paid enough attention to.

Another aggravating change I eventually relented on for 2.2 – after getting much feedback from you – was to increase of the maximum worlds limit on device from 20 to 30. In hindsight, this may have been a mistake.

The problem is that many, many people are running out of space on their devices. They download many large worlds from Community Content and everything grinds to a painful halt.

Another issue caused by large worlds is exceeding of Dropbox bandwidth limit for people who host their worlds for Community Content. This has always happened, but now, with worlds twice as large, it happens twice as often. The result is worlds becoming unavailable and dropping down through the ranks, until Dropbox unblocks the account after a few days. At that point, the world is so far down it might never climb out again, no matter how good it is.

As a result, one of my priority tasks for 2.3 is to change the world storage format to reduce world sizes.

2.2 and earlier use a naive format, where chunk data is stored verbatim – every block taking 32 bits. This is very inefficient, but very fast, simple and error-resilient. It also means that every chunk has exactly the same size on disk, which is extremely important. Here’s the description of the current file format: https://kaalus.wordpress.com/chunks-dat-file-format/

There are multiple compression schemes we can use to reduce the size of the chunks. Even something as simple as RLE (run length encoding) is likely to cut the size by a factor of 5 or even 10. But compression is the simple part – it’s not the issue here. The problem is, once we compress chunks, their size will no longer be the same. This opens up a Pandora’s box of pain. Fragmentation. Splitting chunks into little bits to fit in between other chunks, which have became smaller in the meantime. Etc.

Basically, what we need is a proper filesystem, with chunks being files with random size, that can both grow and shrink. And it has to be RELIABLE. Application on a phone leads a perilious life. It can, and frequently does die with no warning, at any second, due to user pressing the home button, or system running low on memory, or the battery going flat. What if it dies while chunks are being written to disk? At the moment, at most one chunk might get corrupted, and even this is unlikely, as chunk write is nearly always an atomic operation. Either it all goes in, or nothing does.

With the new complex format, we will suddenly be opening ourselves to complete mangling of the chunks file in case something goes wrong. As a result, the world will become lost forever. This cannot be.

This is what I am wrangling with at the moment. It’s proving to be more complex that I though it will be. We actually need a journaling filesystem, as ext4 or NTFS are.

One might question, why don’t we just use the Android’s or iOS’s filesystem, and save chunks in separate files? The answer is performance. File open operations are very slow, especially so on mobile systems. Even desktop Minecraft doesn’t do it this way. It combines multiple chunks into one “region” file. Plus, I’d rather not make myself a hostage to particular implementations of filesystems on various phones, which may become faster or slower over time, with no control from our side. I’ve been there before, and no, thank you, never again.

 

 

Full height elevator

Thank you everyone for sending in your designs.

And to think, I wasn’t even sure building the tall elevator was possible! Now I know. Of course it is. In general, there seem to be two ways to make it:

  1. Replacing pistons under the lift carriage to keep moving beyond the 8 blocks piston limit
  2. Self-propelling carriage, with one pushing and one pulling piston, sequentially pushing and pulling themselves in one direction

Here are the links to the builds made by Sergey Starostin, Stanimus and BigBushy101, all 1st variant elevators:

I’ve made a video of the one built by Stanimus. It is fully open, so you can see better how it works:

I am still working on 2.3. Nothing to show at the moment, but I want it to be a quick update. There are still some bugs in 2.2 caused by doubling of the height, and they should be fixed sooner rather than later.

 

Full height elevator challenge

Now that the terrain is 256 blocks high, the obvious question is: can we make an elevator that goes from ground level (~64) all the way up to the highest mountain (~250)?

If you’ve ever built an elevator in Survivalcraft and understand how it works, you will know that the plain vanilla one will only reach 9 * 8 = 72 blocks high. This is because each piston extends by a maximum of 8 blocks and can push a maximum of 8 more pistons. Plus 8 blocks from the stationary bottom piston, gives 72.

piston3

Can a better elevator be built?

I would also like to add a restriction: no pushing of player sideways. That would be cheating :-) The elevator must ride up purely vertically, without moving player to the side. It can stop for a while though, to reconfigure its inner workings, if needed. It should also be able to come back down.

If you manage to build one, post the link to the world in comments. Having seen the 3d printer world and some others, I have high hopes. But I don’t know whether such elevator is even possible?

iOS bug

I’ve had some people report that when they launch the latest Apple update (2.2.61.0), the game briefly displays black screen and then crashes. 2.2.60.0 worked for them.

This is odd, 2.2.61.0 only contains fixes for features that are used later during the game, not while it’s starting up, so it’s unlikely that I accidentally broke something in that department. I’ve been trying to reproduce it, but with no luck – it all works here.

Can you please comment below if the iOS 2.2.61.0 crashes on startup for you?

I’m publishing a quick update, 2.2.62.0 which may let me diagnose the problem better, but due to the review process it will take some time before it hits AppStore.

Happy new year

It’s been a good decade for Survivalcraft. 2011-2020, so far.

Once you celebrate New Year, open the game in creative mode and click the time of day button until it’s night.

Happy New Year everyone!

 

Your game is too harsh

I’ve got a great email from one of the players. Like some of you, he also claims the game is too hard. Please read and comment.

Your game is too harsh

Hi Kaalus, Let me just begin by saying that I absolutely love your game. Ever since I was 12 I loved being independent from the crowd. That’s why I got a Windows Phone, and when everyone was playing Minecraft Pocket Edition, I was playing Survivalcraft! I absolutely love Survivalcraft, and I’ve been playing it ever since I was 12, all the way up to now, aged 18. Survivalcraft, as of recently, has become more and more independent of Minecraft, which I absolutely love! I think that’s brilliant! I love the more realistic survival approach to the voxel landscape, it’s absolutely brilliant! You really have to think resourcefully to survive, and plan every move, unlike Minecraft, which has softened its survival mode ever since being purchased by Microsoft. However, I’ve found myself a little frustrated at the recent updates and the increasingly frustrating challenging experience that is playing Survival nowadays ever since the update. I love a challenging game, however, I think in order for a game to be fun, however challenging, it needs to be fair. Survivalcraft 2 version 2.2.4 is not fair at all on the player, and I’ll try and showcase some of the issues I’ve had whilst playing this version, and my suggestions on how I’d improve it if I was the director. If I come across as a bit passive aggressive on this email, I do apologise. I’m just enthusiastic about video games that pay attention to detail and I also like writing extremely long emails to independent developers for some reason?

Day 1

 

unnamed1

This isn’t the first time I’ve played 2.2.4, obviously. However, I’ll try to emulate my experience with another build.

I chose “easy” as my starting position and switched off supernatural creatures, which I’d rename to “mythical creatures” cause then you could broaden the list of creatures and include other mythical creatures. I don’t know I’m going off track.

I chose to be female, as the last build I picked I starved so quickly it was insane. I don’t know why, but I must have been playing the build for like 8 minutes and couldn’t find a single pumpkin, which was insane because they’re usually dotted around the place everywhere!

Females are supposed to starve slower, right? I dunno, but you starve awfully quick on this game! Like, stupidly quick! I’m not sure how quickly but I get so fed up of seeing notifications relating to food! And in the first minute of the game after being cast overboard with nothing on your person, not even a simple axe, just a pair of clothes, somehow you’re already “slightly hungry”. The first thing I SHOULD be doing on day 1 is exploring the island for materials so I can craft and build a small shelter and weapons to hunt and kill and maybe perhaps a furnace, but instead, it’s spent wandering an island for bloody PUMPKINS for 10 minutes before I starve to death instantly!

So anyway I spawn, (It doesn’t matter that much but I think there should be an option to SKIP the ship sequence I’ve seen it more times than my own birthday at this point) and I’m dumped on some SAND island!

unnamed2

That’s fine! Except this game has an odd obsession with getting wet! I know that if I go into that water I’ll suffer the consequences of getting my jeans slightly wet, which almost always ends with me slowly freezing to death. But whatever, I’m in a sandy warm area, I can’t possibly freeze to death from a little water here.

unnamed3

I get across, and I’m quite lucky to be frank, as usually in this game, even with the difficulty set to “easy” I still usually spend the first 2 minutes of the game freezing to death constantly and whacking leaves in hopes to find sticks and set a campfire and do all my crafting in a small 8 block radius which is quite frankly tedious. Anyway, it’s day 1, and before I begin building I need to gather some food so that I don’t starve to death somehow despite only being on the island for like a day. My options for food currently are:

  • Ravish the island for natural foods
  • Hunt an animal for it’s meat, get some stone and wood and cook the dang thing

OK, problem number 1: “Ravish the island for natural foods” is the best situation for me at the moment because I haven’t got a weapon, and I’ll explain an issue with getting a weapon in a jiffy, but another rather large issue when finding natural goods on this massive half tropical half not tropical island is that there are no bloody natural goods.

The following is a list of available food items to eat that aren’t meat:

  • Pumpkin
  • Bread

And that’s it. Let’s make a list of available natural food items on this island:

  • Pumpkin

Okay, that’s fine! It adds to the challenge, I need to hunt for pumpkins. Whatever! Now, finding a pumpkin is a bit of a challenge within itself, as depending on your build, your ability to come across one is either as common as finding bread in a bakery, or as rare as winning the lottery! You can’t live on pumpkins either, however, I’m a little shocked as to how little nutritional value they give you! They’re bloody PUMPKINS they’re HUGE! How does that give me the same nutritional value as a CHOCOLATE BAR!?

Either way I have to find a pumpkin or I’ll starve! So I set off on an adventure to find my first batch of pumpkins!

unnamed4

OK so after trekking for like a god damn MINUTE, I stumbled upon 1 whole pumpkin. On the course of this trek I realised the amount of animals there are in this game. There are a LOT of animals…like…a LOT of animals. However, most of them can kill you, and they’re EVERYWHERE! This isn’t an issue, I don’t care about the amount of animals, I’m just a little confused about how most of the animals on this game are only here to attack you. You can kill a wild boar for meat; They won’t attack you unless you attack them, much like real life. Same with cows. They’ll put up a fight if you punch them, and if you have a weapon, you’re likely to win. Same with cows! However, other than cows and wild boars and maybe a few other animals, you rarely see any other animals that give you meat and only put up a fight if you fight them first. On my first minute of trekking, I saw a god damn LION

unnamed5

And yeah, okay, killing lions grants you the ability to maybe gather a small amount of resource to create some clothing, but that’s the thing that blows me away! Killing a WHOLE LION gives me 1 bit of leather????

unnamed6

REALLY?

Okay, so now that I have my pumpkin I save it for when I’m hungry and go punch some trees. I create a crafting table with intention of building a tiny little hut for myself to sleep in. Punching trees takes way too long, so I bite the bullet and decide to attempt to create a wooden pick-axe. Oh yeah! I forgot, you got rid of wooden tools. No, that’s cool! I’m not upset about this, in fact, this is independence from Minecraft and that’s great! Except, I HAVE to create a stone pick-axe now! WHERE THE HELL AM I GONNA GET STONE!? So I begin looking around for a mountain or two, but I’m unlucky, as I’ve been placed on an island that just so HAPPENS to not have any mountains nearby right now. Only one solution! DIG DOWN, I GOTTA DIG DOWN! I begin digging a hole until I can find stone, and end up digging up 13 dirt blocks, which took so dang long. Once I found a block of stone, I begin punching it with my fist, it takes 13-15 seconds to break, which may not sound so bad, but actually it’s quite painfully long to be honest. I go to craft the dang thing and finally get what I wanted:

unnamed7

That one pumpkin helped me survive, except I’m now knee deep in another situation. I spent so long digging and punching a bit of stone in a hole underground just to get this thing, that it started raining! I haven’t even built a shelter AND I’m already getting hungry. AND NOW I HAVE TO CRAFT A WEAPON!? Fine! Two stone blocks and a stick! I go back underground and start essentially mining before I’ve even built a shelter.

unnamed8

OK, got what I need, and there are some cows around me and some bulls, that’s about it in terms of the animal eco system, I’ll go kill them

unnamed9

Right, okay! Starting to get a little pissed off now. Speculation:

  • A good 80% of my shots missed
  • Most of my shots only did -3 damage
  • There were no other animals around

One very frustrating thing about this game is that your clothing comes off when you die. I respawn without clothes, which basically means I’m screwed!

unnamed10

I respawn in the middle of sundown. With no clothes on, I have to cross the bloody island again. If I go into that small body of water, I will surely freeze.

BUT HEY AT LEAST MY FOOD BAR AND HEALTH BAR HAS GONE UP.

To be honest, I’m pretty sure I could have avoided this if there were more natural resources in terms of food, such as fruit and vegetables? There must be more than this?! More than PUMPKINS for god’s sake!

Perhaps you could add fruit? Apples, Oranges, Pineapples. Hell, I’d settle for just apples to be honest!

Separate yourself from Minecraft slightly, have different types of leaves on the leaves that do have apples in them, like this:

unnamed11

Except better looking than that obviously.

An apple may not fill you up, but at least it’d keep you ALIVE FOR THREE MINUTES.

So anyway, I got to somehow stay alive without any clothes. That’s a tad bit of a challenge, and it’s already night! TIME TO DIG A HOLE IN THE GROUND AND SLEEP UNDER IT!

Oh wait it’s sand. Hold on let me get over to the other side and dig a hole there instead!

unnamed13

Day 2

unnamed14

Welp, I can no longer place blocks whilst jumping, so I guess I’ll built a small stairway up. Not sure why that rule exists now but I guess it makes it slightly more challenging to build houses, cause building things was too easy and made too much sense and that’s a bad thing apparently?

It’s only day 2, I’m already hungry:

unnamed15

I’m soaking wet, I’ve got no clothes on and I’m annoyingly super slow because I have no shoes on.

This second day experience is so frustrating that I have to restart and do it all again, which gives me a lot to think about the way you die in voxel games and how confusing it all is.

In Survivalcraft, since clothing is so important that without it the experience is that of annoyance and frustration that you slowly freeze to death and walk about 1 km per week because you aren’t wearing a pair of sandals, although makes sense, the punishment of dying in my opinion is a little odd and kind of stupid.

I’ve played other survival games. Yes, Minecraft has that exact feature, and I think it’s silly.

In fallout, you have a saving system. The game saves automatically when you open your inventory or just before a hostile creature attacks you, and creates multiple saves so that if you were to ever die, it’ll revert back to your latest save.

This’ll punish players by stripping them of their progress, and of course you can also deduct some experience points and turn them down a couple of levels, which gives me an idea.

How about a perk system for every level or two you go up, perks like 10% increase in speed or starvation takes longer or whatever, stuff that the player can pick based on their preference. You know, kind of like Fallout?

With the quick save and autosave system, the player can choose to make little safety backups, like when they had a functioning house or whatever, and the punishment is still frustrating, because you lose all that progress and those tools you crafted and those diamonds you found, and you have to pick a fight with that jaguar again to get them, and all of those ladders you placed everywhere have to be replaced, however you won’t spend the next few days desperately scrounging what little left you have to survive and keep your naked body from dying of super turbo hyperthermia and starvation every 3-6 minutes.

I’m gonna give up and delete this build, I must admit this frustrating amount of survival difficulty in this game has put me off for the first time in a while! So far, I haven’t been able to survive for longer than 2 days without being mauled alive by 4 tigers sitting around in the forest.

Which gives me another idea.

There are way too many predators in this game and way little prey. I think you should add a couple of animals to make things a little easier for the player, maybe?

Because I feel like the prey to most of these animals, perhaps what we need is:

  • Chickens – Feather dropping birds that produce eggs and can be farmed and reproduce, and only fly kind of high but not high enough to fly into another dimension so it’s a little easier to kill them!
  • Tameable wolves or domestic dogs – Oh come on? It’ll help! You should only be able to tame one, I know, but they can help aid you in combat and stuff, it’d be neat!
  • Sheep – HONESTLY HOW ARE THEY NOT IN THIS GAME? They produce wool for god’s sake, one of the main components of CLOTHING, They also produce MEAT.

I feel as if animals should also have the ability to reproduce? The biggest issue with Survivalcraft is that wolves spawn absolutely everywhere when they should only really spawn in cold environments to be honest! And every time I wake up, since wolves basically come in packs and kill everything and everyone in the course of one night, I end up waking up to nothing but WOLVES for miles and miles on end outside my house all the time because they’ve killed everything around me already!

Reproduction can be a basic concept. Separate the animals into two genders, male and female. Once a male and a female make contact with each other, have them stare at each other and display love heart symbols, then, have them spawn 1-3 smaller versions of the animals, i.e. the pups or the lambs or whatever and have it follow the mother and father everywhere and if an animal attempts to attack the baby, the mother and father will attack them back.

Have it so that reproduction takes like 5 days to spawn a smaller animal. This adds the ability to farm to the game which is honestly kind of cool.

There’s no real point of farming right now because the animals themselves just sort of die once you’ve slaughtered them all for food and never reproduce anyway.

OK also can we talk about this damn temperature system?

I spend literally a couple of seconds crossing a MILDLY cold biome, not a snowy biome nor an ice biome just A SLIGHTLY COLDER THAN USUAL BIOME and I already begin freezing to death! You freeze so damn quickly and it’s so easy to do so! Maybe reduce the sensitivity of the temperature gage? ooh and the starvation speed, I mean come on? I can’t starve in the course of one day? That’s insane!!!

But other than that? It’s a pretty good game!

If there’s anything else I’d change it’s:

  • Maybe slow down the transition between day and night I feel like I’m on crack
  • Gravestones on an abandoned island? why?
  • Add natives, like red Indians or whatever, have them make their own tribe, you can trade items with the same value for other items with the same value. I.E. You can exchange 4 iron ingots for like 3 milk buckets, I don’t know? Separate the tribes with the colour of their headbands perhaps?
  • We really need beds. I don’t mind sleeping on the floor or on a plank of wood but perhaps a leather cushion and a bed spread or something?
  • Could signs display images? That’d be cool? Perhaps you can switch between text and a 16×16 pixel art drawing canvas thingy?
  • In creative mode, wouldn’t it be cool if we could have custom blocks? I.E. blocks that you create with a 32×32 canvas in-game, and you can change every single face of the block or have an option to use the same texture for all the faces of the blocks. This’d make the game so creative in so many ways, and worlds would really pop out!
  • This might piss you off a little bit, but perhaps we could get a standalone win32 release of the game? for special people? fit with that resources.pak file or wherever you store the resources of the games (such as sounds, mainly sounds) so that people can have a little fun and make custom sound packs and rules and mods? I know everyone on the planet and their grandma requests mods and a win32 version of the game will increase piracy, so perhaps you can release the game on steam or something, that way the game is less likely to be pirated?

It’s just that Windows is SO RESTRICTIVE of what you can do with the game that literally any modifications to the game’s files automatically reinstalls the game, unlike Minecraft, which lets you mod as much as you want! I also kinda wanna use reshader on this game and see what it looks like .

  • Perhaps have a different crafting system? How come I can’t cook meat on a fire? That makes no sense? Why do I need a huge stone furnace to cook things? WHAT? And how come I need a crafting table to do anything at all? I need a table to put a damn rock into a stick? What?
  • Can we get thrown off the boat with some starting gear? Perhaps next to you when they “leave you there for good” is a bag of sorts (perhaps a sack or a chest) with a spikey club and a stone axe, and a note from the pirates informing you that you can take all your stuff and leave!

Something a tad ambitious and probably wont happen but please maybe take it into consideration
I love RPG games, so perhaps NPCs that aren’t animals might make the game a little more interesting. Perhaps when the pirates leave you there for good, you get 1 companion of the opposite sex besides you who was also left there for good. You can communicate with them, in the same way you can communicate with NPCs in Fallout and other RPG games, and the companion themselves can assist you and help you, they can:

    • Trade with you and hold onto things if you’re over encumbered
    • Attack animals and find food whilst you build
    • Mine with you
    • Essentially a scripted NPC that follows you most of the time but also interacts with the world the same way another player would, cutting down trees, mining and digging. Just not building because that’s too much code to be honest.
    • The NPC dialogue entry can look a little like this, maybe:

unnamed16

Welp, my fingers are on fire right now and as I type this I’ve so far typed 3147 words which is a little too much.

But to conclude, I love your game so much! It’s amazing! I really hope you read this email, and if you’re reading this very sentence right now I oughta say THANK YOU, even if you aren’t considering making any changes, I’ll still be playing from time to time, checking your blog for updates and such.

Thank you.

2.2 fixes

The latest 2.2 fix update should now be available in Google Play. Unfortunately other platforms will have to wait until after Christmas, as the stores have shut their review process. If we get lucky, maybe Windows App may squeeze through in the next few hours, but I wouldn’t count on that.

In the meantime, I have started work on 2.3. So far one thing ticked off my todo list!

Merry Christmas everyone!

Fixes contd.

Furnace problem is now fixed too – it was trivial. I think I will leave the long sleep problem until 2.3. I can’t readily reproduce it, plus if I am right about it, it would probably take a long time to fix anyway.

Additional changes that will come with the fix:

  • Limestone is made lighter and basalt darker, although not to the same extent they were in 2.1
  • You can use stone chunks instead of stone blocks to craft stone spear/stone club/stone axe.

Btw. the reason I kept the original recipes for stone tools is because I don’t want the players who don’t read the blog (or players coming from Minecraft) to feel lost. That’s why all the original tool recipes work. I don’t think it’s a big problem you can make a stone club from one or three blocks of stone. Up to you how much you waste :-)

Fixes

Here’s the status.

The problem with world corruption when running out of space during 2.1 -> 2.2 conversion is fixed. First of all, the game will not attempt conversion if there’s not enough space. Second, even if conversion is attempted but fails for any reason, the game will be able to restore the world to the original 2.1 state with a high probability of success.

The problem with world lighting is actually two problems. One is long-standing and has been present in the game since time immemorial. It is responsible for abrupt lighting changes from full light to total darkness in certain places (mostly caves, but not only). I will not be fixing this problem in 2.2 – it would require a large refactoring of the entire lighting system.

The second lighting problem is the optimization related issue I introduced in 2.2. It causes the torch to not work in 1×1 holes, among other things. This problem is already fixed.

I have overhauled the hit pushback system for this fix update as well. 100% of successful hits now cause pushback (no more randomization), and the pushback has been made stronger. Actual strength is now dependent on the ratio of attacker to target masses. For example, hitting a rhino will cause nearly zero pushback, while hitting a wolf, quite a bit. Pushback also now causes a short “stun effect”, which makes the target stop for a short period of time (up to 1/3 second, depending on masses ratio). This makes pushback more visually pronounced. The stun effect is also applied to the player.

In general, this change makes killing smaller animals much easier. Big animals though are about the same, or a even a little bit harder to kill. They are heavy, so hitting them causes nearly no pushback or stunning, while them hitting the player has the reverse effect.

Furnace cheating by removing items is currently under investigation, as is the long sleep time.

I should be releasing the fixes shortly.

Corrupt worlds

There is another issue with the 2.2 update that is fairly serious. It’s to do with the world conversion process that rebuilds the world chunks in the new, 256 blocks high format.

If the conversion process fails for any reason, most commonly because there is not enough space on your device for the converted world data, the world might be left in a partially-converted state. This will likely cause some of the chunks go missing.

The space required for the conversion process is roughly double the amount of the world size in 2.1 format. So if your 2.1 world is 500MB, you will need 1000MB of space (plus some safety margin) to open it successfully in 2.2.

I have stopped working on the light problem and I am currently tackling this more pressing issue. In the meantime please be double careful when loading large 2.1 worlds. Make sure there’s enough of space on your device and keep backups (always a good idea with precious worlds).

The first sign of the problem is when the game hangs/crashes during the conversion process, or displays “Error loading world” message.

Again, the fault here is all mine. I didn’t make the conversion routine robust enough. Sorry!