Thursday, 10 January 2013

Topia update update

Topia update progress

For anyone waiting for the update, sorry this is taking so long. Progress has been slow for several reasons. Firstly, for the last few months in the run up to release I got almost nothing done other than programming and had a lot of stuff to catch up on. Some of it work related, some of it more personal. I also had to make some significant changes to how Topia saves progress.

Why is saving broken?

Arguably saving isn't actually broken in the current version, it's just a questionable design implemented in a slightly stupid way. It is possible to save a 'timeline' of everything you do and play it back. The reasons for doing it this were related to a bunch of vague ideas of where the game might go in the future. It offers these advantages:

Timeline saving, pros:

The initial fractal and an hour of gameplay recording takes less than 100kb rather than the 2000kb+ that a straight save takes. This would make any potential level sharing very efficient.

Being able to break into a timeline at any point and takeover has got to be cool hasn't it?

I really can't think of a third anymore, there must have been more surely...

Timeline saving, cons:

The concept is pretty difficult to present in a clear way to players.

For a player to get to where they were before, the game has to play back the entire recording.

potential for synchronisation errors as game logic changes with updates.

I hate to admit it but I really hadn't considered the first problem until I was putting the finishing touches to the UI. I could have possibly hidden what was happening and made it seem like a normal save system except for one other issue, directly related to con 2.

Because of the looming deadline I had problems getting the 'load by fast winding the timeline to the end' feature working in time so I left it out of the initial release. I hadn't realised how attached people would get to the simple editing and that it would become an issue. As the game was released I was getting more feedback criticism for the lack of save than the lack of an actual game. It was clear to me that I had to get 'fast winding' working so this became the top priority for the update.

Finally working on the update

I was expecting to be able to get a 60x speed fast wind working. This seemed reasonable as 12 minutes of editing would fast-wind (or 'load') in 12 seconds. Unfortunately when I actually got it working I only managed a 12x speedup on iPad2. This would mean that 12 minutes of 'timeline' would take an entire minute to 'load'. I could have focused on optimising the fast wind and might have even got as far as that 60x speedup but even then, a little maths suggests it might not be fast enough. Anyone editing for an hour would have to wait a whole minute to 'load' and with easier saving, people might edit for several hours, maybe even the 10 or so it would take to fill the recrod buffer. It was becoming clear that the entire concept was broken.

New save system

So I've now added the ability to just save out a level and reload it instantly. This is so much easier to work with. It's also allowing me to redesign the interface so that saving and loading all works as a normal human might expect. I've also in the middle of adding a few extra editing features. The update will feature.

The ability to select between painting dirt and grass, making painting more interesting

a tool to 'stepify' the landscape as seen below

a tool to paint forests

new instant save and load of levels

redesigned menu flow

redesigned game control and more control modes

A bunch of under the hood stuff to increase reliability

A few silly tiny visual effects I couldn't resist

I know I said the update was 'imminent' before but when I missed the pre-christmas deadline I took the opportunity to rewrite a few underlying systems and start a new project based on the same code. This took a little longer than I'd planned and combined with the fact i've been visiting my father in hospital twice a day means it's still only 'imminent' but it will be submitted very soon.

We're not advocating one type of website hosting over another, just reporting what we found with these shared hosts. We likely wouldn't recommend any of these plans for someone planning on running a business.

Hey there, it's not specifically a WordPress issue, but generally is caused by a couple of different factors. Domain latency, slow disk drives, limited CPU, and plugin bloat. You'll see that with cheap website design that use SSD drives, that isn't as noticeable. The best way to combat it is by 1) making sure you're using fast DNS hosting. 2) Use a web host with SSD drives and decent CPU resources, and 3) caching.