Not finished!

No, Survivalcraft is not dead and I am not a zombie, source code is not lost and my laptop is still in one piece :-) I haven’t posted anything for a while, but it doesn’t mean I am not working on it.

Actually the work slowed a bit for the last several days, but I have a good reason for that: I am moving house!

Unfortunately this will be dragging on for some more time, but I am still finding bits of time now and then to get some work done on the game.

Anyway, here’s the latest screenshot from my explosion testbed:

Explosion

The yellow/blue stuff is the explosion pressure (the more yellow the more pressure).  Grey blocks are walls. On the screenshot, the explosion originated in the far end of the little tunnel made from walls. It then propagated out of it, hit the wall and spread sideways, finally fizzling out in the open space. You can see that as long as you are inside of the tunnel the pressure stays high, while it quickly drops once in the open space. This is what this is all about!

Actually the world there is 3D and you only see one 2D slice of it, but it doesn’t really matter.

The post will now get a bit technical if you forgive me.

As you see, what I am trying to achieve is realistic pressure propagation. It also must be fast, because it has to run on the phones. I thought it will be easy, but it’s anything but. All the successful schemes I tried so far involved multiple iterations through the entire explosion space, and this is just too slow. Single-iteration algorithms are hard to come by, because they must propagate “globally”. For example if there is a hole in one side of the tunnel, the pressure on the other side must be lower, even though the two places might be far apart and not knowing about each other.

I went as far as looking into Minecraft wiki to see how they do it. It turns out they simply shoot rays straight from the explosion point, so there’s no pressure propagation there and no fireballs will ever chase you through the bendy tunnels. As a result I won’t be tempted to cheat by doing it their way.

My current idea, the one behind the screenshot, is pretty novel and came to me only two days ago while I was doing house stuff shopping. It seems to work, but it’s too early to call yet. The biggest problem with it is that it does not produce completely spherical fireballs in the open space and that it is surprisingly slow where it shouldn’t be, but I will get to the bottom of it.

I think 1.25 will be the weapons update.

 

 

 

Top Charts

It seems that after the Christmas period popularity of Survivalcraft picked up.

We are now at #2 in Amazon App Store, squished between a pair of 3D and 2D giants of blocky games:

Amazon

 

We are #6 in Google Play, #8 in Apple App Store and #13 in Windows Phone store (no pictures because it’s not as impressive as #2, he he).

That’s nice and very humbling. Hope I’ll be able to keep the quality high and features coming so it stays that way!

Explosions

For the last several days I’ve been playing with a new explosion system.

The current system is reasonable, but it doesn’t do what I want it to. When I was working on it about a year ago, I had to abandon further development and keep whatever was there, because I needed to make a release. We have been stuck with it ever since.

Unfortunately the work on the new system is not going all that well. I had a seemingly brilliant idea that took me a couple of days to implement and another couple to realize that it’s fatally flawed :-(

As a result, I am pretty much back to square one. I really wanted to show you something with this post, but alas it was not meant to be.

Anyway, I will go on trying. I need to upgrade the explosions, otherwise the new weapon will not make much sense.

 

2014 Codes Sweepstakes

The admins of the forums are organizing sweepstakes where you can win free copies of Survivalcraft on iOS. Please have a look at this forum post:

http://survivalcraft.lefora.com/topic/19404442/2014-Sweepstakes-have-Begun-Participate-here

Unfortunately free copies for other platforms are not available – Google Play, Amazon and Microsoft do not allow publishers to give away free copies :-(

Sound Delay

I have a new video for you:

http://youtu.be/tfDX8N7_m48

I am working on a new weapon and it’s rather powerful. Unfortunately, it does not sound very well with the audio engine in 1.24, so I had to upgrade it a little and introduce proper sound delay system. The only thing that was delayed with distance in 1.24 was thunders. In 1.25 everything gets this treatment, should add a bit to the realism.

The speed of sound in the world of Survivalcraft is quite a bit lower than in the real world, to make the effect more pronounced with the small distances we have in the game.

I am sure many of you will be able to guess what the new weapon is :-)

Beste Kinder Apps

Survivalcraft has been selected as one of the best apps for kids & teens in Austria, Switzerland and Germany.

http://bestekinderapps.de/kids-teens-apps-2013-kinder-app-preis-51554

Nice of them!

Best Apps for Kids & Teens Award 2013

 

New weapon video

I finally finished working on the new weapon for 1.25. Here’s a video for you. Typically, it ends with a bang.

http://youtu.be/qbnjBTmctpQ

There are two types of ammo for it, even though only one is shown in the video. The player died before I could show you the other :-)

New weapon

One of the first additions to 1.25 will be a new weapon. I know the game has recently become much more difficult, mostly by introduction of large numbers of vicious animals like lions, tigers and hyenas. In 1.25 I hope to mitigate it a bit. Stay tuned, I have the weapon almost finished. And yes, it will need a whole new UI panel to operate.

Procedural UI

For some days I have been working on converting most of the bitmap-based UI in Survivalcraft to procedural drawn one. Along with that I am doing large refactoring of the code that handles the UI to be less rigid and easier to extend.

To give you some background of that work, in 1.24 every panel was hand drawn. Furnace, crafting table, inventory, chest, vital stats etc. As you can imagine, to maintain these panels required a lot of work. Horrible, mechanical work mostly. Bitmaps are inflexible, ugly in high-res, and are increasing download sizes and memory usage. I knew for a long time that they will have to go.

Because one of the features in 1.25 will require me to extend the list of these panels (hint, hint), I decided now is the time for a change.

For example, here’s how the procedurally drawn furnace panel looks like:

ProceduralFurnace

All the slots, text and even the arrow is procedural, everything declared in my homebrew XAML-derivative. For the coders out there, I even have attached properties. How cool is that :-)

Fonts are still bitmap-based unfortunately, even though they use a much improved rendering engine compared to what’s built into XNA. I’m not really up for making a cross-platform vector font renderer…

All this has interrupted my work on the actual game features, but I should be back on them shortly! Some major refactoring is needed from time to time if the game codebase is to stay healthy.

Happy New Year

Work on 1.25 is going on. I made quite a lot of changes in the UI to allow me to ditch many sizeable textures and keep loading times, memory use and download size small. It should also look much slicker, especially on high-res displays. Nothing to show yet, though.

Happy New Year everyone!

Follow

Get every new post delivered to your Inbox.

Join 42,947 other followers